Souborový systém FAT a Linux - FAT filesystem and Linux
Linux má několik souborový systém ovladače pro Tabulka alokace souborů (FAT) formát souborového systému. Ty jsou běžně známé pod jmény používanými v připojit
příkaz k vyvolání konkrétních ovladačů v jádře: msdos, vfat, a umsdos.[1][2]
Historie a podpora
Většina hlavních distribucí Linuxu, včetně RedHat, SuSE a Debian, se nepoužívá umsdos povolit instalaci Linuxu na svazek disku FAT. Několik distribucí to však dělá.[3] Patří mezi ně distribuce, jako je Phat Linux, který se instaluje do C: PHAT
na DOSu rozbalením a ZIP soubor a je spuštěn spuštěním a COMMAND.COM pojmenovaný skript LINUX.BAT
,[4] a ZipSlack[Citace je zapotřebí ].
Projekt UMSDOS zahájil v roce 1992 Jacques Gelinas a síti byl zpřístupněn v lednu 1994 jako oprava. Byl zahrnut do standardní distribuce počínaje jádrem 1.1.36.[Citace je zapotřebí ] UMSDOS byl odstraněn z jádra Linux 2.6.11 pro nedostatek údržby.[5] UVFAT, rozšíření systému UMSDOS k použití datových struktur Windows pro dlouhé názvy souborů místo jeho vlastních, bylo před vydáním ukončeno.[6] Měli by pracovat v jádrech 2.4.x.[Citace je zapotřebí ]
Dřívější distribuce Linuxu, které používaly UMSDOS, jsou MuLinux,[7] Monkey Linux[8] a Winlinux 2000.[9]
Porovnání funkcí
Všechny ovladače systému souborů Linux podporují všechny tři typy FAT, jmenovitě FAT12, FAT16 a FAT32. Liší se v poskytování podpory pro dlouhé názvy souborů, za 8.3 název souboru struktura původního formátu souborového systému FAT a při zajišťování sémantiky unixových souborů, které neexistují standardně ve formátu souborového systému FAT, jako je oprávnění souboru.[1] Ovladače souborového systému se vzájemně vylučují. K připojení libovolného daného svazku disku lze kdykoli použít pouze jeden. Volba mezi nimi tedy závisí na tom, jaké dlouhé názvy souborů a sémantiku Unixu podporují a jaké využití chce mít objem disku.[10]
msdos
The msdos Ovladač souborového systému neposkytuje žádnou další sémantiku unixových souborů a žádnou podporu dlouhého názvu souboru. Pokud je pomocí tohoto ovladače připojen diskový souborový systém FAT, budou viditelné pouze názvy souborů 8.3, nebudou přístupné žádné dlouhé názvy souborů ani nebudou zachovány žádné datové struktury dlouhých souborů jakéhokoli druhu na svazku disku. The vfat Ovladač souborového systému poskytuje podporu dlouhého názvu souboru se stejnými datovými strukturami disku jako Microsoft Windows používá pro VFAT dlouhá podpora názvů souborů na svazcích formátu FAT, ale nepodporuje žádnou další sémantiku souborů Unix. The umsdos Ovladač souborového systému poskytuje dlouhou podporu názvů souborů a extra sémantiku souborů Unix. Činí tak však pomocí datových struktur na disku, které nerozpoznají žádné ovladače souborového systému pro jiné operační systémy než Linux.[1][2][10][11]
umsdos
Klíčovou výhodou pro umsdos ze tří je to, že poskytuje plnou sémantiku souborů Unixu. Proto jej lze použít v situacích, kdy je žádoucí instalovat Linux a spouštět jej ze svazku disku FAT, což vyžaduje dostupnost takové sémantiky. Linux nainstalovaný na takovém svazku disku a běžící z něj je však pomalejší než Linux nainstalovaný na svazku disku naformátovaném například ext2 formát souborového systému.[1][12] Dále, pokud není obslužný program pravidelně spuštěn pokaždé, když přepnete ze systému Windows na systém Linux, určité změny provedené v souborech a adresářích na disku systémem Windows způsobí chybové zprávy o nepřístupných souborech v systému Linux.[4]
vfat
vfat, i když postrádá plnou sémantiku souborů Unixu a nemá schopnost instalovat Linux na běh ze svazku disku FAT, nemá výše uvedené nevýhody umsdos pokud jde o jednoduché sdílení dat na svazku disku FAT mezi Linuxem a dalšími operačními systémy, jako je Windows. Jeho datové struktury jsou stejné jako ty, které používá Windows pro dlouhé názvy souborů VFAT, a nevyžaduje spuštění synchronizačního nástroje, aby se zabránilo odpojení datových struktur Windows a Linux. Z tohoto důvodu je ve většině situací nejvhodnější použít linuxové ovladače souborového systému FAT.[1][10][4]
FS-Driver | dlouhé názvy souborů | Unixová sémantika souborů | Komentář |
---|---|---|---|
msdos | Ne | Ne | 8.3 pouze názvy souborů |
vfat | Ano | Ne | používá stejné datové struktury, které používá Windows |
umsdos | Ano | Ano | může hostovat Linux; může vyžadovat údržbu při přepínání OS |
Commonalities
Jak již bylo zmíněno dříve, všechny ovladače systému souborů Linux podporují všechny tři velikosti tabulky přidělení souborů, 12bitovou, 16bitovou a 32bitovou. Mezi další běžné funkce, které všichni podporují, patří různé možnosti připojení Linuxu (specifikované v -Ó
možnost k připojit
příkaz):[10][3]
uid
agid
- Tyto dvě možnosti říkají ovladači souborového systému, aby nastavil (výchozí v případě umsdos) ID uživatele vlastníka a ID skupiny jako jediná zadaná hodnota pro všechny soubory ve svazku. Oba ID jsou specifikovány jako číselné hodnoty (najdete v
/ etc / passwd
soubor). Tak například specifikovat na vfat ovladač souborového systému, že všechny soubory a adresáře mají mít ID vlastníka 745 a ID skupiny 15,připojit
příkaz bude vyvolán jakomount -t vfat -o uid=745, gid=15
.[10][3] Ovladače souborového systému Linux v současné době neobsahují podporu pro hesla k souborům / adresářům na svazcích FAT12 / FAT16 / FAT32 a pro více uživatelů svět / skupina / vlastník přístupová oprávnění pro práva ke čtení / zápisu / mazání / provádění na svazcích FAT12 / FAT16 implementovaných v různých operačních systémech rodiny Digital Research, včetně DR-DOS, PalmDOS, Novell DOS, OpenDOS, FlexOS, Souběžný DOS, Multiuser DOS, Správce systému a SKUTEČNÉ / 32. umask
- Tato možnost nastavuje umask aplikovat globálně na všechny soubory ve svazku. Například k určení vfat ovladač souborového systému, ke kterému není povolen žádný přístup "skupiny" nebo "jiného",
připojit
příkaz bude vyvolán jakomount -t vfat -o umask=077
.[10][3] konv
- Tato možnost určuje převod obsahu souboru sémantika. Ovladače souborového systému je možné převádět konvence nového řádku v souborech, mezi ukončením LF a ukončením CRLF, za běhu, když jsou soubory čteny a zapisovány. Ve výchozím nastavení je tento převod zcela zakázán. Ovladače souborového systému mohou u některých souborů provádět převod a pokoušet se o automatickou detekci souborů, které se mají převést, na základě příponové části názvu souboru nebo globálně pro všechny soubory. Tyto tři úrovně převodu jsou specifikovány jako
conv = b
(pro „binární“),conv = a
(pro „automatickou detekci“) aconv = t
(pro „text“). Poslední dvě možnosti nesou inherentní riziko poškození dat netextového souboru. Výchozí je vůbec žádná konverze.[10][3]
umsdos
Datová struktura
The umsdos Ovladač souborového systému FAT ukládá všechny další informace týkající se sémantiky souborového systému Unix do toho, co se pro jiný ovladač souborového systému FAT jeví jako normální soubor v každém adresáři a podadresáři s názvem --LINUX -.---
.[1][10][4][3][13]
Při absenci tohoto souboru v daném adresáři, a tedy ve výchozím nastavení, umsdos Ovladač souborového systému poskytuje stejnou sémantiku jako souborový systém msdos Ovladač souborového systému dělá pro adresář: pouze názvy souborů 8,3 a žádná další sémantika souborů Unix. Chcete-li povolit umsdos pro extra schopnosti ovladače je nutné vytvořit tento soubor v adresáři a synchronizovat jeho interní data s normálními daty FAT pro všechny existující položky již v adresáři. To se provádí pomocí nástroje s názvem umssync
.[1][10][4]
Toto je obslužný program, který se spouští ve všech adresářích na svazku disku pokaždé, když se přepne ze systému Windows na systém Linux, aby umsdos ovladač souborového systému, který zahrnuje všechny změny provedené v souborech a adresářích Windows do jeho soukromých datových struktur v jeho --LINUX -.---
soubor. Ve výchozím nastavení je umssync
nástroj vytvoří --LINUX -.---
soubory v adresářích, pokud ještě neexistují, což má za následek takový soubor v každém adresáři na svazku disku. Při přepínání mezi systémy Windows a Linux není toto chování často považováno za žádoucí. Proto je při vyvolání normální provozní režim umssync
po přechodu z Windows na Linux (což se obvykle provádí spuštěním nástroje v době spuštění Linuxu ze spouštěcího skriptu) je použít -C
možnost příkazu, která zabrání vytvoření jakéhokoli nového --LINUX -.---
soubory v adresářích, které je ještě nemají.[1][10][4]
Instalace Linuxu na FAT
Jak bylo zmíněno, umsdos umožňuje instalaci systému Linux na svazek disku ve formátu FAT a jeho následné spuštění a spuštění. Výhodou je, že umožňuje použití Linuxu na počítači, kde DOS je již nainstalován, aniž by bylo nutné instalovat pevný disk rozdělené na oddíly. Linux není bootstrapován přímo z Volume Boot Record v takovém scénáři. Místo toho je DOS nejprve bootstrapován a loadlin nebo linld se používá k zavedení systému Linux ze systému DOS.[4]
Konvence pro takovou instalaci je pro Linux kořenový adresář být podadresářem kořenového adresáře systému DOS spouštěcí svazek, např. C: LINUX
. Různé linuxové adresáře nejvyšší úrovně jsou tedy pro DOS adresáře jako C: LINUX ETC
(pro /atd
), C: LINUX BIN
(pro /zásobník
), C: LINUX LIB
(pro / lib
), a tak dále. The umsdos ovladač souborového systému automaticky předchází C: LINUX
ke všem cestám. Umístění kořenového adresáře Linuxu je zadáno do umsdos ovladač souborového systému na prvním místě prostřednictvím možnosti na loadlin
příkaz. Například loadlin
by bylo vyvoláno příkazovým řádkem, jako je loadlin c: linux boot vmlinuz rw root = c: linux
.[4][13]
Instalace Linuxu do takového adresáře na prvním místě jednoduše zahrnuje rozbalení souborů z archivu do tohoto adresáře a jeho podadresářů. Taková instalace také obecně vyžaduje použití a odkládací soubor spíše než a vyměnit oddíl pro Linux to však souvisí s touhou nerozdělit pevný disk a nesouvisí s umsdos ovladač souborového systému jako takový.[4]
Přístup ke svazkům formátovaným FAT bez podpory jádra
Ačkoli ovladače souborového systému v jádře umožňují běžný přístup k souborům a adresářům na svazcích formátovaných FAT, je to možné také bez podpory ovladačů jádra pomocí obslužných programů, které tvoří nástroje sada nástrojů. Jako vfat Ovladač souborového systému FAT, mtools poskytuje podporu dlouhého názvu souboru se stejnými datovými strukturami disku, jaké používá Microsoft Windows.[3][14][15]
Alternativně jeden z POJISTKA Lze použít ovladače souborového systému - FatFuse, FuseFat nebo mountlo.[16]
Překryvný souborový systém POSIX
Novodobým ekvivalentem UMSDOS je POSIX Overlay Filesystem (posixovl). Funguje to ve FUSE.[17]
Viz také
- DMSDOS (DoubleSpace / DriveSpace / Stacker kompatibilní komprimované svazky FAT pro Linux)
- Návrh systému souborů FAT
Reference
- ^ A b C d E F G h Stanfield, Vicki; Smith, Roderick W. (2002). Správa systému Linux. Craig Hunt Linuxová knihovna (2. vydání). John Wiley and Sons. p. 166. ISBN 978-0-7821-4138-2.
- ^ A b Ward, Brian (2004). Jak Linux funguje: co by měl každý superuživatel vědět. Žádná řada lisů na škrob. Žádný lis na škrob. p. 41. ISBN 978-1-59327-035-3.
- ^ A b C d E F G Smith, Roderick W. (2000). Příručka konfigurace multi-boot. Série příruček. Que Publishing. str.256, 341–342. ISBN 978-0-7897-2283-6.
- ^ A b C d E F G h i McCune, Mike (2001). Integrace Linuxu a Windows. Řada technologií s otevřeným zdrojovým kódem. Prentice Hall PTR. str.7–9. ISBN 978-0-13-030670-8.
- ^ „Souhrn změn z verze 2.6.10 na verzi 2.6.11“. www.kernel.org. Citováno 2017-11-15.
- ^ „Souborový systém UMSDOS: podpora UVFAT“. linux.voyager.hr. Citováno 2015-07-16.
- ^ Projekt MuLinux
- ^ Monkey Linux vysvětlil
- ^ Kombinace Linux / Windows: Použijte tyto prostředky, aby to fungovalo
- ^ A b C d E F G h i j Roderick W. Smith (2005). Linux ve světě Windows. O'Reilly Media, Inc. p. 449. ISBN 0-596-00758-2.
- ^ Negus, Christopher (2007). Linuxová bible: spusťte Ubuntu, Fedoru, KNOPPIX, Debian, SUSE a dalších 11 distribucí. Biblická série. John Wiley and Sons. str.159. ISBN 978-0-470-08279-9.
- ^ Strobel, Stefan; Elling, Volker (1997). Linux, uvolnění pracovní stanice ve vašem PC. Kompletní sada pro Linux, Rainer Maurer (3. vydání). Springer. p. 43. ISBN 978-0-387-94880-5.
- ^ A b Danesh, Arman (2002). Aby Linux fungoval: základní tipy a techniky. Série tipů 1001. Cengage Learning. str.19. ISBN 978-1-884133-78-7.
- ^ Rajagopal, Raj (2000). Sítě s více operačními systémy: život v Unixu, Netware a NT. Série osvědčených postupů Auerbach. CRC Press. str.25–21. ISBN 978-0-8493-9831-5.
- ^ Welsh, Matt (2003). Spuštěn Linux. Základní průvodce Linuxem (4. vydání). O'Reilly Media, Inc. p. 405. ISBN 978-0-596-00272-5.
- ^ "POJISTKA: NonNativeFileSystems". Archivovány od originál dne 2015-09-15.
- ^ http://sourceforge.net/projects/posixovl/
Další čtení
- Gelinas, Jacques (2001-12-01). „POSTUPY UMSDOS“. 1.2. Dokumentační projekt Linuxu. Citovat deník vyžaduje
| deník =
(Pomoc) - Stránka vývojáře UMSDOS
- Nová oprava Linuxu by mohla obejít patenty FAT společnosti Microsoft Ryan Paul