원하는 내용에 따라 다른 버전의 xorg.conf를 작성하십시오. 말하다:
/etc/X11/xorg.conf.nvidia
/etc/X11/xorg.conf.ati
/etc/X11/xorg.conf.generic
그런 다음 /boot/grub/grub.cfg에서 여러 부팅 구성을 구성하고 커널이 지정된 모든 줄에 다른 커널 매개 변수 (예 : xconfig = myconfig)를 입력하십시오. 다음 줄을 따라 :
menuentry "Ubuntu, Linux 2.6.31-17 nvidia" {
...
linux /vmlinuz-2.6.31-17 root=UUID=885a6a07-fd6c-4638-aa17-d38997d477e1 xconfig=nvidia ro single
...
}
menuentry "Ubuntu, Linux 2.6.31-17 ati" {
...
linux /vmlinuz-2.6.31-17 root=UUID=885a6a07-fd6c-4638-aa17-d38997d477e1 xconfig=ati ro single
...
}
menuentry "Ubuntu, Linux 2.6.31-17 generic" {
...
linux /vmlinuz-2.6.31-17 root=UUID=885a6a07-fd6c-4638-aa17-d38997d477e1 xconfig=generic ro single
...
}
인식되지 않는 커널 매개 변수는 무시되지만 / proc / cmdline에서 계속 사용할 수 있습니다. 이를 기반으로 올바른 구성 파일을 선택하는 작은 쉘 스크립트를 작성할 수 있습니다.
#!/bin/bash
rm -f /etc/X11/xorg.conf
config=`cat /proc/cmdline |sed -e 's/.*xconfig=\([a-z]*\).*/\1/g'
ln -s /etc/X11/xonfig.conf.$config /etc/X11/xconfig.conf
그런 다음 gdm이 시작되기 전에 부팅 순서의 어딘가에 넣으십시오.