Die Inbetriebnahme einer professionellen Grafikkarte AMD FirePro 2100 gestaltet sich unter Debian sehr einfach, wenn auch ein kleiner Trick nötig ist. Der Hersteller bietet unter folgendem Link die Treibersoftware als Download für RedHat Enterprise Linux, CentOS, Ubuntu und SUSE Linux Enterprise Desktop an: http://support.amd.com/en-us/download/workstation?os=Linux+x86_64#pro-driver
Für Debian lädt man einfach die Ubuntu-Software herunter, schließlich basiert Ubuntu auf Debian. Im Download-Paket amdgpu-pro-17.40-492261.tar.xz
1) befinden sich diverse Debian-Pakete (deb) und ein Shell-Skript, welches die Installation der Pakete durchführt. Führt man dieses Skript (als root) aus, erscheint die Meldung
Unsupported OS
Von soetwas lässt sich ein abgebrühter Programmierer wie ich es bin natürlich nicht aufhalten. Einfach das Shell-Skript mit einem Texteditor wie nano
öffnen und nach dem String Unsupported OS
suchen.
nano amdgpu-pro-install
STRG+W zum Suchen drücken
#!/bin/bash # # Copyright 2016 Advanced Micro Devices, Inc. # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR # OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR # OTHER DEALINGS IN THE SOFTWARE. set -e REPOSITORY="/var/opt/amdgpu-pro-local" usage() { cat <<END_USAGE Usage: $PROG [options...] Options: -h|--help display this help message --px PX platform support --compute OpenCL support only Unless the -h|--help option is given, 'apt-get' options may be present. END_USAGE } function stderr() { cat - 1>&2 } function os_release() { [[ -r /etc/os-release ]] && . /etc/os-release case "$ID" in ubuntu) PACKAGES="amdgpu-pro amdgpu-pro-lib32 amdgpu-pro-dkms" ;; steamos) PACKAGES="amdgpu-pro-driver amdgpu-pro-lib32 "` `"glx-alternative-amdgpu-pro amdgpu-pro-dkms" ;; *) echo "Unsupported OS" | stderr exit 1 ;; esac } #[...]
In der Funktion os_release()
finden wir den String in Zeile 57. Einfach in Zeile 49 ubuntu
durch debian
ersetzen und schon läuft das Skript durch. Rechner neustarten und das neue Kernelmodul wird sofort geladen und läuft einwandfrei.
#!/bin/bash # # Copyright 2016 Advanced Micro Devices, Inc. # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR # OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR # OTHER DEALINGS IN THE SOFTWARE. set -e REPOSITORY="/var/opt/amdgpu-pro-local" usage() { cat <<END_USAGE Usage: $PROG [options...] Options: -h|--help display this help message --px PX platform support --compute OpenCL support only Unless the -h|--help option is given, 'apt-get' options may be present. END_USAGE } function stderr() { cat - 1>&2 } function os_release() { [[ -r /etc/os-release ]] && . /etc/os-release case "$ID" in debian) PACKAGES="amdgpu-pro amdgpu-pro-lib32 amdgpu-pro-dkms" ;; steamos) PACKAGES="amdgpu-pro-driver amdgpu-pro-lib32 "` `"glx-alternative-amdgpu-pro amdgpu-pro-dkms" ;; *) echo "Unsupported OS" | stderr exit 1 ;; esac } function source_list() { local dir etc sourceparts eval $(apt-config shell dir Dir) eval $(apt-config shell etc Dir::Etc) eval $(apt-config shell sourceparts Dir::Etc::sourceparts) echo ${dir%/}/${etc%/}/${sourceparts%/}/amdgpu-pro.list } function amdgpu_pro_install() { local src=$(cd ${0%/*} && pwd -P) local index="$src/Packages" amdgpu_pro_uninstall "$@" if [[ -r "$index" ]]; then $SUDO mkdir -p $REPOSITORY && $SUDO cp -af "$src"/* $_ $SUDO ln -s $_/$PROG $SBIN/${PROG%-*}-uninstall echo "deb [ trusted=yes ] file:$REPOSITORY/ ./" | \ $SUDO tee $(source_list) $SUDO apt-get update ||: $SUDO apt-get "$@" install $PACKAGES fi } function amdgpu_pro_uninstall() { local p local installed=() [[ -r "$(source_list)" ]] || return 0 for p in $(cat $REPOSITORY/Packages | awk '{ if ($1 == "Package:") p = $2; else if ($1 == "Architecture:") print p ":" $2 }') do if dpkg -s $p >/dev/null 2>&1; then installed+=($p) fi done if [[ ${#installed[@]} -ne 0 ]]; then $SUDO apt-get "$@" remove --purge ${installed[@]} fi $SUDO rm -rf $SBIN/${PROG%-*}-uninstall $(source_list) $REPOSITORY $SUDO apt-get update ||: } PROG=${0##*/} SUDO=$([[ $(id -u) -ne 0 ]] && echo "sudo" ||:) SBIN="/usr/bin" os_release while (($#)) do case "$1" in -h|--help) usage exit 0 ;; --px) PACKAGES="$PACKAGES xserver-xorg-video-modesetting-amdgpu-pro" shift ;; --compute) PACKAGES="clinfo-amdgpu-pro opencl-amdgpu-pro-icd \ amdgpu-pro-dkms libdrm2-amdgpu-pro \ libdrm-amdgpu-pro-amdgpu1" shift ;; *) ARGS+="$1 " shift ;; esac done set -- $ARGS amdgpu_pro_${0##*-} "$@"
Getestet auf einer Dell Precision T3420 Workstation mit Debian 9 und zwei angeschlossenen Monitoren von Dell.
Links in diesem Artikel stammen vom 18.11.2017 und wurden an diesem Datum zuletzt auf Existenz überprüft.