Kök dosya sistemi boyutunun küçültülmesi
Önceki Linux Açılış Disketi NASIL Sonraki
Kök dosya sistemi boyutunun küçültülmesi
Bu tür disket setleri yapmanın en zor tarafı, her şeyi bir veya iki diskete sığdırmak zorunda olmaktır. Dosyalar sıkıştırılmış bile olsalar, bu yine de zor bir iştir. Neden? Çünkü, Linux sistem araçları sürekli olarak artmakta. Aşağıda boyuttan tasarruf için kullanabileceğiniz bazı genel yöntemler açıklanmaktadır.
Disket kapasitesini artırın
Öntanımlı olarak, disketler 1440k olarak biçimlenir. Ama daha büyük disketler biçimlemek mümkündür. Daha büyük boyutlu disketler ile açılış yapabilmek BIOS'unuza bağlıdır. fdformat komutu, disketleri şu boyutlarda biçemleyebilir: 1600k, 1680k, 1722k, 1743k, 1760k, 1840k ve 1920k. Ayrıntılar için fdformat man sayfasına ve /usr/src/linux/Documentation/devices.txt dosyasına bakınız.
İyi de hangi disket boyutu/geometrisi sizin makinanızca desteklenecek? Aşağıda fdutils'in yazarı Alain Knaff'ın cevaplarını bulacaksınız (hafiften düzenlenmiş bir biçimde):
Bu olay, disket üzerine atılacak fiziksel biçimden ziyade BIOS ile alakalı bir durumdur. Şayet BIOS 18'den büyük sektör numaralarını bozuk olarak kabul ederse, yapılacak fazla birşey yok demektir. Gerçekte, deneme ve yanılma yöntemi elimizdeki tek yoldur. Bununla birlikte, BIOS ED diskleri destekliyorsa (ek yoğunluk: 36sektör/iz ve 2.88 MB), 1722k'lık disketler elde etme şansımız olabilir.
21 sektör/iz oranından daha fazlasına sahip süper biçimli disketler kendiliğinden açılabilir değildir. Aslında standart sektör boyutu yerine daha fazlasını kullanan disketlerin hiçbiri sistem açılışı yapamazlar. Bununla birlikte, özel bir önyükleme sektörü yazmak mümkündür. Şayet doğru hatırlıyorsam, DOS 2m aracı böyle bir "canavara" sahipti, tıpkı OS/2'nin XDF aracı gibi.
Bazı BIOS'lar "yalancıktan", 18'den büyük sektör numaralarının hata olması gerektiğini iddia ederler. 1722k'lık bir disket 21 sektör kullanır ve bu nedenle disket üzerinden açılış mümkün olmayacaktır. Bunu sınamanın en iyi yolu, bir DOS veya syslinus disketini 1722K olarak biçimlemek ve bu disketi önyükleme yapabilir yapmaktır. Şayet LILO kullanıyorsanız, linear seçeneğini kullanmayın. Bu seçenek öntanımlı olarak 18 sektör/iz kabul eder ve BIOS desteklese bile açılış işlemi başarısız olur.
Ortak araçları BusyBox ile değiştirin
Kök dosya sisteminin büyük kısmı GNU sistem araçları tarafından ortaklaşa kullanılır: cat, chmod, cp, dd, df, vs. BusyBox projesi, bu genel sistem araçlarını asgari gereksinimleri sağlayarak değiştirmek amacını gütmektedir. BusyBox, tek bir çalıştırılabilir dosya sağlar, /bin/busybox, yaklaşık 150kB civarındadır. Bu dosya, bu araçların görevlerini yerine getirir. Daha sonra, bu çalıştırılabilir dosyaya, değişik araçlardan sembolik bağlar yapabilirsiniz: busybox bunun nasıl adlandırıldığını görür ve doğru kodu çalıştırır. BusyBox basit bir kabuk bile içerir. BusyBox, pek çok dağıtım için, ikilik paketler halinde dağıtılmaktadır ve kaynak kodları BusyBox yöresinden elde edilebilir.
Başka bir kabuk kullanın
bash ve tcsh gibi bazı çok bilinen Linux kabukları oldukça büyüktür ve pek çok kütüphane isterler. Şayet BusyBox kabuğunu kullanmazsanız, bu kabuklar yerine bir başkasını kullanmayı düşünmelisiniz. Bazı hafif siklet kabuklar; ash, lsh, kiss ve smash oldukça küçük boyutludurlar ve çok az (ya da hiç) kütüphaneye ihtiyaç duyarlar. Bu kabukların pek çoğu http://www.ibiblio.org/pub/Linux/system/shells/ adresinden elde edilebilir. Kullandığınız kabuğun, rc dosyasındaki komutları çalıştırma yeteneği olduğundan emin olun.
Kütüphaneleri ve çalıştırılabilirleri soyun
Pek çok kütüphane ve çalıştırılabilir hata ayıklama bilgileri ile birlikte dağıtılmaktadır. Bu dosyalar üzerinde file komutunu kullandığınızda, bu böyleyse ``not stripped'' şeklinde bunu belirtecektir. İkilik dosyaları kök dosya sisteminize kopyalarken, aşağıdaki komutu kullanmak oldukça faydalı olacaktır:
objcopy --strip-all bir_yerden bir_yere
Önemli
Kütüphaneleri kopyalarken, strip-all yerine strip-debug kullanmalısınız.
Dosyaları uygulamalar disketine koyun
Şayet bazı ikilik dosyalar açılış veya sisteme giriş için gerekli değil ise, bunları başka bir uygulama disketine koyabilirsiniz. Ayrıntılar için Uygulamalar disketinin oluşturulması bölümüne göz atınız. Tabii ki modülleri de bir uygulama disketi içine koymayı düşünebilirsiniz.
Önceki Üst Ana Başlık Sonraki
Sorun çözmek ya da Yenilginin Acısı Başlangıç Çeşitli konular
Bir Linux Kitaplığı Sayfası