Blog

2009-10-12 00:00:00 +0000 - szerző(k) tibcsi

Egyik Ubuntu 9.04-et használó barátom kérdezett meg arról, hogy hogyan tudná megoldani a laptopján, hogy otthon 1-képernyős XOrg beállításokkal, míg munkahelyén két képernyős XOrg beállításokkal indíthassa kedvenc operációs rendszerét, mindemellett ne kelljen a váltáshoz újraindítani az XOrg-ot.

Egy kis töprengés után a következő tippet adtam neki:

A Grub menüben vegyen fel egy új menüpontot ugyanazzal a kernellel, mint amit használ, és egészítse ki a kernel opciókat egy ‘dualkepernyo’ szócskával. Valahogy így:

title Ubuntu 9.04, Egykepernyos kernel /vmlinuz-2.6.28-15-generic root=... ro quiet splash initrd /initrd.img-2.6.28-15-generic quiet

title Ubuntu 9.04, Ketkepernyos kernel /vmlinuz-2.6.28-15-generic root=… ro quiet splash dualkepernyo initrd /initrd.img-2.6.28-15-generic quiet </code>

Tehát két menüpont legyen, az egyik az egyképernyős, a másik pedig a kétképernyős üzemmód. Ezután hozzon létre egy init scriptet az /etc/init.d -ben dualkepernyo néven, ami a következőt tartalmazza:

#!/bin/sh if grep -q -w -- "-s\|dualkepernyo\|S" /proc/cmdline; then   cp /etc/X11/xorg.dual.conf /etc/X11/xorg.conf else   cp /etc/X11/xorg.single.conf /etc/X11/xorg.conf fi

Ez a script nem csinál mást, minthogy ellenőrzi, szerepel-e a kernel-opciók között a ‘dualkepernyo’ szócska. Ettől függően a választott boot-menünek megfelelő XOrg konfigurációs fájlt másolja a helyére. Természetesen ezeket a konfigurációs fájlokat előzetesen létre kell hozni a megfelelő XOrg beállításokkal.

Már csak azt kell elérni, hogy a script lefusson boot-időben, még a gdm indulása előtt:

chmod 755 /etc/init.d/dualkepernyo ln -s /etc/init.d/dualkepernyo /etc/rc2.d/S29dualkepernyo

A 2-es futási szintbe tettem, mivel Ubuntu 9.04-ben ez az alapértelmezett futási szint. A sorrend meghatározásához pedig 1-gyel kisebb számot (S29-et) használtam, mint a gdm sorrendje - mivel nálam a gdm S30-as.

Elég csúnya megoldásnak tűnik, de működött :)

© kecsi. Néhány jog fenntartva.

Készítve Chirpy témával a Jekyll platformra.