Você já tentou isso:
sudo apt-get install --reinstall unity
sudo dpkg-reconfigure unity
dconf -reset /etc/X11/xorg.conf
e pode funcionar bem assim.
Eu criei um /etc/X11/xorg.conf usando aticonfig --initial
, que se parece com isto:
Section "ServerLayout"
Identifier "aticonfig Layout"
Screen 0 "aticonfig-Screen[0]-0" 0 0
EndSection
Section "Module"
EndSection
Section "Monitor"
Identifier "aticonfig-Monitor[0]-0"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection
Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
BusID "PCI:11:0:0"
EndSection
Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Quando tentei iniciar o lightdm, ele falha. Olhando para /var/log/lightdm/x-0.log, ele me diz que não é possível encontrar o dispositivo PCI:
fglrx: Nenhuma seção de dispositivo correspondente, por exemplo (BusID PCI: 0 @ 11: 0: 0)
Então eu procurei os dispositivos PCI usando lspci
e descobri que 11: 0: 0 na verdade não é a GPU, mas sim um dispositivo PCI brdige:
...
00:11.0 PCI bridge: VMware PCI bridge (rev 02)
...
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Hawaii XT [Radeon R9 290X]
Parece que as ferramentas da ATI não podem configurar GPUs atrás de dispositivos de ponte PCI. Então, não é grande coisa, basta consertar o PCI BusID para coincidir com o GPU BusID real, certo? Então eu mudei a linha no xorg.conf para:
BusID "PCI:b:0:0"
E tentei reiniciar o lightdm usando sudo service lightdm restart
. Adivinha? MESMO erro! Mais uma vez me diz, que é incapaz de encontrar o dispositivo PCI 11: 0: 0 até pensei que o xorg.conf diz para ele usar o dispositivo b: 0: 0! eu posso diga que está usando o xorg.conf de /ext/X11/xorg.conf porque o log é assim:
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(WW) fglrx: No matching Device section for instance (BusID PCI:0@11:0:0) found
O próximo palpite é que, eventualmente, essa ponte está causando problemas, então usei um PCI BusID que NÃO está conectado à bridge apenas para ver se a saída do log muda - é claro que não.
Então: alguém tem uma idéia de por que minha configuração em /etc/X11/xorg.conf parece ser completamente ignorada, mas o log ainda relata para usá-la? Onde eu encontro o xorg.conf que é realmente usado para que eu possa consertar o PCI BusID errado?
Atualização: /var/log/Xorg.0.log informa coisas interessantes:
[ 11.894] (II) AMD Proprietary Linux Driver Build Date: Feb 27 2015 03:27:32
[ 11.894] (WW) Falling back to old probe method for fglrx
[ 11.918] (II) Loading PCS database from /etc/ati/amdpcsdb /etc/ati/amdpcsdb.default
[ 11.920] ukiDynamicMajor: found major device number 251
[ 11.920] ukiOpenByBusid: Searching for BusID PCI:b:0:0
[ 11.920] ukiOpenDevice: node name is /dev/ati/card0
[ 11.920] ukiOpenDevice: open result is 9, (OK)
[ 12.165] ukiOpenDevice: open result is 9, (OK)
[ 12.165] ukiOpenByBusid: ukiOpenMinor returns 9
[ 12.165] ukiOpenByBusid: ukiGetBusid reports PCI:11:0:0
[ 12.166] ukiOpenDevice: node name is /dev/ati/card1
[ 12.166] ukiOpenDevice: open result is -1, (No such device)
[ 12.166] ukiOpenDevice: open result is -1, (No such device)
[ 12.166] ukiOpenDevice: Open failed
...
[ 12.169] (WW) fglrx: No matching Device section for instance (BusID PCI:0@11:0:0) found
Parece que está procurando por b: 0: 0 e a encontra com sucesso. Então, por algum motivo, ele apenas pesquisou todos os dispositivos PCI e também descobriu que - entre outros - 11: 0: 0 não é um GPU válido - MAS o fglrx ainda tenta usá-lo.
Atualizar Mudar para o gdm não ajuda. Agora, até a tela de login fica preta. No entanto, depois de mudar para o gdm, recebo uma saída mais significativa do Xorg.0.log:
[ 28.219] ukiOpenByBusid: Searching for BusID PCI:11:0:0
[ 28.219] ukiOpenDevice: node name is /dev/ati/card0
[ 28.219] ukiOpenDevice: open result is 9, (OK)
[ 28.219] ukiOpenByBusid: ukiOpenMinor returns 9
[ 28.219] ukiOpenByBusid: ukiGetBusid reports PCI:11:0:0
[ 28.224] (--) Chipset Supported AMD Graphics Processor (0x67B0) found
[ 28.224] (WW) fglrx: No matching Device section for instance (BusID PCI:0@11:0:1) found
...
[ 28.235] (EE) fglrx(0): DAL initialization failed!
[ 28.235] (EE) fglrx(0): Display Infrastructure Failed
[ 28.235] (EE) fglrx(0): PreInit failed
...
28.244] (EE) Screen(s) found, but none have a usable configuration.
[ 28.244] (EE)
Fatal server error:
[ 28.244] (EE) no screens found(EE)
Parece que o xorg.conf produzido por aticonfig --inicial não funciona? Alguma idéia?
Você já tentou isso:
sudo apt-get install --reinstall unity
sudo dpkg-reconfigure unity
dconf -reset /etc/X11/xorg.conf
e pode funcionar bem assim.