Knowledge

FAT filesystem and Linux

Source đź“ť

197:
when it comes to simply sharing data on a FAT disk volume between Linux and other operating systems such as Windows. Its data structures are the same as those used by Windows for VFAT long filenames, and it does not require running a synchronization utility in order to prevent Windows and Linux data
176:
out of the three is that it provides full Unix file semantics. Therefore, it can be used in situations where it is desirable to install Linux on and run it from a FAT disk volume, which require such semantics to be available. However, Linux installed on and running from such a disk volume is slower
94:
The UMSDOS project was started in 1992 by Jacques Gelinas and made available to the net in January 1994 as a patch. It was included in the standard distribution starting with kernel 1.1.36. UMSDOS was removed from the Linux 2.6.11 kernel for lack of maintenance. UVFAT, an extension of UMSDOS to use
393:
semantics. It is possible for the filesystem drivers to convert the newline conventions in files, between LF termination and CRLF termination, on the fly as files are read and written. By default this conversion is entirely disabled. The filesystem drivers can perform conversion for some files,
146:
filesystem driver provides no extra Unix file semantics and no long filename support. If a FAT disk filesystem is mounted using this driver, only 8.3 filenames will be visible, no long filenames will be accessible, nor will any long filename data structures of any kind on the disk volume be
134:. The filesystem drivers are mutually exclusive. Only one can be used to mount any given disk volume at any given time. Thus the choice among them is determined by what long filenames and Unix semantics they support and what use one wants to make of the disk volume. 181:
filesystem format. Further, unless a utility program is regularly run every time that one switches from running Windows to running Linux, certain changes made to files and directories on the disk by Windows will cause error messages about inaccessible files in Linux.
468:
files in directories if they do not already exist, resulting in such a file in every directory in the disc volume. When switching between Windows and Linux this behaviour is not often considered desirable. Therefore, the normal mode of operation when invoking
602:
Although the filesystem drivers in the kernel make it possible to access files and directories on FAT formatted volumes in the normal manner, it is also possible to do so without kernel driver support, using the utility programs that form the
266:
As mentioned previously, all of the Linux filesystem drivers support all of the three File Allocation Table sizes, 12-bit, 16-bit, and 32-bit. Other common features that they all support are various Linux mounting options (specified with the
163:
filesystem driver provides long filename support, and extra Unix file semantics. However, it does so using on-disk data structures that are not recognized by any filesystem drivers for any operating systems other than Linux.
444:
driver's extra abilities, it is necessary to create that file in the directory and synchronize its internal data with the normal FAT data for any existing entries already in the directory. This is done with a tool called
575:
The installation of Linux into such a directory in the first place simply involves unpacking files from an archive into that directory and its subdirectories. Such an installation also generally requires the use of a
424:
FAT filesystem driver stores all of the extra information relating to Unix file semantics in what, to another FAT filesystem driver, appears to be just a normal file in each directory and subdirectory, named
193:, although lacking full Unix file semantics and lacking the ability to have Linux installed on and running from a FAT disk volume, does not have the aforementioned disadvantages of 493:
permits installing Linux on, and then bootstrapping and running it from, a FAT format disc volume. The advantage of this is that it permits the use of Linux on a computer where
1219: 394:
attempting to auto-detect what files to convert based upon the extension portion of the filename, or globally for all files. These three conversion levels are specified as
452:
This is the utility program that is run, across every directory on the disc volume, every time that one switches from running Windows to running Linux, in order for the
130:
structure of the original FAT filesystem format, and in the provision of Unix file semantics that do not exist as standard in the FAT filesystem format such as
294:) owner user ID and group ID to be a single, specified, value for all files in the volume. Both IDs are specified as numeric values (as to be found in the 71:
to permit installation of Linux on a FAT disc volume. A few distributions do, however. These include distributions such as Phat Linux, which installs in
198:
structures from becoming disjointed. For this reason, it is the most appropriate of Linux's FAT filesystem drivers to use in the majority of situations.
1224: 1198: 406:(for "text"), respectively. The latter two options carry an inherent risk of corrupting non-text file data. No conversion at all is the default. 1108: 1079: 1044: 1010: 985: 821: 769: 721: 689: 473:
after switching from Windows to Linux (which is usually done by running the tool at Linux boot time from a startup script) is to employ the
517: 95:
the Windows data structures for long filenames instead of its own, was discontinued before release. They should work in 2.4.x kernels.
906: 950: 1124: 611:
FAT filesystem driver, mountlo provides long filename support using the same disc data structures that Microsoft Windows uses.
456:
filesystem driver to incorporate any changes made to files and directories by Windows into its private data structures in its
641: 1165: 1214: 440:
filesystem driver does for the directory: only 8.3 filenames and no extra Unix file semantics. To enable the
323:
on FAT12/FAT16 volumes as implemented in various operating systems of the Digital Research family, including
1100: 942: 320: 159:
long filename support on FAT format volumes, but it does not support any extra Unix file semantics. The
1173: 498: 38: 584:
for Linux, however this is related to the desire not to repartition the hard disc and unrelated to the
973: 681: 502: 977: 967: 837: 1071: 1061: 304:
filesystem driver that all files and directories are to have owner ID 745 and group ID 15, the
1104: 1075: 1040: 1006: 981: 946: 817: 813: 809: 803: 765: 717: 685: 316: 152: 1036: 1030: 131: 1186: 761: 751: 713: 151:
filesystem driver provides long filename support using the same disk data structures that
969:
Linux bible: boot up to Ubuntu, Fedora, KNOPPIX, Debian, SUSE, and 11 other distributions
67:
Most of the major Linux distributions, including RedHat, SuSE, and Debian, do not employ
626:
A modern equivalent of UMSDOS is POSIX Overlay Filesystem (posixovl). It works in FUSE.
177:
than Linux installed on and running from a disk volume formatted with, for example, the
757: 581: 513: 344: 1128: 1208: 895: 348: 123: 615: 273: 127: 43: 524:. The various Linux top-level directories are thus, to DOS, directories such as 290:
These two options tell the filesystem driver to set the (default, in the case of
80: 556:
to all pathnames. The location of the Linux root directory is supplied to the
1005:. The Complete Linux Kit, Rainer Maurer (3rd ed.). Springer. p. 43. 367:
to apply globally to all files in the volume. For example, to specify to the
332: 34: 432:
In the absence of this file in any given directory, and thus by default, the
1142: 1067: 638:(DoubleSpace/DriveSpace/Stacker compatible compressed FAT volumes for Linux) 577: 41:(FAT) filesystem format. These are commonly known by the names used in the 1161: 371:
filesystem driver that no "group" or "other" access is to be allowed, the
321:
world/group/owner access permissions for read/write/delete/execute rights
88: 76: 884: 861: 110:
All of the Linux filesystem drivers support all three FAT types, namely
506: 352: 336: 328: 99: 17: 635: 604: 597: 340: 324: 1063:
Multi-operating system networking: living with Unix, Netware, and NT
315:
Linux filesystem drivers do not at present incorporate support for
1193: 364: 119: 115: 111: 30: 178: 156: 497:
is already installed, without requiring that the hard disc be
494: 477:
option to the command, which prevents the creation of any new
907:
The Linux/Windows combo: Use these resources to make it work
618:
filesystem drivers may be used—FatFuse, FuseFat or mountlo.
505:
in such a scenario. Instead DOS is first bootstrapped, and
560:
filesystem driver in the first place via an option to the
512:
The convention for such an installation is for the Linux
1199:
New Linux patch could circumvent Microsoft's FAT patents
122:. Where they differ is in the provision of support for 481:
files in directories that do not already possess them.
255:
Can host Linux; may need maintenance when switching OS
592:
Accessing FAT formatted volumes without kernel support
516:
to be a subdirectory of the root directory of the DOS
436:
filesystem driver provides the same semantics as the
296: 47:
command to invoke particular drivers in the kernel:
509:or linld is used to then bootstrap Linux from DOS. 1032:Making Linux work: essential tips & techniques 98:Earlier Linux distributions which used UMSDOS are 710:How Linux works: what every superuser should know 671: 669: 667: 665: 663: 661: 659: 657: 1035:. 1001 Tips Series. Cengage Learning. pp.  570:loadlin c:\linux\boot\vmlinuz rw root=c:\linux 676:Stanfield, Vicki; Smith, Roderick W. (2002). 568:would be invoked with a command line such as 552:filesystem driver automatically prepends the 501:. Linux is not bootstrapped directly from a 8: 1003:Linux, unleashing the workstation in your PC 838:"Summary of changes from v2.6.10 to v2.6.11" 319:on FAT12/FAT16/FAT32 volumes and multi-user 241:Uses same data structures that Windows uses 1099:. Essential Guide to Linux (4th ed.). 680:. Craig Hunt Linux library (2nd ed.). 300:file). So, for example, to specify to the 1220:File systems supported by the Linux kernel 200: 1024: 1022: 932: 930: 928: 926: 924: 922: 920: 918: 916: 914: 1001:Strobel, Stefan; Elling, Volker (1997). 797: 795: 793: 791: 789: 787: 785: 783: 781: 745: 743: 741: 739: 737: 735: 733: 653: 1182: 1171: 703: 701: 753:The multi-boot configuration handbook 7: 27:Widely used Linux filesystem format 1066:. Auerbach Best Practices Series. 862:"UMSDOS filesystem: UVFAT support" 102:, Monkey Linux and Winlinux 2000. 25: 1225:Free special-purpose file systems 808:. Open source technology series. 1160:Gelinas, Jacques (2001-12-01). 311:mount -t vfat -o uid=745,gid=15 1: 805:Integrating Linux and Windows 642:Design of the FAT file system 1125:"FUSE: NonNativeFileSystems" 375:command would be invoked as 308:command would be invoked as 1166:Linux Documentation Project 966:Negus, Christopher (2007). 750:Smith, Roderick W. (2000). 678:Linux system administration 564:command. So, for example, 79:and is booted by running a 1241: 1143:"POSIX Overlay Filesystem" 937:Roderick W. Smith (2005). 712:. No Starch Press Series. 595: 588:filesystem driver per se. 378:mount -t vfat -o umask=077 607:utility suite. Like the 402:(for "auto-detect"), and 939:Linux in a Windows world 622:POSIX overlay filesystem 614:Alternately, one of the 485:Installing Linux on FAT 317:file/directory passwords 1194:UMSDOS developer’s page 1060:Rajagopal, Raj (2000). 460:file. By default, the 391:file content conversion 1181:Cite journal requires 1029:Danesh, Arman (2002). 896:Monkey Linux Explained 548:), and so forth. The 389:This option specifies 75:on DOS by unpacking a 802:McCune, Mike (2001). 596:Further information: 363:This option sets the 351:, System Manager and 172:The key advantage to 39:File Allocation Table 1101:O'Reilly Media, Inc. 1095:Welsh, Matt (2003). 943:O'Reilly Media, Inc. 708:Ward, Brian (2004). 974:John Wiley and Sons 756:. Handbook Series. 682:John Wiley and Sons 227:8.3 filenames only 210:Unix file semantics 63:History and support 503:Volume Boot Record 106:Feature comparison 1215:Disk file systems 1110:978-0-596-00272-5 1081:978-0-8493-9831-5 1046:978-1-884133-78-7 1012:978-0-387-94880-5 987:978-0-470-08279-9 823:978-0-13-030670-8 810:Prentice Hall PTR 771:978-0-7897-2283-6 723:978-1-59327-035-3 691:978-0-7821-4138-2 259: 258: 153:Microsoft Windows 147:maintained. The 16:(Redirected from 1232: 1190: 1184: 1179: 1177: 1169: 1147: 1146: 1139: 1133: 1132: 1127:. Archived from 1121: 1115: 1114: 1092: 1086: 1085: 1057: 1051: 1050: 1026: 1017: 1016: 998: 992: 991: 972:. Bible Series. 963: 957: 956: 934: 909: 904: 898: 893: 887: 882: 876: 875: 873: 872: 866:linux.voyager.hr 858: 852: 851: 849: 848: 834: 828: 827: 799: 776: 775: 747: 728: 727: 705: 696: 695: 673: 571: 567: 563: 555: 547: 543: 539: 535: 531: 527: 523: 480: 476: 472: 467: 463: 459: 448: 428: 405: 401: 398:(for "binary"), 397: 386: 381: 379: 374: 360: 314: 312: 307: 299: 287: 283: 276: 270: 201: 132:file permissions 86: 74: 46: 37:drivers for the 21: 1240: 1239: 1235: 1234: 1233: 1231: 1230: 1229: 1205: 1204: 1180: 1170: 1162:"UMSDOS HOW-TO" 1159: 1156: 1154:Further reading 1151: 1150: 1141: 1140: 1136: 1123: 1122: 1118: 1111: 1094: 1093: 1089: 1082: 1059: 1058: 1054: 1047: 1028: 1027: 1020: 1013: 1000: 999: 995: 988: 965: 964: 960: 953: 936: 935: 912: 905: 901: 894: 890: 885:MuLinux Project 883: 879: 870: 868: 860: 859: 855: 846: 844: 836: 835: 831: 824: 801: 800: 779: 772: 749: 748: 731: 724: 714:No Starch Press 707: 706: 699: 692: 684:. p. 166. 675: 674: 655: 650: 632: 624: 600: 594: 569: 565: 561: 553: 545: 541: 537: 533: 529: 525: 521: 487: 478: 474: 470: 465: 461: 457: 446: 426: 418: 413: 403: 399: 395: 384: 377: 376: 372: 358: 310: 309: 305: 295: 285: 281: 272: 268: 264: 188: 170: 140: 108: 84: 72: 65: 42: 28: 23: 22: 15: 12: 11: 5: 1238: 1236: 1228: 1227: 1222: 1217: 1207: 1206: 1203: 1202: 1196: 1191: 1183:|journal= 1155: 1152: 1149: 1148: 1134: 1131:on 2015-09-15. 1116: 1109: 1087: 1080: 1052: 1045: 1018: 1011: 993: 986: 958: 951: 910: 899: 888: 877: 853: 842:www.kernel.org 829: 822: 777: 770: 758:Que Publishing 729: 722: 716:. p. 41. 697: 690: 652: 651: 649: 646: 645: 644: 639: 631: 628: 623: 620: 593: 590: 582:swap partition 580:rather than a 514:root directory 489:As mentioned, 486: 483: 417: 416:Data structure 414: 412: 409: 408: 407: 387: 382: 361: 356: 345:Concurrent DOS 288: 271:option to the 263: 260: 257: 256: 253: 250: 247: 243: 242: 239: 236: 233: 229: 228: 225: 222: 219: 215: 214: 211: 208: 207:Long filenames 205: 187: 184: 169: 166: 139: 136: 124:long filenames 107: 104: 64: 61: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 1237: 1226: 1223: 1221: 1218: 1216: 1213: 1212: 1210: 1200: 1197: 1195: 1192: 1188: 1175: 1167: 1163: 1158: 1157: 1153: 1144: 1138: 1135: 1130: 1126: 1120: 1117: 1112: 1106: 1103:p. 405. 1102: 1098: 1097:Running Linux 1091: 1088: 1083: 1077: 1073: 1069: 1065: 1064: 1056: 1053: 1048: 1042: 1038: 1034: 1033: 1025: 1023: 1019: 1014: 1008: 1004: 997: 994: 989: 983: 979: 975: 971: 970: 962: 959: 954: 952:0-596-00758-2 948: 945:p. 449. 944: 940: 933: 931: 929: 927: 925: 923: 921: 919: 917: 915: 911: 908: 903: 900: 897: 892: 889: 886: 881: 878: 867: 863: 857: 854: 843: 839: 833: 830: 825: 819: 815: 811: 807: 806: 798: 796: 794: 792: 790: 788: 786: 784: 782: 778: 773: 767: 763: 759: 755: 754: 746: 744: 742: 740: 738: 736: 734: 730: 725: 719: 715: 711: 704: 702: 698: 693: 687: 683: 679: 672: 670: 668: 666: 664: 662: 660: 658: 654: 647: 643: 640: 637: 634: 633: 629: 627: 621: 619: 617: 612: 610: 606: 599: 591: 589: 587: 583: 579: 573: 559: 551: 519: 515: 510: 508: 504: 500: 499:repartitioned 496: 492: 484: 482: 464:tool creates 455: 450: 443: 439: 435: 430: 423: 415: 410: 392: 388: 383: 370: 366: 362: 357: 354: 350: 349:Multiuser DOS 346: 342: 338: 334: 330: 326: 322: 318: 303: 298: 293: 289: 280: 279: 278: 275: 262:Commonalities 261: 254: 251: 248: 245: 244: 240: 237: 234: 231: 230: 226: 223: 220: 217: 216: 212: 209: 206: 203: 202: 199: 196: 192: 185: 183: 180: 175: 167: 165: 162: 158: 154: 150: 145: 137: 135: 133: 129: 126:, beyond the 125: 121: 117: 113: 105: 103: 101: 96: 92: 90: 83:script named 82: 78: 70: 62: 60: 58: 54: 50: 45: 40: 36: 32: 19: 1201:by Ryan Paul 1174:cite journal 1137: 1129:the original 1119: 1096: 1090: 1062: 1055: 1031: 1002: 996: 968: 961: 938: 902: 891: 880: 869:. Retrieved 865: 856: 845:. Retrieved 841: 832: 804: 762:256, 341–342 752: 709: 677: 625: 613: 608: 601: 585: 574: 557: 549: 542:C:\LINUX\LIB 534:C:\LINUX\BIN 526:C:\LINUX\ETC 511: 490: 488: 479:--LINUX-.--- 466:--LINUX-.--- 458:--LINUX-.--- 453: 451: 441: 437: 433: 431: 427:--LINUX-.--- 421: 419: 390: 368: 301: 291: 265: 194: 190: 189: 173: 171: 160: 148: 143: 141: 128:8.3 filename 109: 97: 93: 68: 66: 56: 52: 48: 33:has several 29: 1070:. pp.  976:. pp.  812:. pp.  760:. pp.  518:boot volume 297:/etc/passwd 81:COMMAND.COM 1209:Categories 871:2015-07-16 847:2017-11-15 648:References 333:Novell DOS 277:command): 35:filesystem 1068:CRC Press 578:swap file 554:C:\LINUX\ 204:FS-Driver 155:uses for 85:LINUX.BAT 630:See also 522:C:\LINUX 213:Comment 89:ZipSlack 77:ZIP file 1164:. 1.2. 566:loadlin 562:loadlin 520:, e.g. 507:loadlin 471:umssync 462:umssync 447:umssync 353:REAL/32 337:OpenDOS 329:PalmDOS 100:MuLinux 73:C:\PHAT 1107:  1078:  1043:  1009:  984:  949:  820:  768:  720:  688:  636:DMSDOS 605:mtools 598:mtools 586:umsdos 558:umsdos 550:umsdos 491:umsdos 454:umsdos 442:umsdos 434:umsdos 422:umsdos 411:umsdos 404:conv=t 400:conv=a 396:conv=b 341:FlexOS 325:DR-DOS 292:umsdos 246:umsdos 195:umsdos 174:umsdos 168:umsdos 161:umsdos 87:, and 69:umsdos 57:umsdos 55:, and 18:UMSDOS 1072:25–21 544:(for 536:(for 528:(for 438:msdos 373:mount 365:umask 359:umask 306:mount 274:mount 218:msdos 144:msdos 138:msdos 120:FAT32 116:FAT16 112:FAT12 49:msdos 44:mount 31:Linux 1187:help 1105:ISBN 1076:ISBN 1041:ISBN 1007:ISBN 982:ISBN 947:ISBN 818:ISBN 766:ISBN 718:ISBN 686:ISBN 616:FUSE 609:vfat 546:/lib 538:/bin 530:/etc 420:The 385:conv 369:vfat 302:vfat 284:and 232:vfat 191:vfat 186:vfat 179:ext2 157:VFAT 149:vfat 142:The 118:and 53:vfat 978:159 814:7–9 540:), 532:), 495:DOS 286:gid 282:uid 252:Yes 249:Yes 235:Yes 1211:: 1178:: 1176:}} 1172:{{ 1074:. 1039:. 1037:19 1021:^ 980:. 941:. 913:^ 864:. 840:. 816:. 780:^ 764:. 732:^ 700:^ 656:^ 572:. 475:-c 449:. 429:. 347:, 343:, 339:, 335:, 331:, 327:, 269:-o 238:No 224:No 221:No 114:, 91:. 59:. 51:, 1189:) 1185:( 1168:. 1145:. 1113:. 1084:. 1049:. 1015:. 990:. 955:. 874:. 850:. 826:. 774:. 726:. 694:. 380:. 355:. 313:. 20:)

Index

UMSDOS
Linux
filesystem
File Allocation Table
mount
ZIP file
COMMAND.COM
ZipSlack
MuLinux
FAT12
FAT16
FAT32
long filenames
8.3 filename
file permissions
Microsoft Windows
VFAT
ext2
mount
/etc/passwd
file/directory passwords
world/group/owner access permissions for read/write/delete/execute rights
DR-DOS
PalmDOS
Novell DOS
OpenDOS
FlexOS
Concurrent DOS
Multiuser DOS
REAL/32

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑