Vad är filformatet SFS?
En .sfs-fil är en skrivskyddad komprimerad filsystemsavbildning av typen Squashfs, som oftast hittas som live-rotfilsystemet inuti Linux Live CD- och USB-distributioner. Linux-kärnan kan montera .sfs-avbildningar direkt med mount -t squashfs, och kommandot unsquashfs (från paketet squashfs-tools) extraherar alla filer utan montering.
Squashfs packar ett helt katalogträd till en enda komprimerad binär avbildning. Ett 96-byte superblock i början identifierar formatet - magic bytes hsqs (little-endian) eller sqsh (big-endian) - och registrerar komprimeringsalgoritm, blockstorlek och tabellförskjutningar för inoder, kataloger och fragmentdata. Filer lagras i oberoende komprimerade block, vilket möjliggör slumpmässig åtkomst utan att hela avbildningen behöver dekomprimeras.
Flera komprimeringsalgoritmer stöds och väljs vid skapandet: gzip (original), lzma, lzo, xz, lz4 och zstd. Modern mksquashfs använder xz som standard för bästa förhållande; inbäddad firmware använder ofta lzo för snabbare dekomprimering på hårdvara med låg effekt.
Linux Live ISO-filer (Ubuntu, Fedora, Kali Linux) bäddar in rotfilsystemet som filesystem.squashfs eller filesystem.sfs inuti en .iso-container. Android använder Squashfs för /system-partitioner. OpenWrt-routrar och IP-kameror lagrar firmware i Squashfs. Filändelsen .squashfs används också i stor utsträckning för samma format.
- Squashfs skapades av Phillip Lougher 2002 och slogs samman med Linux-kärnan i version 2.6.29 (mars 2009).
- EROFS (sammanslaget i Linux 5.4, 2019) är den moderna efterföljaren för Android och inbäddade system.
mksquashfsskapar avbildningar;unsquashfsextraherar dem; båda finns i paketetsquashfs-tools.
Säkerhet & trygghet
RISK: LOWSquashfs-avbildningar är filsystemshållare - samma säkerhetsöverväganden gäller som vid montering av vilken diskavbildning som helst: de extraherade filerna kan innehålla skadliga körbara filer eller symlink-attacker. Vid montering med «mount -o loop», använd en skrivskyddad montering (redan standard för Squashfs). Extrahera med unsquashfs och inspektera innan du kör några binärer. Firmware-avbildningar från inofficiella källor kan innehålla bakdörrar.
Formatdetaljer
i ett nötskal- Puppy Linux SFS-modul - Puppy Linux använder .sfs specifikt för modulära tilläggspaket som läggs ovanpå bassystemet.
- StarCraft/Blizzard-arkiv (inofficiell) - Vissa Blizzard-speldatafiler namngavs historiskt med .sfs men är ett helt annat proprietärt format.
Program som öppnar SFS-filer
Tekniska detaljer
djup specifikation| Filsignatur | 68 73 71 73 («hsqs», little-endian) vid offset 0; big-endian variant: 73 71 73 68 («sqsh») |
| Superblock-storlek | 96 bytes - fast; innehåller magic, version, inod-antal, blockstorlek, komprimeringstyp och tabellförskjutningar |
| Filsystemstyp | Skrivskyddat komprimerat - inget skrivstöd när det väl skapats; montera om som overlay för live-system |
| Komprimeringsalternativ | gzip, lzma, lzo, xz/lzma2, lz4, zstd - valbart vid mksquashfs-skapande |
| Standardkomprimering | xz i modern mksquashfs; gzip i äldre versioner; lzo vanligt i inbäddad firmware |
| Blockstorlek | 4 KB - 1 MB (konfigurerbar vid skapande; standard 128 KB) |
| Version på disk | Squashfs 4.0 (2009); versionsfält vid superblock byte-offset 28 |
| Integritet | Ingen kontrollsumma per fil; CRC på inod- och katalogmetadatablock i v4.0 |
| Typisk avbildningsstorlek | 4-64 MB (inbäddad firmware); 400-900 MB (Linux Live ISO rotfilsystem) |
| Maximalt antal filer | ~4 miljarder (gräns för 32-bitars inod-nummer) |
| Byte-ordning | Little-endian (värd-nativ); big-endian variant finns för äldre inbäddade system |
| Verktyg för skapande | mksquashfs (paketet squashfs-tools) |
| Verktyg för extraktion | unsquashfs (squashfs-tools); 7-Zip på Windows |
| Vanliga användningsområden | Linux Live ISO rotfilsystem, Android /system-partitioner, OpenWrt-router och IP-kamera firmware |
| Släppt | 2002 (Squashfs 1.0 by Phillip Lougher) |
| Senaste version | Squashfs 4.0 (2009, merged into Linux kernel 2.6.29) |
| Öppen standard | Ja · royaltyfri |
| Specifikation | docs.kernel.org |
SFS-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om SFS-filer.