Squashfs-ben file módosítása

Fórumok

Hello!

Adott egy squashfs image( http://clonezilla.org/ ), amelyet PXE-ről bootolok. Egyébként ez egy testreszabott Debian Live.

A squashfs-ben egy konfigfile-t szeretnék módosítani, ehhez letöltöttem a saját gépemre, és kicsomagoltam a file-t:

unsquashfs filesystem.squashfs

Ekkor létrejön egy squashfs-root könyvtár, benne a kicsomagolt filerendszerrel. Elvégzem a módosításokat, majd:

mksquashfs squashfs-root filesystem.squashfs

Az ekkor keletkezett file-t visszatöltöm a szerverre, majd bootolok PXE-ről, ekkor a squashfs mountolásakor elakad: http://kepfeltoltes.hu/090128/dscf2879_www.kepfeltoltes.hu_.jpg

Utána kipróbáltam úgy is, hogy semmit nem módosítok, akkor is ugyanez a hibajelenség.

A szerver egy Debian Etch, amin nem sikerült a squashfs-t kitömöríteni:

# unsquashfs filesystem.squashfs
Major/Minor mismatch, filesystem on filesystem.squashfs is (3:1)
I only support Squashfs 3.0 filesystems!  Later releases will support older Squashfs filesystems

A módosítás nélkül, csak ki, majd becsomagolt filerendszernek eltér a mérete is:

-rwx------  1 root    root    84520960 jan 28 18.00 filesystem.squashfs
-rwx------  1 root    root    83611648 nov 12 04.23 filesystem.squashfs_old

Mi lehet a probléma?

Hozzászólások

"Major/Minor mismatch, filesystem on filesystem.squashfs is (3:1)
I only support Squashfs 3.0 filesystems!"
Az általad használt Debian Live nem támogatja az újabb (3.1-es) verziójú squashfs fájlrendszert.
Próbálj meg 3.0-ás verziójú fájlrendszert csinálni valahogyan, vagy használj újabb Debian Live-ot ami már ismeri a 3.1-es squashfs-t!

Nem a live nem támogatja, hanem a szerver, amelyikről PXE-vel bootolok. De annak nem is kell támogatnia, hiszen ő nem is fogja kitömöríteni, nem ő futtatja, ő csak NFS-en kiszolgáltatja azt. A live rendszer, amit bootolok PXE-ről, az viszont támogatja, hiszen működik vele.

A kérdésem az, hogy egy újabb rendszren (friss lenny) ha kitömörítem a squashfs-t, majd utána rögtön be, akkor miért romlik el? Talán az mksquashfs nem olyan verziójú squashfs-t készít, mint amit előtte kicsomagoltam unsquashfs-el? (Nem találom az én rendszeremen lévő mksquashfs és unsqashfs manualjában, hogy hogyan lehet megadni a verziót)

Petya

A kerneled nem támogatja a 3.1-es squashfs-t. Próbálj frissebb kernellel bootolni.

A 3.0-ás fájlrendszert kitömöríted, és utánna 3.1-eskén tömöríted vissza, attól "romlik el". Az mksquashfs -nek és nem tudok megadni verziót (valószínüleg nem is lehet). Ha ragaszkodsz a kerneledhez, akkor telepíts fel egy régebbi verziójú mksquashfs-t.

Valami itt nem kerek.

Az etch-es szerver nem tudja kitömöríteni az image-et, mert az 3.1-es, és ő csak 3.0-ast tud. (squashfs-tools és a kernelmodul verzió 3.1)

Az én lenny desktopom ki tudja tömöríteni (oké, írta is hogy a későbbi verzió tudni fogja a 3.0-t is, squashfs-tools és a kernelmodul verzió 3.3), viszont amikor visszatömöríti, akkor 3.1-est csinál alapból(?). De akkor hol a probléma, eredetileg is olyan volt...továbbra sem értem, miért nem megy.

Hogyan lehet megnézni egy squashfs image verzióját?

Petya

Köszönöm!

# file filesystem.squashfs
filesystem.squashfs: Squashfs filesystem, little endian, version 3.1, 84519418 bytes, 10846 inodes, blocksize: 131072 bytes, created: Wed Jan 28 22:02:07 2009
# file filesystem.squashfs_old
filesystem.squashfs_old: Squashfs filesystem, little endian, version 3.1, 83607746 bytes, 10846 inodes, blocksize: 1048576 bytes, created: Wed Nov 12 04:23:47 2008

Ezekszerint a verzióval nincs gond, csak a blokkméret különbözik. Megpróbálom 1048576-es blokkmérettél létrehozni.

Petya