Provided by:
manpages-tr_1.0.5.1-2_all 
ISIM
initrd - onyukleyici ilklendirmeli RAM disk
A,CIKLAMA
/dev/initrd ozel dosyasi bir salt-okunur blok aygitidir. /dev/initrd
aygiti cekirdek baslatilmadan once on yukleyici tarafindan
ilklendirilen (yuklenen) bir RAM disktir. Cekirdek iki donemden olusan
acilis sureci icin /dev/initrd blok aygitinin icerigini kullanabilir.
Acilis isleminin ilk doneminde cekirdek calisir ve /dev/initrd
(onyukleyici tarafindan ilklendirilmis RAM disk) iceriginden baslangic
kok dosya sistemini baglar. Ikinci donemde ise bu baslangic kok dosya
sisteminin iceriginden ek suruculer veya diger moduller yuklenir. Ek
moduller yuklendikten sonra yeni bir kok dosya sistemi (yani, normal
kok dosya sistemi) farkli bir aygittan baglanir.
A,CILI,S I,SLEMI
initrd ile acilis sirasinda acilis sureci soyle gelisir:
1. Onyukleyici cekirdegi ve /dev/initrd'nin icerigini bellege yukler.
2. Cekirdek calismaya baslayinca, cekirdek kendinin sikistirmasini
cozup /dev/initrd aygitinin icerigini /dev/ram0 aygitina
kopyaladiktan sonra /dev/initrd tarafindan kullanilan bellegi
serbest birakir.
3. Cekirdek, baslangic kok dosya sistemi olarak /dev/ram0'i
okunabilir-yazilabilir baglar.
4. Istenen normal kok dosya sistemi zaten baslangic kok dosya sistemi
ise (yani /dev/ram0) cekirdek son acilis adimina atlar.
5. Baslangic kok dosya sisteminde /linuxrc calistirilabilir dosyasi
varsa, /linuxrc 0 kullanici kimligi ile calistirilir. (/linuxrc
dosyasi calistirilabilirlik iznine sahip olmalidir. /linuxrc
dosyasi bir betik ya da gecerli calistirilabilir bir dosya
olabilir.)
6. /linuxrc calistirilmazsa ya da /linuxrc sonlandigi zaman normal kok
dosya sistemi baglanir. (Baslangic kok dosya sistemine baglanmis
dosya sistemleriyle /linuxrc cikis yaparsa cekirdegin davranisi
BELIRSIZDIR. (Cekirdegin mevcut davranisi icin NOTLAR bolumune
bakiniz.)
7. Normal kok dosya sisteminde /initrd dizini varsa, /dev/ram0, / den
/initrd'ye tasinir. Aksi takdirde, /initrd dizini yoksa, /dev/ram0
sistemden ayrilir. (/dev/ram0, / den /initrd'ye tasindigi zaman
sistemden ayrilmaz ve boylece /dev/ram0 uzerinde calismakta olan
surecler calismaya devam edebilir.) Normal kok dosya sisteminde
/initrd dizini yoksa ve /dev/ram0 uzerinde hala calisan surecler
varsa cekirdegin davranisi BELIRSIZDIR. (Cekirdegin mevcut
davranisi icin NOTLAR bolumune bakiniz.)
8. Normal kok dosya sistemi uzerinde olagan acilis islemi (yani
/sbin/init cagrisi) uygulanir.
SE,CENEKLER
Asagidaki onyukleyici secenekleri initrd ile kullanildigi zaman
cekirdegin acilis islemi etkilenir:
initrd=dosya-ismi
/dev/initrd'nin icerigi olarak yuklenecek dosyayi belirtmek
icindir. LOADLIN icin bu bir komut satiri secenegidir. LILO icin
bunu /etc/lilo.conf dosyasinda kullanabilirsiniz. Bu secenekle
belirtilen dosya ismi genellikle gzip'li dosya sistemi eslemi
olacaktir.
noinitrd
Bu onyukleme secenegi acilis isleminin iki donemini iptal eder.
Cekirdek, /dev/initrd ilklendirilmemis gibi olagan acilisi
gerceklestirir. Bu secenekle, onyukleyici tarafindan bellege
yuklenen /dev/initrd'nin icerigi korunur. Bu secenek
/dev/initrd'nin iceriginin herhangi bir veri olmasina izin
verir, dosya sistemi eslemi olmasi gerekmez. Bu durumda
/dev/initrd aygiti salt okunurdur ve sistem acildiktan sonra da
salt okunur olarak kalabilir.
root=aygit-ismi
Normal kok dosya sistemi olarak kullanilacak aygit ismi
belirtilir. LOADLIN icin bu bir komut satiri secenegidir. LILO
icin bunu /etc/lilo.conf dosyasinda kullanabilirsiniz. Bu
secenekle belirtilecek aygit, kok dosya sistemi olarak elverisli
ve baglanabilir bir aygit olmalidir.
NORMAL K"OK DOSYA SISTEMININ DEGI,STIRILMESI
Ontanimli olarak, normal kok dosya sistemi icin, cekirdegin ayarlari
(rdev ile cekirdek dosyasinda yapilan ayarlar ya da cekirdek dosyasi
icinde derlenmis ayarlar) ya da onyukleyici secenekleri ile yapilan
ayarlar kullanilir. Bir NFS uzerinden bagli normal kok dosya sistemi
icin, nfs_root_name ve nfs_root_addrs onyukleyici secenekleri NFS
ayarlari olarak kullanilir. Bir NFS uzerinden bagli normal kok dosya
sistemi ile ilgili daha fazla bilgi edinmek icin cekirdek belgeleri
arasinda bulunan nfs-root.txt dosyasina bakiniz. Kok dosya sistemi
ayarlari ile ilgili daha fazla bilgi edinmek icin ise LILO ve LOADLIN
belgelerine bakiniz.
Ayrica normal kok dosya sisteminin degistirilmesi /linuxrc
calistirilabiliri ile de mumkundur. Bunun icin /proc baglanmis
olmalidir. /proc baglandiktan sonra /linuxrc,
/proc/sys/kernel/real-root-dev, /proc/sys/kernel/nfs-root-name ve
/proc/sys/kernel/nfs-root-addrs proc dosyalarina yazarak normal kok
aygitini degistirir. Bir fiziksel kok aygiti, /linuxrc tarafindan yeni
kok dosya sisteminin aygit numarasi /proc/sys/kernel/real-root-dev
icine yazilarak degistirilir. Bir NFS kok dosya sistemi ise, /linuxrc
tarafindan yeni kok dosya sisteminin NFS ayarlari
/proc/sys/kernel/nfs-root-name ve /proc/sys/kernel/nfs-root-addrs
dosyalarina yazildiktan sonra /proc/sys/kernel/real-root-dev dosyasina
0xff (sanal NFS aygit numarasi) yazilarak degistirilir. Ornegin
asagidaki kabuk komutu normal kok aygitini /dev/hdb1 olarak
degistirecektir:
echo 0x365 >/proc/sys/kernel/real-root-dev
Bir NFS ornegi olarak, IP numarasi 193.8.232.7 ve ismi `idefix' olan
bir sistem icin 193.8.232.7 IP numarasiyla bir yerel agli NFS sunucusu
uzerindeki /var/nfsroot NFS dizinini normal kok dosya sistemi olarak
degistirecek kabuk komutu:
echo /var/nfsroot >/proc/sys/kernel/nfs-root-name
echo 193.8.232.2:193.8.232.7::255.255.255.0:idefix \
>/proc/sys/kernel/nfs-root-addrs
echo 255 >/proc/sys/kernel/real-root-dev
KULLANIM
initrd'nin esas olusturulma sebebi sistem kurulumunda moduler cekirdek
yapilandirmasini mumkun kilmakti.
Olasi bir sistem kurulum senaryosu soyle olabilir:
1. Onyukleyici uygulamasi disketten ya da baska bir ortamdan mumkun en
kucuk cekirdekle (yani sadece /dev/ram, /dev/initrd ve ext2 dosya
sistemi destegiyle) baslar ve baslangic dosya sisteminin gzipli
surumu ile /dev/initrd'yi yukler.
2. /linuxrc calistirilabiliri normal kok dosya sistemini (1) ve
dagitim ortamini (2) (CD-ROM, ag, teyp, vs.) baglamak icin
gerekenleri (aygit turu, aygit surucusu, dosya sistemi gibi)
saptar.
3. /linuxrc calistirilabiliri baslangic dosya sisteminden gerekli
cekirdek modullerini yukler.
4. /linuxrc calistirilabiliri kok dosya sistemini olusturur ve
kullanima sokar (Bu adimda normal kok dosya sistemi henuz eksiksiz
bir sistem degildir).
5. /linuxrc calistirilabiliri /proc/sys/kernel/real-root-dev dosyasina
gerekli degeri yazar ve /proc sistemden ayrilir, normal kok dosya
sistemi ve diger dosya sistemleri bagli kalir ve /linuxrc
calismasini sonlandirir.
6. Bundan sonra cekirdek normal kok dosya sistemini baglar.
7. Artik normal kok dosya sistemi kullanima hazirdir, yani onyukleyici
kurulabilir.
8. Sistemi acmak icin kullanilacak modullerle birlikte bir dosya
sistemini /dev/initrd'ye yukleyecek onyukleyici yapilandirilir
(Yani, /dev/ram0 aygiti degistirilebilir, sonra sistemden ayrilip
son olarak /dev/ram0 icindeki eslem bir dosyaya yazilabilir).
9. Sistem artik acilabilir hale gelmistir ve ek kurulum islemlerine
devam edilebilir.
Yukaridaki senaryoda /dev/initrd'ye dusen anahtar rol, cekirdegi
yeniden derlemeden, buyuk bir cekirdek kullanmak zorunda kalmadan hatta
bir baslangic cekirdegi secilmesi bile gerekmeden normal sistem
islemleri sirasinda kullanilan yapilandirma verilerinin yeniden
kullanilabilirligini saglamaktir.
Bir ikinci senaryo da tek bir yonetim aginda farkli donanim
yapilandirmali sistemler uzerinde calisan Linux kurulumlari icindir.
Boyle durumlarda, kucuk bir cekirdek ailesi (ideal olarak bir cekirdek)
kullanilmasi ve yapilandirmaya iliskin sisteme ozel yapilandirmalarin
mumkun oldugu kadar kucuk tutulmasi istenebilir. Bu durumda, ihtiyac
duyulan tum modulleri iceren bir dosya olusturulur. Bundan sonra sadece
/linuxrc dosyasi veya /linuxrc tarafindan calistirilan bir dosya farkli
olabilirdi.
Bir ucuncu senaryo kurtarma diskleri icin daha elverislidir. Kok dosya
sisteminin disk bolumunun yeri gibi bilgiler onyukleme sirasinda
gerekli olmadigindan bunun icin, /dev/initrd'de yuklu sistem bir olasi
saglamlik sinamasindan sonra ozdevimli algilama ya da bir diyalog
kullanabilir.
Son ama en az kullanilanlardan biri olmayan bir senaryo da CD-ROM'dan
kolay kurulum icin initrd kullanan CD-ROM'lu Linux dagitimlarinin
kullandigi senaryodur. Dagitim, herhangi bir disket kullanmadan
/dev/initrd'yi dogrudan yuklemek icin LOADLIN'i kullanabilir. Dagitim
ayrica, bir acilis disketinden LILO kullanip, /dev/initrd uzerinden
CD-ROM'daki daha buyuk bir ram disk'i yukleyebilir.
YAPILANDIRMA
/dev/initrd ana numarasi 1, alt numarasi 250 olan bir salt okunur blok
aygitidir. /dev/initrd genellikle 0400 izinleriyle (sadece root icin
okuma izni) root.disk sahipligindeki bir dosyadir. Linux sisteminde
olusturulmus bir /dev/initrd yoksa, asagidaki komutlarla
olusturulabilir:
mknod -m 400 /dev/initrd b 1 250
chown root:disk /dev/initrd
Ayrica, "RAM disk" ve "baslangic RAM diski" destegi icin destek,
/dev/initrd kullanacak cekirdege gomulu olarak (CONFIG_BLK_DEV_RAM=y
ve CONFIG_BLK_DEV_INITRD=y) derlenmis olmalidir. /dev/initrd
kullanilirken RAM disk bir modul olarak yuklenemez.
ILGILI DOSYALAR
/dev/initrd
/dev/ram0
/linuxrc
/initrd
ILGILI BELGELER
chown(1), mknod(1), ram(4), freeramdisk(8), rdev(8), cekirdek
paketindeki initrd.txt dosyasi, LILO belgeleri, LOADLIN belgeleri,
SYSLINUX belgeleri.
NOTLAR
1. /dev/ram0, / dan /initrd ye tasinirken bagli kalan dosya sistemleri
kullanilmakta olan cekirdekle erisilebilir olmaya devam eder. Buna
ragmen /proc/mounts girdileri guncellenmez.
2. /initrd dizini yoksa, kullanilmakta olan cekirdekle, /dev/ram0 hala
bir surec tarafindan kullaniliyorsa ya da uzerinde bagli bir dosya
sistemi varsa, /dev/ram0 sistemden tamamen ayrilmaz. /dev/ram0
sistemden tamamen ayrilamamissa bellekte kalacaktir.
3. /dev/initrd kullanicilari yukaridaki notlarda belirtilen davranisa
bagimli olmamalidir. Bu davranis cekirdegin gelecekteki
surumlerinde degisebilir.
YAZAN
initrd aygitinin cekirdek kodu Werner Almesberger <almesber (at)
lrc.epfl.ch> ve Hans Lermen <lermen (at) elserv.ffm.fgan.de>
tarafindan yazilmistir. initrd kodu Linux cekirdeginin gelistirme
surumlerinden 1.3.73 surumunde cekirdek kaynak koduna dahil edilmistir.
,CEVIREN
Nilgun Belma Buguner <nilgun (at) belgeler.gen.tr>, Kasim 2003