Debian hakkında konuşuyor gibisin.
Bu bunu geleneksel init sistemi kullanılarak varsa size her şeyi anlatır. özellikle:
İlk program olarak "/ sbin / init" programı yürütülür ve ana önyükleme işlemini gerçekleştirir. Debian normalde sysv-rc paketi ile birlikte geleneksel sysvinit programını kullanır. Tam açıklama için init (8), inittab (5) ve "/usr/share/doc/sysv-rc/README.runlevels.gz" başlıklarına bakınız. Bu ana önyükleme işlemi esas olarak aşağıdakilerden geçer.
Debian sistemi, "/ etc / inittab" tanımını izleyerek sistemi başlatmak için N (hiçbiri) çalışma seviyesine gider.
Debian sistemi, donanımın başlatılmasını vb. Tamamlamak için sistemi tek kullanıcı modunda başlatmak için S seviyesine gider.
Debian sistemi, sistem servislerini başlatmak için belirtilen çok kullanıcılı çalışma seviyelerinden birine (2 ila 5) girer.
Runlevel başına gerçekleşen şey, içerideki her şeyin /etc/rcX.d
alfabetik sıraya göre X
çalıştırma seviyesinin nerede olduğudır.
Öyleyse, bir sayı ile başlayan cd /etc/rcS.d
bir demet sembolik bağlantı göreceksiniz /etc/init.d
. Sayı, siparişi belirlemek için var. İle başlayan olanlar S
çalışma düzeyi girildiğinde yürütür ve olanları ile başlayan K
çalışma seviyesi çıkıldığında yürütülür. Runlevel "S" sadece başlatma için kullanılır, bu nedenle orada K
bağlantı yoktur.
Herhangi bir şeyi değiştirir veya yeniden adlandırırsanız, burada dikkatli olun. Kendinizi bir önyükleme işlemine maruz bırakmadan önce komut dosyalarınızı test ettiğinizden emin olun.
Tamam, soruyu şimdi yanıtlamaya çalışacağım, yukarıdaki bilgiler gerekli arka plan ile.
Debian'ın altında /etc/rc.S/S11mountall.sh
, "fstab'taki her şeyi monte et" önemli olan yer burasıdır. Ancak, fstab
kök dosya sistemini monte etmek için danışılır /etc/rc.S/S07checkroot.sh
.
Eğer kullanırsanız fstab
, yeni bir automout için /etc
de, everthing /etc/rc.S/S12*
ve daha yüksek ardından kullanacak /etc
senin "bindirme" biriminde. Bununla birlikte, /etc/fstab
önceden o anda kök hacminde geçerli olmanız gerekir .
/etc
Danışılması gereken diğer konular arasında /etc/hostname
muhtemelen ilgili olan bazı şeyler vardır udev
(ki bu çok önemlidir). /etc/rc.S/S11*
Tam olarak bilmek için tüm komut dosyalarına bakmanız ve daha düşük olması gerekir. /etc
Dış bir bölüme monte edilinceye kadar gerçekten hiç istemiyorsanız , bu komut dosyalarını değiştirmeye bakıyorsunuz. Büyük olasılıkla /etc/rc.S/S12mountall.sh
örneğin sırasını değiştirmek kadar basit olmayacak /etc/rc.S/S00mountall.sh
, ancak muhtemelen daha /etc
önce harici bir bölümden gelen yeni bir komut dosyası ekleyebilirsiniz .
Linux mount --bind
komutunu, kök birimin orijinalini , daha önce danışılan diğer dosyalarda veya değişikliklerde değişiklik yaparken kopyalamak üzere bir /etc
yere (gibi /etc_from_rootfs
) monte etmek için kullanabilirsiniz . fstab
/etc/rc.S/S12mountall.sh
Linux çekirdeği, Windows'un önyükleme öncesinde ve sırasında kayıt defterinin varlığını kullanmak ve kullanmak için gereken işlemleri yapmaz. Çekirdek kendisi iyi bir şekilde önyükleme yapacaktır (ancak örneklerin% 99'unda korkunç derecede kullanışsız) /etc
, ancak iyi bir kullanıcı ortamına hazırlanmak için sonradan (sonradan başlayarak init
) çağrılan kullanıcı programlarına bağlıdır /etc
.
Ses karmaşık mı? Bu nedenle, @MattDMo dinlemenin büyük olasılıkla sağduyulu olmasıdır.
/etc/fstab
hiçbir şey için kullanmaz . Takılan/
(ve sık sık/usr
) ve initramfs/
geri kalanı bağlayan initramflerdir .