/etc dizini sistem yapılandırma dosyalarını barındırır. İçeriği, hangi süreçlerin çalıştıracağınıza bağlı olarak değişir. Pek çok sistemde, bunlar, üç gruba ayrılır:
Herzaman gerekli olanlar: rc,
fstab, passwd, vs.
Gerekli olabilecek ama asla emin olamayacaklarınız.
May be required, but no one is too sure.
ıvır zıvır.
Gerekli olmayan dosyalar aşağıdaki komut ile tespit edilebilir:
Bu komut ile en son ulaşılan tarihten itibaren ters sıralama ile, bir dosya listesi görüntülenir. Böylece hiç erişim sağlanmamış dosyalar varsa, bunları gönül rahatlığı içinde yok sayabilirsiniz.
Benim kök disketimde, 15 taneden az ayar dosyam var. Böylece üç değişik türte dosya ile ilgilenmem gerekmekte ve yapmam gereken işler azalmakta:
önyükleme ve kök sistemi için mutlaka yapılandılmaları gerekenler:
rc.d/* -- sistem başlatma ve çalışma seviyesi değiştirme betikleri
fstab -- bağlanacak dosya sistemlerinin listesi
inittab -- init süreci için parametreler, açılış sırasında çalıştırılan ilk süreçtir.
gettydefs -- login süreci için parametreler, kullanıcının sistme girişinde çalıştırılır.
önyükleme ve kök sistemi için düzenlemem gerekenler:
passwd -- kullanıcıların, ev dizinlerinin, vs. bilgilerin bulunduğu önemli bir liste.
group -- kullanıcı grupları.
shadow -- kullanıcıların parolaları. Bunu dahil etmek zorunda değilsiniz.
termcap -- uçbirim yetenekleri veritabanı.
Şayet güvenlik önemli ise passwd ve shadow dosyaları iyice budanmalı, kullanıcı parolalarının kopyalanması önlenmeli ve gereksiz girdiler çıkarılmalıdır. Böylece disketten açılış yaparken istenmeyen kullanıcı girişleri reddedilir.
passwd dosyasında en azından
root kullanıcının bulunduğundan emin olun. Şayet diğer kullanıcıların da bağlantı yapmasını isterseniz, ev dizinlerinin ve kabukların sistemde var olduğundan emin olun.
termcap, uçbirim veritabanıdır ve yüzlerce kB'dır. Sizin önyükleme ve kök disketinizdeki sürümün, sadece işinize yarayacak olan uçbirimleri içerdiğinde emin olun: genellikle sadece linux veya linux-console girdisi yeterlidir.
Ve geriye kalanlar. O an çalışıyorlardı, bu yüzden onlara dokunmadım.
Bunların haricinde, gerçekte ayarlamam gereken sadece iki dosya var ve onlarda hayret verici bir şekilde küçükler:
rc şunları içermeli:
#!/bin/sh
/bin/mount -av
/bin/hostname Kangaroo
Çalıştırma izni olduğunda emin olun, tepesinde "#!" işareti bulunduğundan emin olun ve dosya isimlerinin doğru olduğundan da emin olun. Aslında hostname'i çalıştırmanız gerekmemekte —yaparsanız hoş olur, yapmazsanız hiçbir şey olmaz.
fstab en azından şunları içermeli:
/dev/ram0 / ext2 defaults
/dev/fd0 / ext2 defaults
/proc /proc proc defaults
Çalışan sisteminizdeki
fstab girdilerini buraya kopyalayabilirsiniz, fakat sabit diskinizdeki bölümleri özdevinimli olarak bağlamaya kalkışmayın.
noauto anahtar kelimesini bunların yanında kullanmayı unutmayın. Açılış disketini kullanmak zorunda kaldığınız durumlarda, sabit diskinizin kafası biraz karışmış olabilir.
inittab içindeki sysinit satırı, rc veya hangi temel betik kullanılacak ise, ona göre düzenlenmelidir. Ayrıca seri portlar üzerindeki kullanıcıların bağlanamayacaklarından emin olmak isterseniz, sonlarında ttys veya ttyS aygıtları içeren bütün getty satırlarının başına yorum işareti "#" getirin. tty portlarına dokunmayın ki, konsoldan bağlanabilesiniz.
En küçük yapıda
inittab dosyası şuna benzer:
id:2:initdefault:
si::sysinit:/etc/rc
1:2345:respawn:/sbin/getty 9600 tty1
2:23:respawn:/sbin/getty 9600 tty2
Bu inittab dosyası, sistemin değişik seviyelerde çalışabileceğini/başlatılabileceğini, çoklu kullanıcı kipine geçebileceğini, vs.. tanımlar. inittab içindeki isimleri dikkatlice kontrol edin. Şayet init, bu isimleri bulamazsa, sistem açılışı gerçekleşmez ve hatta bir hata iletisi bile alamayabilirsiniz.
Unutmayın ki bazı uygulamalar olmazsa olmazdır ve başka uygulamalar bunları yerlerini bilerek çağırdığından yerleri değiştirilemez. Örneğin; benim sisteminde,
/etc/shutdown /etc/reboot'u çalıştırdığından şayet
reboot'u
/bin/reboot'a taşırsam, bir
shutdown komutu,
reboot'u bulamayacağı için çalışmayacaktır.
İşin geri kalan kısmı,
/etc dizinindeki tüm metin dosyalarını ve gerekli olacağından emin olmasanız bile
/etc dizinindeki bütün çalıştırılabilir dosyaları kopyalamaktan ibarettir. Yardımcı olması açısından
Kök dosya sistemi listesi örneği içindeki örnek listeye göz atabilirsiniz. Muhtemelen buradaki dosyalar yeterli olacaktır ama sistemler arası farklılıklar olduğu için, buradaki dosyaların, sizin sisteminizdekiler ile aynı olduğunda emin olamazsınız. Emin olmanın tek yolu
inittab ile başlamak ve daha nelerin gerektiğini bulmaktır.
Pek çok sistem, değişik çalışma seviyelerine geçiş sağlayan kabuk betiklerini saklamak için /etc/rc.d/ dizinini kullanırlar. Asgari gereksinim tek bir rc betiğidir ama inittab ve /etc/rc.d dizinindekileri doğrudan diskete kopyalamak ve daha sonra bir disket ortamında işi olamayacak kabuk betiklerini temizlemek daha basit olabilir.