Tr:HOWTO: chroot from a LiveCD

From Sabayon Wiki
Jump to: navigation, search
i18n: en tr

NASIL: CanlıCD'den Chroot Etme

Sabayon Linux CanlıCD/DVD veya diğer canlı ortamı boot edin. Uçbirimi açın ve root kullanıcı olarak giriş yapın.

Stop.png
Kullandığınız CanlıDVD'nin hard diskinizde kurulu olan kurulumla aynı mimariye sahip olduğunda emin olun, yani 64-bit (örneğin amd64) kuruluma chroot yapmak için 32-bit (örneğin x86) CanlıDVD kullanamazsınız, terside mümkün değildir. Eğer farklı bir mimariden CanlıDVD ile chroot yapmayı denerseniz bu hata mesajını görürsünüz "chroot: cannot run command `/bin/bash': Exec format error".


Question.png
Chroot edilmiş sistemler içinde dosyaları bağlamak mümkün olmasına rağmen, tavsiye edilmez. Bunun sebebi; CanlıDVD ortamı bu dosya sistemlerini tanımaz ve eğer unutulur ve bağlı kalırlarsa, sistem kapanışlarında olması gerektiği gibi ayrılmayacaklardır (unmount) ve bu bağlamalarda dosya sistemlerine zarar verecektir.

Kurulu sistemin root bölümünü (ve eğer ayrı bir yerde /boot kuruluysa onu da) bağlayın. Eğer sistemin diğer bölümleri için ayrı ayrı bölümler kullanılıyorsa (örneğin, /var/log için ayrı bir bölüm) bu bölümlerinde bağlanması gerekli. Ek olarak, chroot edilmiş ortamın kullanabilmesi için /dev ve /proc dosya sistemlerini bağlayın.

Aşağıdaki örnekte, /dev/hda1, /boot bölümü ve /dev/hda3, root bölümüdür. Açıkça bilineceği üzere aygıt isimlerini sizin boot bölümünüz (eğer varsa) ve sizin' root bölümünüzle değiştirin. Eğer sizin bölümleriniz /dev/hd<letter><number> biçiminde değilde /dev/sd<letter><number> biçimindeyse, anlaşılacağı üzere o biçimi kullanın. Gene anlaşılacağı üzere / (root) için ayrı bir /boot bölümünüz yoksa, /boot 'u ifade eden mount ve umount'u atmalısınız.

# mkdir -p /mnt/sabayon/boot
# mount /dev/hda3 /mnt/sabayon
# mount /dev/hda1 /mnt/sabayon/boot
# mount -t proc none /mnt/sabayon/proc
# mount -o bind /dev /mnt/sabayon/dev


Şimdi kurulu sistemimizin içine girmeye ayarlandık:

# chroot /mnt/sabayon /bin/bash
# env-update
# source /etc/profile
# export PS1="(chroot) $PS1"


Sonra aşağıdaki komut istemiyle bitmelisiniz:

(chroot) #

Grub2 /etc/mtab dosyasını şu an bağlanmış dosya sistemlerini belirlemek için kullanır, bu nedenle /etc/mtab güncellenmeli. Eğer ayrı bir boot bölümünüz yoksa /etc/mtab'ınız aşağıdaki komut kullanarak güncellenmeli:

(chroot) # grep -v rootfs /proc/mounts > /etc/mtab

veya eğer ayrı bir boot bölümünüz varsa aşağıdakiyle yapılmalı:

(chroot) # cp /proc/mounts /etc/mtab

Şu andan itibaren, kurulu sisteminizi doğrudan kullanıyormuşsunuz gibi komutları girebilirsiniz. Örneğin, equo veya emerge komutlarından birini girerek bir paket kurabilirsiniz. Bunun gibi kurulu bir sisteme doğrudan müdahale edebilme yeteneği, bir şey kırılır ve çalışan sisteme boot edemeyeceğiniz bir durumda çok faydalıdır. Ekran kartının çalıştığını bildiğiniz önceki sürümüne geri dönmeyi isteyebilir veya çekirdek ayarını tamir etmek ve boot ettiğinizde çekirdek paniği (Kernel Panic) ile sonuçlanan bir değişiklik yaptığınızdan dolayı yeniden inşa etmek isteyebilirsiniz. Veya buna benzer bir nedenle.

(chroot) # <enter any command you want>


İşinizi bitirdiğinizde, chroot ortamından çıkabilir ve sürücüleri çıkarabilirsiniz (unmount):

(chroot) # exit
# umount /mnt/sabayon/boot /mnt/sabayon/dev /mnt/sabayon/proc /mnt/sabayon

Bilgisayarı yeniden başlatın. Eğer chroot oturumu boyunca yaptıklarınız başarılıysa, kurulu sisteminiz olağan çalışmalı.