Skocz do zawartości

[faq] Instalacja Sterowników Ati


adios

Rekomendowane odpowiedzi

 

UWAGA, TO FAQ JEST NIEAKTUALNE

 

 

Najpierw musimy zaopatrzyć się w takie jądro dla jakich są dostępne sterowniki ATI.

Sprawdzamy to tu szukając paczki kmod-fglrx dla naszej archhitektury procesora:

http://rpm.livna.org/fedora/5

 

W momencie pisania tego FAQ to najnowsza paczka sterowników to:

kmod-fglrx-8.23.7-4.2.6.16_1.2080_FC5

 

Więc musimy zaopatrzyć się w kernel zawarty w nazwie pakietu(wytłuszczona czcionka).

W tym celu piszemy w terminalu:

su -
yum install kernel

 

Jeżeli będziemy instalować np. jakieś sterowniki, których nie ma w repozytorium livny powinniśmy się zaopatrzyć w paczkę: kernel-devel-wersja.architektura.rpm (*opcjonalnie)

su -
yum install kernel-devel

 

Jeśli nie będzie tego kernela na serwerze mirrorze to tym miejscu nowy, stabilny kernel jest zawsze dostępny.

http://download.fedora.redhat.com/pub/fedo...core/updates/5/

(instalujemy jak zwykly rpm)

 

Teraz jeśli nie masz repo livny wgraj paczkę:

su -
rpm -Uhv http://rpm.livna.org/fedora/5/i386/livna-release-5-4.noarch.rpm

 

Następnie instalujemy sterownik

 

su -
yum install kmod-fglrx

 

Teraz musimy skonfigurować serwer X, poleceniem:

su -
ati-fglrx-config-display enable

Z doświadczenia wiem, że to polecenie nie zawsze działa więc w przeciwym wypadku możemy użyć.

su -
aticonfig --initial

 

Na koniec trzeba zmodyfikowac polityke SELinuksa poleceniami

su -
setsebool -P allow_execstack=1

su -
setsebool -P allow_execmod=0

Dla wersji 8.23.7

su -
chcon -t texrel_shlib_t /usr/lib/ati-fglrx/libGL.so.1 /usr/lib/ati-fglrx/libGL.so.1.2 /usr/lib/ati-fglrx/libaticonfig.a /usr/lib/ati-fglrx/libfglrx_dm.a /usr/lib/ati-fglrx/libfglrx_dm.so.1 /usr/lib/ati-fglrx/libfglrx_dm.so.1.0 /usr/lib/ati-fglrx/libfglrx_gamma.a /usr/lib/ati-fglrx/libfglrx_gamma.so.1 /usr/lib/ati-fglrx/libfglrx_gamma.so.1.0 /usr/lib/ati-fglrx/libfglrx_pp.a /usr/lib/ati-fglrx/libfglrx_pp.so.1 /usr/lib/ati-fglrx/libfglrx_pp.so.1.0 /usr/lib/xorg/modules/dri/atiogl_a_dri.so /usr/lib/xorg/modules/dri/fglrx_dri.so /usr/lib/xorg/modules/drivers/fglrx_drv.so /usr/lib/xorg/modules/linux/libfglrxdrm.so

Dla wersji 8.24.8

su -
chcon -t texrel_shlib_t /usr/X11R6/lib/modules/dri/atiogl_a_dri.so /usr/X11R6/lib/modules/dri/fglrx_dri.so /usr/lib/ati-fglrx/libGL.so.1 /usr/lib/ati-fglrx/libGL.so.1.2 /usr/lib/ati-fglrx/libaticonfig.a /usr/lib/ati-fglrx/libfglrx_dm.a /usr/lib/ati-fglrx/libfglrx_dm.so.1 /usr/lib/ati-fglrx/libfglrx_dm.so.1.0 /usr/lib/ati-fglrx/libfglrx_gamma.a /usr/lib/ati-fglrx/libfglrx_gamma.so.1 /usr/lib/ati-fglrx/libfglrx_gamma.so.1.0 /usr/lib/ati-fglrx/libfglrx_pp.a /usr/lib/ati-fglrx/libfglrx_pp.so.1 /usr/lib/ati-fglrx/libfglrx_pp.so.1.0 /usr/lib/xorg/modules/dri/atiogl_a_dri.so /usr/lib/xorg/modules/dri/fglrx_dri.so /usr/lib/xorg/modules/drivers/fglrx_drv.so /usr/lib/xorg/modules/linux/libfglrxdrm.so

 

Dla wersji 8.24.8 64 BIT

su -
chcon -t texrel_shlib_t /usr/X11R6/lib/modules/dri/atiogl_a_dri.so /usr/X11R6/lib/modules/dri/fglrx_dri.so /usr/lib/ati-fglrx/libGL.so.1 /usr/lib64/ati-fglrx/libGL.so.1.2 /usr/lib64/ati-fglrx/libaticonfig.a /usr/lib64/ati-fglrx/libfglrx_dm.a /usr/lib64/ati-fglrx/libfglrx_dm.so.1 /usr/lib64/ati-fglrx/libfglrx_dm.so.1.0 /usr/lib64/ati-fglrx/libfglrx_gamma.a /usr/lib64/ati-fglrx/libfglrx_gamma.so.1 /usr/lib64/ati-fglrx/libfglrx_gamma.so.1.0 /usr/lib64/ati-fglrx/libfglrx_pp.a /usr/lib64/ati-fglrx/libfglrx_pp.so.1 /usr/lib64/ati-fglrx/libfglrx_pp.so.1.0 /usr/lib64/xorg/modules/dri/atiogl_a_dri.so /usr/lib64/xorg/modules/dri/fglrx_dri.so /usr/lib64/xorg/modules/drivers/fglrx_drv.so /usr/lib64/xorg/modules/linux/libfglrxdrm.so

(może się coś niezgadzać, poprawie jak werdzie do stable...)

 

 

Restartujemy kompa i sprawdamy:

glxinfo

Jeśli pokazuje

direct rendering: Yes

to akceleracja powinna działać.

 

Jeżeli serwer X odpala się w zbyt dużych rozdzielczościach to polecam edycję /etc/X11/xorg.conf:

Edytujemy /etc/X11/xorg.conf edytorem jaki lubimy np. gedit, kate, kedit, mcedit, nano, vi, vim czy inny. Według upodobań:

su -
gedit /etc/X11/xorg.conf

 

Znajdżmy sekcję Monitor i dla przykładu :

Section "Monitor"
### Comment all HorizSync and VertSync values to use DDC:
    ********Identifier   "Monitor0"********
    VendorName   "Monitor Vendor"
    ModelName    "CPD-E220E"
    DisplaySize  330    240
    HorizSync    30.0 - 85.0
    VertRefresh  48.0 - 120.0
    Option     "dpms"
EndSection

zamieńmy na

Section "Monitor"
### Comment all HorizSync and VertSync values to use DDC:
    ******** Identifier   "aticonfig Monitor0"********
    VendorName   "Monitor Vendor"
    ModelName    "CPD-E220E"
    DisplaySize  330    240
    HorizSync    30.0 - 85.0
    VertRefresh  48.0 - 120.0
    Option     "dpms"
EndSection

i wywalmy sekcję monitor wygenerowaną przez aticonfig

Section "Monitor"
    Identifier   "aticonfig Monitor 0"
EndSection

oraz zamieńcie

Section "Screen"
    ******** Identifier "Screen0" ********
    ******** Device     "Videocard0" ********
    ******** Monitor    "Monitor0" ********
    DefaultDepth     24
    SubSection "Display"
  Viewport   0 0
  Depth     16
  Modes    "800x600" "640x480"
    EndSubSection
    SubSection "Display"
  Viewport   0 0
  Depth     24
  Modes    "1024x768" "800x600" "640x480"
    EndSubSection

na

Section "Screen"
    ******** Identifier "aticonfig Screen 0" ********
    ******** Device     "ATI Graphics Adapter 0" ********
    ******** Monitor    "aticonfig Monitor 0" ********
    DefaultDepth     24
    SubSection "Display"
  Viewport   0 0
  Depth     16
  Modes    "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
  Viewport   0 0
  Depth     24
  Modes    "1024x768" "800x600" "640x480"
    EndSubSection
EndSection

i wywalcie wygenerowane przez aticonfig

Section "Screen"
    Identifier "aticonfig Screen 0"
    Device     "ATI Graphics Adapter 0"
    Monitor    "aticonfig Monitor 0"
    DefaultDepth     24
    SubSection "Display"
  Viewport   0 0
  Depth     24
    EndSubSection
EndSection

******** tym sposoben wyróżniłem gdzie są zmiany ********

 

Sterowniki już są dla x86.

 

EDIT: Wystarczy trochę pomyśleć. Jeśli wszystko robiło się z roota to czemu nie dwa inne polecenia(zresztą nikt się nie kazał wylogowywać). Dopisałem wszędzie su - aby nie było głupich pytań odnośnie "nie ma polecenia". "Problem" jeśli tak to można nazwać powtarzał się na forum pierdyliard razy(dzięki gajownik za ten liczebnik).

EDIT2: Poprawiony błąd z SELinuksem !!! Bardzo ważna rzecz !!! 4 post na drugiej stronie.

EDIT3: Na razie sterowniki 8.24.8 są w testing, ale na przyszłość piszę "nową formułę" dla selinuksa.

EDIT4: Sterowniki są już dla architektury 64bit. Niedługo poprawie nadawianie kontekstu dla 64bit bo coś jest źle a nie mam Fedory 64bit :/

Edytowane przez adios
Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 40
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Dwie uwagi:

 

1) Jeszcze nie ma paczek dla x86_64, więc architekturę można właściwie wszędzie zastąpić na i386.

 

2) Żeby polecenia były uniwersalne, można je uzupełnić o `uname -p`, np. tak:

rpm -ihv kernel-2.6.16-1.2080_FC5.`uname -p`.rpm

, a w ogóle najlepiej byłoby to zrobić yumem, bo ten kernel jest już w updates na mirrorach.

 

Ogólnie możnaby to uprościć, najlepiej właśnie użyć do tego yuma. Czy instalowany rpm przypadkiem sam nie modyfikuje xorg.conf?

Odnośnik do komentarza
Udostępnij na innych stronach

Czy instalowany rpm przypadkiem sam nie modyfikuje xorg.conf?

Nie.

RPM z bibliotekami

postinstall scriptlet (using /bin/sh):
/sbin/ldconfig ||:
if [ "${1}" -eq 1 ]; then
 # Enable ati-fglrx driver when installing
 /usr/sbin/ati-fglrx-config-display enable &>/dev/null ||:
 # Add init script and start it
 /sbin/chkconfig --add ati-fglrx ||:
 /etc/init.d/ati-fglrx start &>/dev/null ||:
fi ||:
preuninstall scriptlet (using /bin/sh):
if [ "${1}" -eq 0 ]; then
 # Disable driver, but only on final removal
 /etc/init.d/ati-fglrx stop &>/dev/null
 /sbin/chkconfig --del ati-fglrx
 test -f /usr/sbin/ati-fglrx-config-display && /usr/sbin/ati-fglrx-config-display disable &>/dev/null ||:
fi ||:
postuninstall program: /sbin/ldconfig

RPM z modułem

/sbin/depmod -aeF /boot/System.map-2.6.16-1.2080_FC5 2.6.16-1.2080_FC5 > /dev/null || :
postuninstall scriptlet (using /bin/sh):
/sbin/depmod -aF /boot/System.map-2.6.16-1.2080_FC5 2.6.16-1.2080_FC5 &> /dev/null || :

Odnośnik do komentarza
Udostępnij na innych stronach

Heh, to pewnie kiedyś dodadzą te skrypty. Trochę to dziwne, bo to nic trudnego do napisania (o ile ktoś nie korzysta z jakichś niestandardowych wpisów w xorg).

Odnośnik do komentarza
Udostępnij na innych stronach

Podam kilka komend do testowania

glxinfo

fglrxinfo

 glxgears  

fgl_glxgears

glxgears -iacknowledgethatthistoolisnotabenchmark

 

Nadmienię że fajny temat i u mnie poszło zajeeeeeeeeeebifajnie

Choć nie zmieniałem

Znajdźmy sekcję Monitor i dla przykładu :

zmieniać należy gdy są problemy , a ja nie musiałem

Odnośnik do komentarza
Udostępnij na innych stronach

mam problem z uprawnieniami.

moja fedora nie rozpoznaje tego polecenia...

Czy moge jakos obejsc to??

a to jet wynij po

 

[magic@Linux ~]$ fglrxinfo

fglrxinfo: error while loading shared libraries: /usr/lib/ati-fglrx/libGL.so.1: cannot restore segment prot after reloc: Permission denied

 

to samo jest jako root

 

No i na tym stanela moja instalacja steownikow

Pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

mam problem z uprawnieniami.

moja fedora nie rozpoznaje tego polecenia...

Czy moge jakos obejsc to??

a to jet wynij po

 

[magic@Linux ~]$ fglrxinfo

fglrxinfo: error while loading shared libraries: /usr/lib/ati-fglrx/libGL.so.1: cannot restore segment prot after reloc: Permission denied

 

to samo jest jako root

 

No i na tym stanela moja instalacja steownikow

Pozdrawiam

Spróbuj

chcon -t texrel_shlib_t /usr/lib/ati-fglrx/libGL.so.1.2

Wygląda to tak jakbyś nie wykonał tego punktu:

su -
setsebool -P allow_execstack=1
setsebool -P allow_execmod=1

Odnośnik do komentarza
Udostępnij na innych stronach

Witam!

 

Przerobiłem całą podaną procedurę instalacji u siebie, zrestartowałem komputer i z konsoli tekstowej z konta root-a wpisałem polecenie glxinfo. W odpowedzi otrzymałem komunikat zakończony: "Error: unable to open display (null)". Przy próbie uruchomienia środowiska graficznego oglądam "black screen" :-(

 

Czy ktoś ma jakieś sugestie?

 

Mój sprzęt to m.in.: Gigabyte GA-K8NF-9, AMD Athlon64 3200+ (Manchester), Radeon X700 GigaByte GV-RX70256D, Samsung Syncmaster 173P+ (wykorzystuje łącze DVI).

 

Pozdrawiam

bshbc

Odnośnik do komentarza
Udostępnij na innych stronach

@bshbc

1) Polecenie glxinfo trzeba włączać w środowisku graficznym

2) Sterowniki są dostępne tylko i wyłącznie dla platformy 32 bitowej

3) Jeśli masz jednak system 32 bitowy to sprawdź co wywala serwer X. Log X'ów znajdule się w pliku /var/log/Xorg.0.log

Odnośnik do komentarza
Udostępnij na innych stronach

Tak próbuję tym razem z systemem w wersji 32-bit. Zgodnie z radą popatrzyłem do Xorg.0.log i pozwolę sobie przytoczyć jego końcówkę:

 

(II) fglrx(0): PCI bus 5 card 0 func 0

(EE) fglrx(0): Given depth (16) is not supported by fglrx driver

(EE) fglrx(0): PreInitVisual failed

SetVBEMode failed

(EE) fglrx(0): R200PreInit failed

(II) fglrx(0): === [R200PreInit] === end

(II) UnloadModule: "fglrx"

(II) UnloadModule: "vgahw"

(II) Unloading /usr/lib/xorg/modules/libvgahw.so

(EE) Screen(s) found, but none have a usable configuration.

 

Fatal server error:

no screens found

 

Jeśli chodzi o parametr depth ustawiany w pliku xorg.conf to mam ustawiony domyślny na 24 bity?

 

Section "Screen"

Identifier "Screen0"

Device    "Videocard0"

Monitor    "Monitor0"

DefaultDepth    24

SubSection "Display"

  Viewport  0 0

  Depth    24

  Modes    "1024x768" "800x600" "640x480"

EndSubSection

EndSection

 

Więc o co tu chodzi? :-(

 

W pliku Xorg.O.log jest jeszcze uwaga:

 

(WW) fglrx: No matching Device section for instance (BusID PCI:5:0:1) found

 

Ale to chyba nie jest przyczyna (czy dobrze myślę że chodzi o to że nie mam zdefiniowanego BusID PCI w pliku xorg.conf?).

 

Co teraz mogę zrobić żeby uruchomić tryb graficzny?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chodzi o parametr depth ustawiany w pliku xorg.conf to mam ustawiony domyślny na 24 bity?

 

Section "Screen"

Identifier "Screen0"

Device    "Videocard0"

Monitor    "Monitor0"

DefaultDepth    24

SubSection "Display"

  Viewport  0 0

  Depth    24

  Modes    "1024x768" "800x600" "640x480"

EndSubSection

EndSection

 

Więc o co tu chodzi? :-(

Z tej sekcji (Identifier "Screen0") fglrx nie kożysta. przeczytaj uważnie Tutorial tam jest napisane co trzeba zmienić jeśli aticonfig --init źle sobie poradził. Poszukaj w temacie postu fragment

Znajdżmy sekcję Monitor i dla przykładu :

Więc nie zrobiłeś wszystkiego jak w tutorialu.

Odnośnik do komentarza
Udostępnij na innych stronach

Faktycznie nie zrobiłem opisanych zmian jak należy. Poprawiłem i teraz nie widzę żadnych komunikatów oznaczonych symbolem błędu ale ... przy w trybie graficznym dalej mam czarny ekran a monitor wyświetla komunikat coś w stylu: "tryb nie jest obsługiwany" i ładnie zasypia. :-(

 

Pobrałem ze strony Samsunga opis monitora i mam tabelkę z obsługiwanymi trybami (napisali że w przypadku niezgodności obraz zostanie wyczyszczony przy świecącej się diodzie LED więc stąd ten czarny ekran pewnie). Tylko jak taki tryb ustawić mając np następujące dane:

 

VESA, 1024x768

częstotliwość odch. poziomego 48,363 [kHz]

częstotliwość odchylania poziomego 60,004 [Hz]

częstotliwość piksela 65,000 [MHz]

sync polarity (H/V) -/-

 

I jak teraz ustawić do tego monitora?

Odnośnik do komentarza
Udostępnij na innych stronach

khem..... zainstalowalem stery i poniewaz nie komendy setsebool nie działają, poniewaz bash mi mowi ze ich nie zna, to wpisalem jak adios poradził chcon bla bla bla..... no i sie okazało (to samo mialem w FC4) ze akceleracji nie ma, bo Direct Rendering: No a przed instalacją sterów było na Tak sad.gif help....?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

×
×
  • Dodaj nową pozycję...