全部博文(685)
分类: 嵌入式
2014-10-11 10:54:39
squashfs 是眾多Live CD使用的檔案系統,Why?因為它那嚇死人的壓縮率,舉個例子,以筆者製做的root file system為例,壓縮過後的initial ram disk大小為1.3MB,但squashfs製做出來的file system image只有500多k,squashfs image居然只有compressed initial ram disk image一半的容量,這種節省儲存空間和記憶體空間的檔案系統,最適合在台灣用了,因為代工廠最需要的cost down,這種軟體技術做到了在小容量記憶體系統中放大檔案的可能性
可惜目前Linux-2.6.26還沒有支援squashfs,所以必需去patch kernel才能使用,首先至,目前最新的版本是3.4,解壓縮後,參照以下指令執行patch
然後編譯製作squafs file system image的工具
會得到兩支執行檔mksquashfs和unsquashfs,mksquashfs是製做映像檔的工具,unsquashfs可解壓縮印像檔並查看內容,詳細的使用方法請參考
製做squashfs檔案系統的指令很簡單,用法大致如下
kernel command line請修改為” mem=64M console=ttySAC0 initrd=0x32000000,2000000 root=/dev/ram0 rootfstype=squashfs”,這裡的範例是根據QT2410設定的,假設我們把squashfs image下載到板子上的0x32000000且其大小為2MB,rootfstype為squashfs,kernel開機完會mount /dev/ram0的squasfs image,可參考如下圖片