[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Це стара версія документу!


TRANSLATING…

Пропрієтарні графічні драйвери

Графічна підсистема X.Org X11, надає велику кількість драйверів, принаймні прискорювачі 2D для більшості відео карт, якщо система поставляється з GPU від AMD (ATI) чи nVIDIA, то до них можна завантажити та встановити бінарні пропрієтарні драйвери, з офіційного сайту виробника.

Ціль цієї статті, визначити різні методи встановлення та налаштування цих пропрієтарних драйверів, в системі Slackware.

Встановлення та налаштування драйверу AMD (ATI) Catalyst

AMD лишили підтримку старих відео карток (серії 4xxx та нижче) в поточних (12.6), так і в наступних версіях пропієтарних драйверів, так що майте це на увазі та впевніться що ваша відео картка підтримується драйвером. Якщо ваша картка не підтримується, відкритий драйвер xf86-video-ati може стати у нагоді, але він значно повільнішій.

Завантаження

Зазначте, що встановлювач (installer) збере драйвер (fglrx), та йому потрібні встановлені модулі ядра (kernel-modules) та джерельний код ядра (kernel-source). Наступні кроки підходять як для графічного (UI), так і для консольної версії(CLI) користувальницького інтерфейсу встановлювача.

Встановлення

Наступні інструкції описують як створити та встановити пакунок сумісний з Slackware. Він генерується автоматично встановлювачем і за звичай працює добре. Існує ще метод 'автоматичного' встановлення.

Catalyst з драйверами для Linux, можна завантажити з цього посилання. Цей файл сумісний для двох архітектур 32 та 64 біт.

Після завантаження, розпакуйте (unzip) файли командою:

$ unzip amd-driver-installer-VERSION-x86.x86_64.zip

Наступний крок, перекричіться на користувача root:

$ su -

Перейдіть до директорії яка містить файл 'run', та запустіть встановлювач командою:

# sh amd-driver-installer-VERSION-x86.x86_64.run

Встановлювач збере інформацію про вашу систему, та запропонує обрати один з двох методів, автоматично встановити чи створити пакунок для цільової системи (дистрибутив). Тут оберіть створення пакунку, так як такий пакунок в майбутньому можна керувати в системному менеджері пакунків Slackware.

Коли вибір зроблено як пакунок, будь ласка оберіть “Detected OS: Slackware/Slackware”.

Після того як збірка завершена, встановлювач згенерує пакунок в ту саму директорію, де був файл 'run', та ви можете виконати команду:

# installpkg fglrx-VERSION-x86-1.tgz

Якщо будь-які помилки будуть знайдені під час встановлення, ви можете побачити їх у файлі журналі /usr/share/ati/fglrx-install.log.

Налаштування

Щоб користуватись новими драйверами, вам необхідно перезавантажити систему. Перед цим, відредагуйте файл /etc/modprobe.d/blacklist.conf (чи створіть йього /etc/modprobe.d/radeon_blacklist.conf), та додайте в нього рядки:

blacklist radeon
blacklist radeonhd

Далі ви можете створити новий файл налаштувань для X.Org, виконавши:

# aticonfig --initial -f

Зазвичай X.Org не потребує файл /etc/X11/xorg.conf, але в деяких випадках (зазвичай для старих карт) необхідні наступні рядки у fglrx секції 'Device':

Option "SWCursor" "true"

Якщо помилок не трапилось, та драйвер нормально встановився, ви повинні перезавантажити систему, щоб почати користуватись драйвером.

Тестування

Після перезавантаження, ви можете зробити тест драйверу, запустивши:

$ fgl_glxgears

Повинні з’явитись обертові шестерні, які обертаються повільно та без глюків.

Також ви можете виконати:

$ glxinfo

Перегляньте перші декілька рядків щоб дізнатись, чи увімкнена функція DRI. Якщо ні, тоді вам потрібно зробити набагато більше дій, тому, що процес створення пакунка, який вмонтовано у встановлювач ati, дуже старий (до офіційної версії Slackware з архітектурою 64біт), та деякі файли треба пересунути в інше місце, щоб воно запрацювало на версії Slackware 14.1. Пакунок для slackbuilds.org який виправляє цю проблему, працює, але в той же час, ви можете самостійно та вручну виконати це рішення (з форуму linuxquestions), чи якщо все інше закінчилось з помилкою, опція автоматичного встановлювання повинна працювати.

Автоматичне видалення

Якщо ви до цього обрали встановлення пакунку автоматично, та вам стало необхідним вилучити драйвер, ви можете запустити встановлювач з додатковим аргументом uninstall, як наприклад:

# sh amd-driver-installer-VERSION-x86.x86_64.run --uninstall

Чи викликати скрипт видалення напряму командою

#/usr/share/ati/amd-uninstall.sh
Не має значення як він був встановлений, видалення драйверу fglrx, “зламає” підсистему mesa як тільки файли будуть пересунуті. Встановлювач попередить про перевстановлення mesa. Також, пам’ятайте, що якщо ви захочете повернути заводські “ядерні” драйвери radeon/radeonhd, ви повинні будете видалити рядки з blacklist, які раніше були додані у файл налаштувань модулів ядра.

Встановлення та налаштування драйвера nVIDIA

Встановлення через SlackBuilds.org

Едвард Коініг (Edward Koenig) обслуговує пакунки libvdpau, nvidia-driver та nvidia-kernel на SlackBuilds.org

Щоб працював драйвер nVIDIA, необхідні усі ці пакунки. Пакунок nvidia-kernel, збирає модуль ядра, nvidia-driver збирає драйвер для X.Org та містить у собі реалізацію OpenGL та сумісні COMPAT32 бібліотеки, для використання у мультибібліотечній системі Slackware64. Для nvidia-driver необхіден пакунок libvdpau.

Видалення модуля ''nouveau''

Перший крок під час встановлення драйверу, це внесення до чорного списку (blacklist) драйвер nouveau. Невиконання цього кроку, призводить до помилок у startx як на приклад: “ERROR: could not insert 'nvidia': No such device”.

Внесення драйверу nouveau до чорного списку, виконується встановленням пакунка xf86-video-nouveau-blacklist з директорії “extra”, яка знаходиться на носії з встановлювачем системи Slackware. Це може бути зроблено використавши встановлювальні CD чи DVD диски, завантаження файлів з одного з багатьох дзеркал Slackware, чи використовуючи утиліту slackpkg.

Встановлення пакунка

На цей час є два способи встановлення пакунків з SlackBuilds.org:

  • завантаження відповідних скриптів з SBo, та дотримання процедури встановлення SlackBuild
  • використання інструменту sbopkg, який автоматизує завантаження сирцевого коду, та зробить послідовність збірки та встановлення декількох пакунків.

Як тільки пакунок було встановлено згідно з інструкцію яка поставляється з кожним SlackBuild, сервер X11 може бути запущено з повноцінною підтримкою GPU (модуль графічний процесор).
Для налаштування X11 на автоматичний запуск, подивіться в наступному розділі “Запуск X11 з підтримкою GPU nvidia”.

Вирішення проблем

FIXME

Встановлення використовуючи бінарний встановлювач nVIDIA

Встановлення бінарного драйверу nVIDIA, включає в себе наступні кроки:

  • Завантаження відповідного пакунку встановлювача драйверу nvidia
  • Вимкнення та вивантаження драйверу nouveau
  • Встановлення драйверу nvidia
  • За бажанням, налаштування системи для автоматичного старту графічного інтерфейсу

Наступний лист містить у собі ключові кроки по встановленню драйверу nvidia. Повний текст статті далі.

Для тих, хто хоче відразу побачити усі команди, тут підібрано лист з відповідними командами:
  • Перейдіть до вебсайт драйверів nVIDIA для Unix та завантажте відповідний драйвер. Ім'я пакунка з драйвером повинен бути щось на зразок “NVIDIA-Linux-архітектура-версія.run” де “архітектура” це архітектура центрального процесору комп'ютера, а “версія” це версія драйвера.
  • Впевніться зо X11 не запущено; якщо запущено, вийдіть та увійдіть у текстову консоль
  • Зайдіть як користувач root, запустіть встановлювач nVIDIA командою
    # sh /path/to/NVIDIA-Linux-ARCH-VERSION.run
  • Якщо напише, що потрібно занести nouveau до чорного списку, зробіть це та перезавантажте систему
  • Запустіть встановлювач з правами root після перезавантаження
  • Як мінімум, оберіть що ви приймаєте ліцензію, та встановіть драйвер. Зверніться до встановлювача nVIDIA, щоб дізнатись про автоматичні варіанти встановлення.

Якщо nvidia-xconfig не був запущений встановлювачем, він також може бути запущений після завершення процесу встановлення, та перед запуском серверу X11, чи файл “/etc/X11/xorg.conf” має бути відредаговано вручну.

Завантаження відповідного встановлювача бінарних драйверів nVIDIA

Перший крок це завантаження відповідного драйверу з вебсайту драйверів nVIDIA для Unix. Для 64 бітної версії Slackware (включаючи мільтибібліотечну систему) ви повинні завантажити пакунок “Linux x86_64/AMD64/EM64T”, а для 32 бітної версії, потрібно завантажити “Linux x86/IA32”. Ви можете спокійно обрати “Гілку з найсвіжішою версією та з довгою підтримкою”, але в деяких випадках (наприклад дуже сучасна відео картка, або халепа з монітором яку ви хочете вирішити) ви повинні обрати “Гілку з найсвіжішою версією та з короткою підтримкою”.
Також доступні старі версії драйверів, та драйвери для старих карток (які вже не підтримуються). Коли ви обираєте драйвер, відображається лист зі списком сумісних GPU. Як тільки ви визначились з версією драйверу, потрібно погодитись з ліцензійним договором, після чого файл буде збережено на доступне вам місце. Перед тим як запустити встановлювач, є декілька інших кроків які потрібно зробити.

Відключення модуля nouveau

Взагалі, nVIDIA GPU буде виявлений системою Slackware, та графічний драйвер “nouveau” буде увімкнено. Це дозволить працювати прискорювачу 3D (трьох вимірна геометрія малюнка) на багатьох картках. Модулі nouveau та nvidia не є сумісними; отже; перед тим як встановити модуль nvidia, модуль nouveau необхідно вивантажити, та заборонити завантажуватись автоматично в ядро при включені системи.

Для цього, потрібно створити файл у директорії “/etc/modprobe.d/”, текст у файлі повинен бути такий:

blacklist nouveau
options nouveau modeset=0

та він повинен мати відповідну назву; наприклад, “disable_nouveau.conf

Перший рядок блокує модуль nouveau від автоматичного запуску. Модуль все ще можна завантажити вручну, або сервером X. Отже, другий рядок запобігає контролювання modest (KMS - керування роздільною здатністю та іншими параметрами дисплея в просторі ядра) драйвером nouveau, якщо той буде все ж таки запущено, та дозволяє модулю бути вивантаженим з ядра. 1)

У довідки (README) modprobe.d сказано, що монолітний файл чорного списку, був розділений на маленькі файли які знаходяться у директорії /lib/modprobe.d/ Але, файли .conf в директорії /etc/modprobe.d/ перевизначають (мають вищий пріоритет) файли з директорії /lib/modprobe.d/, тому це місце дає більше гарантій що модуль nouveau заблоковано.

Після відображення помилки про несумісність пропрієтарних драйверів nVIDIA та nouveau, встановлювач nVIDIA запитає права на створення файлу чорного списку .conf в директорії /etc/modprobe.d/ для блокування модулю nouveau, який за замовченням буде мати ім’я nvidia-installer-disable-nouveau.conf, вміст файлу буде:

# generated by nvidia-installer
blacklist nouveau
options nouveau modeset=0

Після чого встановлювач визначить, що він має помилки, та запитає виконати перезавантаження системи, для прийняття змін до сили. Як тільки система перезавантажиться, драйвер nouveau більше не буде завантажений, а процес встановлення бінарного драйверу можна продовжити.

Альтернативно, можна встановити пакунок xf86-video-nouveau-blacklist з директорії /extra“ яка знаходиться на встановлювальному диску Slackware. Як тільки він був встановлений, систему потрібно перезавантажити, з цієї крапки можна продовжити встановлення драйверу.

Встановлення бінарного драйверу nVIDIA

Встановлення бінарного драйверу nVIDIA не може бути завершено якщо система вікон X11 активна.

За замовченням Slackware завантажується у текстову консоль (термінал). В цьому випадку, встановлювач nVIDIA може бути просто запущений. Але, якщо графічне оточення вже запущено, треба спочатку з нього вийти. Якщо графічне оточення було запущено командою ”startx“, то просто вийдіть з нього (logout), чи якщо потрібно, натисніть Ctrl+Atl+Bksp.

Якщо використовується графічний менеджер входу (login manager), як наприклад KDM, простий вихід через меню чи натискання комбінації Ctrl+Alt+Bksp не спрацює так як графічний менеджер входу буде автоматично перезавантажуватись.
Найкращій спосіб вимкнути X, це вийти (logging off), перейти в консольний термінал натиснувши комбінацію Alt+F2, увійти як користувач root та виконати:
telinit 3

Інший метод повернутись у консоль, це дуже не рекомендований спосіб, але він дієвий якщо дуже потрібно, зупинити процес менеджера дисплею (DM), а потім вийти з серверу X, натиснувши комбінацію кнопок Ctrl+Atl+Bksp. Наприклад, KDM можна зупинити виконавши команду

killall -9 kdm

Знову ж таки, цим методом потрібно користуватись тільки якщо інші не спрацювали.

Як тільки сервер X11 вимкнули, встановлювач nVIDIA може бути запущений під користувачем root. Увійдіть як користувач root, чи виконайте команду ”su -“, і потім запустіть встановлювач. Інколи може бути корисним, запустити встановлювач з додатковими аргументами у командному рядку. За додатковою інформацією звертайтеся до розділу “опції встановлювача nVIDIA”.

$ su -
Password:
# sh /path/to/NVIDIA-Linux-ARCH-VERSION.run

Якщо встановлювач запущено без додаткових аргументів, та не виникло ніяких помилок, то процес буде виглядати так:

  • Встановлювач розпакує свій вміст, та запустить інтерфейс на базі бібліотеки ncurses. Першим кроком буде прийняття ліцензійного договору.
  • Якщо встановлення модуля виконується в системі де не було попередніх версії драйверу, встановлювач почне збірку модулю. Але, якщо було знайдено попередній драйвер, встановлювач запросить права для його видалення, як частину процесу встановлення нової версії. Для того щоб продовжити, потрібно надати ці повноваження, для видалення застарілого драйверу.
  • Після збірки модуля на 64 бітній системі, встановлювач запропонує встановити 32 бітні бібліотеки OpenGL для сумісності. Вам будуть потрібні 32 бітні бібліотеки сумісності тільки на 64 бітній Slackware з встановленим пакунком мультибібліотечності.
  • Далі, у випадку якщо попередній модуль, було видалено встановлювачем.
  • Як тільки було визначено, що в системі немає конфліктних файлів X та OpenGL (ця опція повинна бути обрана), модуль буде встановлено.
  • Після чого програма запропонує використати утиліту nvidia-xconfig, для редагування файлу xorg.conf, для відображення змін у відео драйвері. Ця утиліта зазвичай працює, але буває що треба змінити значення інших параметрів у файлі xorg.conf. Ця утиліта може зробити додаткові зміни, проте, вона спочатку зробить резервну копію у файл ”/etc/X11/xorg.conf.nvidia-xconfig-original
  • Далі буде запропоновано підтвердити що процес встановлення завершено, з цієї миті програма вийде у консоль.

Відтепер модуль nvidia встановлений у системі для ядра яке зараз запущено.

You must create an X.Org configuration file which loads the binary Nvidia driver if you decided not to let the nvidia-xconfig utility modify your computer's xorg.conf file. The X.Org of Slackware supports individial “*.conf” files in a directory /etc/X11/xorg.conf.d. Any file with a .conf extension will be included together with the main /etc/X11/xorg.conf file.
You could create for instance a file named /etc/X11/xorg.conf.d/10-nvidia.conf with the following content:

Section "Device"
    Identifier  "Device0"
    Driver  "nvidia"
    VendorName "Nvidia Corporation"
    BoardName ""
EndSection

Without this definition, you will not get accelerated Nvidia GPU support! X.Org would fall-back to VESA mode because the nouveau driver has been blacklisted. The kernel will not auto-detect the binary driver as opposed to the nouveau driver.

Starting X11 with nvidia GPU Support

All that remains is to start the X.org server. This can be accomplished by configuring Slackware to start in runlevel 4, which will start a graphical login manager, such as KDM or XDM, on boot. If you want this, then you need to edit the file ”/etc/inittab“ and change the line

id:3:initdefault:

to

id:4:initdefault:

Otherwise you can login to a user account and issue the ”startx“ command to start an X session.

By default, startx will start the window manager which was chosen during installation. To change this behavior, the file ”.xinitrc“ in the user's home directory can be edited to start a different WM.
Alternatively, the default WM can be altered on a per-user basis by using the command ”xwmconfig“ and selecting one of the available WM's.
nVIDIA Installer Options

The nVIDIA Installer has many options available to the system maintainer which can be accessed by running the installer with the -A option:

# sh ./NVIDIA-Linux-ARCH-VERSION.run -A

Some common options are

  • -a, --accept-license : bypasses the nVIDIA license screen. By doing so, the license is accepted.
  • --update : check for an updated driver on the nVIDIA website; if it exists, automatically download and install the new version.
  • --uninstall : removes the nVIDIA driver and other files installed previously.
  • -q, --no-questions : assumes default answers to all questions. Note: does not automatically accept the license.
  • -s, --silent : runs the binary installer without a curses UI, automatically accepts the license and uses the default answers for all questions.

Troubleshooting

FIXME

Sources

  • nVidia section originally written by rinias

 uk:howtos:hardware:proprietary_graphics_drivers ()
Цей переклад старіший ніж оригінальна сторінка і може бути не актуальним. Дивіться що було змінено.
Переклад цієї сторінки?: