2010-05-10 46 views
5

(Squashfs的是一個壓縮文件系統 - http://en.wikipedia.org/wiki/SquashFS讀一Squashfs的歸檔

我正在尋找一種方法來讀取一個程序的squashfs文件系統。到目前爲止,我已經知道它的內核驅動程序,但是我確定它的用戶空間庫必須存在。任何語言都可以,但C是首選。

只要安裝文件系統並以這種方式使用它在技術上是可行的,但我寧願避免這種路由,因爲我所看到的應用程序在任何時候都會涉及至少幾十個檔案。

回答

4

我剛剛從squashfs.sourceforce.net下載了代碼tarball,並且在那裏沒有內核代碼。 C中只有用戶區代碼mksquashfsunsquashfs

你也許可以從unsquashfs中提取代碼。

+0

SquasFS驅動程序已經成爲很快被2.6.34 – 2010-05-10 21:09:55

4

有一個叫做unsquashfs的工具,它提取類似於tar的squashfs圖像。它應與mksquashfs

0

mksquashfsunsquashfs打包爲我的Red Hat系統「的squashfs工具」捆綁:

Name  : squashfs-tools 
Group  : System Environment/Base 
Size  : 160923 
URL   : http://squashfs.sf.net 
Summary  : squashfs utilities 
Description :

Squashfs的是Linux高度壓縮的只讀文件系統。此包 包含用於操作squashfs文件系統的實用程序。

/sbin/mksquashfs 
/usr/sbin/unsquashfs 
/usr/share/doc/squashfs-tools-3.0 
/usr/share/doc/squashfs-tools-3.0/ACKNOWLEDGEMENTS 
/usr/share/doc/squashfs-tools-3.0/CHANGES 
/usr/share/doc/squashfs-tools-3.0/COPYING 
/usr/share/doc/squashfs-tools-3.0/PERFORMANCE.README 
/usr/share/doc/squashfs-tools-3.0/README 

被警告,擠壓和unsquashing是痛苦的緩慢。我寫的腳本需要幾分鐘的時間才能解密,修改和重新壓縮一個87M的stage2.img文件。

1

我有一些Ruby代碼即會做到這一點:https://github.com/vasi/squash.rb

這是相當粗糙,但它工作正常。也許我有一天會把它變成一個設計得更好的C庫。