| |||||||
SquashFS'in internet adresi http://squashfs.sourceforge.net/dir. Bu adreste SquashFS hakkında genel bilginin yanı sıra yeni sürüm hakkında bilgileri ve değişiklikleri de bulmak mümkündür. Son sürümü SourceForge'dan indirilebilir.
SquashFS LZMA sıkıştırmasıyla birlikte de kullanılabilmektedir: http://www.squashfs-lzma.org/
SquashFS'in okunabilmesi için tıpkı reiserfs ve ext3 dosya sistemleri gibi çekirdek tarafından desteklenmesi gereklidir. Bunun için kendi çekirdek sürümünüze uygun bir yamanın bulunduğundan emin olmalısınız. Bu yama SquashFS kaynak dizininde kernel-patches/linux-2.x.y alt dizininde bulunur. Bir çok durumda kernel.org'dan indireceğiniz orjinal Linux kaynak koduna da ihtiyacınız olacaktır. Çünkü eğer bir datıtımın çakirdeğini kullanırsanız büyük ihtimalle kullandığınız çekirdek daha önceden yamalanmış olacağından ve SquashFS yamaları orjinal çekirdek için yazıldığından SquashFS yaması çalışmayacaktır. Bununla birlikte bazı dağıtımların SquashFS-çekirdek-modülleri ve SquashFS-tools paketleri depolarında bulunabilmektedir. Eğer dağıtımınızın ilgili paketlerini kullanacaksanız çekirdeğe yama uygulamanıza ya da SquashFs araçlarını kaynak koddan derlemenize gerek yoktur. Bu durumda dağıtımınızın deposundan uygun çekirdek modülünü almanız yeterli olacaktır. Eğer bu yöntemi seçerseniz kolay bir kurulum süreci yaşacağınızı ama SquashFS'i özel amaçlarla (gömülü sistemler gibi) kullanmak istemeniz durumunda çekirdek yapılandırma parametreleri üzerinde hiç bir kontrolünüzün olmayacağını unutmayın.
Çekirdeğin kaynak kodu ve uygun SquashFS yaması elinizdeyse (buradan sonra çekirdek kaynak kodunun /usr/src/linux ve SquashFS kaynak kodunun /usr/src/squashfs dizinlerinde olduğunu kabul edeceğiz) yapmanız gerekenler sırasıyla
SquashFS kaynak kodununun bulunduğu dizine geçerek çekirdek yamasını (yamanın squashfs-patch adında olduğunu kabul edeceğiz) /usr/src/linux dizinine kopyalayın;
bash# cd /usr/src/squashfs bash# cp linux-2.x.y/squashfs-patch /usr/src/linux |
Linux çekirdeği kaynak dizinine geçin;
bash# cd /usr/src/linux |
![]() | Not |
|---|---|
| Çekirdekle ilgili bütün işlerimizi bu dizinde yapacağımızdan bütün yollar /usr/src/linux dizinine göre verilecektir. | |
Şimdi çekirdeğe SquashFS yamasını uygulayın;
bash# patch -p1 < squashfs-patch |
Çekirdeğin kaynak kodunu derlenmeye hazırlayalım.
bash# make distclean bash# make mrproper |
Tercih ettiğiniz yöntemle (config/menuconfig/xconfig/gconfig) çekirdeği yapılandırın.
bash# make menuconfig |
Artık çekirdeği ve modülleri derleyebilirsiniz.
bash# make |
Çekirdeği yapılandırın;
bash# make menuconfig |
Artık çekirdeği ve modülleri derleyebilirsiniz.
bash# make dep bash# make bzImage bash# make modules |
Artık SquashFS'e hazır çekirdeğimizi kurmanın zamanı geldi. Aşağıdaki adımlar konak bilgisyara çekirdeği kurmak ve başlatmakla ilgilidir, dehef ssteme kurup test etmeyi isteyebilirsiniz.
Çekirdeğinizin x86 mimarisi için derlendiğini ve sıkıştırılmış çekirdek görüntüsünün arch/i386/boot/ dizininde bulunduğunu kabul edeceğiz. İlk olarak çekirdeği /boot dizinine kopyalayın (eğer isterseniz anlışlması kolay olsun diye bzImage-sqsh olarak isimlendirebilirsiniz).
bash# cp arch/i386/boot/bzImage /boot/bzImage-sqsh |
Eğer varsa modülleri yüklemeyi unutmayın.
bash# make modules_install |
Önyükleyicinizin (lilo, grub vb.) yapılandırma dosyasını yeni çekirdeğinizle başlatabilecek şekilde güncelleyin ve gerikiyorsa öntükleyicinizi güncelleyin. Artık bilgisayarınızı yeniden başlatabilirsiniz. Açıldıktan sonra her şeyin yolunda olup olmadığını kontrol edin.
bash# cat /proc/filesystems |
Eğer SquashFS modül olarak derlenmişse
bash# insmod squashfs bash# cat /proc/filesystems |
Eğer diğer dosya sistemlerinin yanıda squashfs içeren bir satır görüyorsanız bu çekirdeğinize başarıyla SquashFS desteğiverdiğiniz anlamına gelir.
Sırada sıkıştırılmış dosya sistemi oluşturmanızı sağlayacak olan mksquashfs ve buradan dosyaların açılmasına yardımcı olacak unsquashfs araçlarının derlenmesi var.
bash# cd /usr/src/squashfs/squashfs-tools |
Araçları derleyin ve kurun;
bash# make bash# cp mksquashfs /usr/sbin bash# cp unsquashfs /usr/sbin |
Her şey yolunda gitmişse konsoldan mksquashfs ve unsquashfs komutlarını çalıştırdığınızda nasıl kullanılacakları ile ilgili yönergeleri görüyor olmalısınız.
Eğer Debian (ya da başka bir dağıtım) kullanılıyorsanız, SquashFS modülünü ve arçlarını dağıtımın deposundan kurmak isteyebilirsiniz. Debian'da uygun çekirdek modülünü ve araçlarını aşağıdaki komutlarla kurmanız gerekir (mimarinizin x86 olduğu varsayımıyla):
bash# apt-get install squashfs-modules-2.6-486 squashfs-tools |
Çekirdek için squashfs modülünü yüklediğinizde aşağıdakine benzer bir satır görmelisiniz.
bash# modprobe squashfs bash# lsmod|grep squash squashfs 39620 0 |
Eğer squashfs modülünün açılışta yüklenmesini istiyorsanız /etc/modules dosyasına yazmanız gerekir.
bash# echo squashfs >> /etc/modules |
Bu belge yezıldığında Debian (Etch. 4.0 r2) paket deposunda squashfs 3.1 vardı. Bu yüzden 3.2 sürümüyle birlikte gelen bazı özellik ve seçenekler desteklenmiyor olabilir. Ayrıntılar için bir sonraki bölüme bakın.
| ||||||||||