[Tr] Chroot sisteme giriş (X ile)

Klasör altına derlediğiniz/kurduğunuz sistemin grafiksel ortamdaki ayarlamalarını yapmak ya da normal sisteminiz gibi kullanmak gibi amaçlarla giriş yapmanız gerekiyorsa, buyrun..
Biraz kurcalayarak becerdim ama modüllere ve kernel farklılığına hassasiyeti olabilecek bi yöntem.
Anlattığım yöntem gentoo altında uygulanmış/denenmiş hali, gentoo da olsa diğer dağıtımları kullananların daha kolay kavraması için (sistemimde ve chroota) PATH altına kendim yerleştirdiğim “service” betiğini kulanıyorum. Betiğin işlevi çok basit, “service servis_adı start/stop/restart/vs..”
İlgilenen gentoo kullanıcıları için işte betik:

#!/bin/bash
service=$1 ; shift
/etc/init.d/$service “$@”

Neyse, anlatıma geçelim. Önce ctrl-alt-f1 ile konsoldan root girişi yapıp kullandığımız X ortamını kapatıyoruz:
service xdm stop (ya da killall gdm/kdm)

Kullanıyorsak birincil ekran kartı sürücü modülünü kaldırıyoruz:
rmmod nvidia (ati ise fglrx vs..)

Çalışan xorg.conf’u chroot’a kopyalıyoruz, eskisinin yedeğini alarak..
mv chroot_dizini/etc/X11/xorg.conf chroot_dizini/etc/X11/xorg.conf.yedek
cp /etc/X11/xorg.conf chroot_dizini/etc/X11/xorg.conf

Şimdi rc-status komutu ile çalışan servisleri görüp, local hariç hepsini kapatıyoruz:
service servis_adı stop

Şimdi dizine chroot girişi yapıyoruz:
cd chroot_dizini
mount -o bind /etc etc/
mount -o bind /dev dev/
mount -o bind /proc proc/
mount -o bind /dev/pts dev/pts
(bu içerde terminaller çalışsın diye)
chroot . /bin/bash –login

İşimize yarayan servisleri chroot içinde açıyoruz, açmak için “restart” kullanmamız gerek, sistem hafiften aptallaşıyor çünkü artık :)
service servis_adı restart

Birincil sürücü modülümüzü chroot modüllerinden yüklüyoruz. Eğer kernel sürümü/adı farklıysa bu adım hata verebilir, chroot’taki xorg.conf’u düzenleyerek vesa sürücüsü kullanmanız gerekebilir.
modprobe nvidia (fglrx bla bla..)

Artık gdm, kdm gibi komutlarla X sunucuyu açabiliriz. Servislere bu kadar önem vermeden, sadece ekran ayarlamasıyla da halledebilirdik, ancak bu şekilde neredeyse herşeyin (işlemci seviye ve parlaklık appletleri/ayarlayıcıları gibi) çalışmasını sağladık.

Çıkışta ise bu işlemleri adım adım geri uygulayabilir, ya da kısaca “init 6” komutu vererek sistemi yeniden başlatabilirsiniz..

Leave a comment

Your comment