Difference between revisions of "Filesystem"

From Syslinux Wiki
Jump to: navigation, search
m (Ady moved page UFS to Filesystem: Making one centralized wiki page for all supported filesystems.)
(Add general comments and sections for Btrfs, ext, NTFS, XFS.)
Line 1: Line 1:
 +
[[Category:HowTo]]
 +
<!--  Keywords:  -->
 +
<!--  Filesystems filesystem support file system BIOS boot -->
 +
EXTLINUX supports:<br />
 +
<tt>[3.00+]</tt> ext2/3,<br />
 +
<tt>[4.00+]</tt> FAT12/16/32, ext2/3/4, Btrfs,<br />
 +
<tt>[4.06+]</tt> FAT12/16/32, NTFS, ext2/3/4, Btrfs,<br />
 +
<tt>[5.01+]</tt> FAT12/16/32, NTFS, ext2/3/4, Btrfs, XFS,<br />
 +
<tt>[6.03+]</tt> FAT12/16/32, NTFS, ext2/3/4, Btrfs, XFS, UFS/FFS,<br />
 +
 +
As of Syslinux 6.03,
 +
the <tt>extlinux</tt> command line installer supports 512 bytes per sector.
 +
 +
Please [[contact]] The Syslinux Project
 +
if the <tt>extlinux</tt> command line installer fails in any way
 +
in the supported filesystems
 +
or if the boot process fails after installing the bootloader.
 +
 +
For the available command line options, see [[Install]].
 +
 +
 +
<br />
 +
== Btrfs ==
 +
 +
Initial support for Btrfs was introduced in Syslinux 4.06.
 +
Several improvements and fixes were added in later versions.
 +
Syslinux 6.03 (or later) is recommended.
 +
 +
As of Syslinux 6.03,
 +
the compression and/or encryption features of Btrfs volumes
 +
are <u>not</u> supported.
 +
In other words,
 +
Syslinux cannot find {{nowrap|<nowiki>(configuration / kernel / initrd)</nowiki>}}
 +
files if the boot filesystem is compressed and/or encrypted.
 +
 +
Additional boot parameters might be needed so to specify Btrfs subvolume IDs.
 +
For example: <code><nowiki>rootflags=subvol=&lt;root subvolume&gt;</nowiki></code>.
 +
 +
<br />
 +
== ext ==
 +
 +
<!--  Keywords:  -->
 +
<!--  extN ext2 ext3 ext4 ext2/3/4  -->
 +
As of Syslinux 6.03, "pure 64-bits", compression and/or encryption
 +
are <u>not</u> supported.
 +
 +
<!-- WRT "pure 64-bits" see  -->
 +
<!--  https://bugzilla.redhat.com/show_bug.cgi?id=1099237#c23  -->
 +
 +
<br />
 +
== ISO9660 ==
 +
 +
Not relevant for [[EXTLINUX]]. See [[ISOLINUX]].
 +
 +
 +
<br />
 +
== NTFS ==
 +
 +
Initial support for NTFS was introduced in Syslinux 4.06.
 +
Several improvements and fixes were added in later versions.
 +
Syslinux 6.03 (or later) is recommended.
 +
 +
Note: As of Syslinux 6.03, Syslinux supports NTFS volumes
 +
with Cluster (aka "Allocation Unit") size <u>equal or smaller</u> than 4096 bytes.
 +
 +
4096 Bytes (or less) per "Allocation Unit" (aka Cluster).
 +
Each Cluster can be 4KiB or smaller.
 +
For 512 Bytes per sector &rarr; either 8 / 4 / 2 / 1 Sectors per Cluster.
 +
For 4096 Bytes per sector &rarr; 1 Sector per Cluster.
 +
 +
A Cluster size of 4096 bytes is usually the default and the recommended value.
 +
 +
For general information about Cluster size: http://support.microsoft.com/kb/140365
 +
 +
As of Syslinux 6.03,
 +
EXTLINUX does <u>not</u> support symlinks on NTFS volumes.
 +
 +
 +
<br />
 +
== UFS ==
 +
 
<!-- Keywords: -->
 
<!-- Keywords: -->
 
<!-- Unix Fast File System -->
 
<!-- Unix Fast File System -->
 
<!-- UFS/FFS UFS1 UFS2 UFS1/2 FFS -->
 
<!-- UFS/FFS UFS1 UFS2 UFS1/2 FFS -->
 
<!-- http://en.wikipedia.org/wiki/Berkeley_Fast_File_System -->
 
<!-- http://en.wikipedia.org/wiki/Berkeley_Fast_File_System -->
Syslinux 6.03 adds support for UFS/FFS in little-endian architectures (x86 and x86-64). UFS1 and UFS2 are both supported.
+
Syslinux 6.03 adds support for UFS/FFS in little-endian  
 +
architectures (x86 and x86-64).  
 +
UFS1 and UFS2 are both supported.
  
 
The author of UFS/FFS, Kirk McKusick, said about the name:
 
The author of UFS/FFS, Kirk McKusick, said about the name:
Line 15: Line 98:
 
</blockquote>
 
</blockquote>
  
== NOTES ==
+
=== UFS notes ===
* The following steps were initially only made under a GNU/Linux environment. Therefore, functionality might vary on other systems.
+
 
 +
* The following steps were initially only made under a GNU/Linux environment. <!-- 
 +
    --> Therefore, functionality might vary on other systems.
 
* Dependency: ufsutils (UFS filesystems utilities) or equivalent.
 
* Dependency: ufsutils (UFS filesystems utilities) or equivalent.
 
<!-- Examples:
 
<!-- Examples:
 
<!-- https://packages.debian.org/jessie/ufsutils -->
 
<!-- https://packages.debian.org/jessie/ufsutils -->
 
<!-- http://packages.qa.debian.org/u/ufsutils.html -->
 
<!-- http://packages.qa.debian.org/u/ufsutils.html -->
* To add Write support on UFS to Linux, a kernel with the option {{nowrap|<tt>CONFIG_UFS_FS_WRITE</tt>}} enabled is needed, or at least configured as a module. To the latter case, load the module {{nowrap|"<tt>ufs.ko</tt>"}} with modprobe (probably located at {{nowrap|"<tt>/lib/modules/</tt>"}}).
+
* To add Write support on UFS to Linux, <!-- 
 +
    --> a kernel with the option {{nowrap|<tt>CONFIG_UFS_FS_WRITE</tt>}} <!-- 
 +
    --> enabled is needed, or at least configured as a module. <!-- 
 +
    --> To the latter case, load the module {{nowrap|"<tt>ufs.ko</tt>"}} <!-- 
 +
    --> with modprobe (probably located at {{nowrap|"<tt>/lib/modules/</tt>"}}).
 
<!-- Examples:
 
<!-- Examples:
 
<!-- https://packages.debian.org/wheezy/ufs-modules-3.2.0-4-686-pae-di -->
 
<!-- https://packages.debian.org/wheezy/ufs-modules-3.2.0-4-686-pae-di -->
Line 29: Line 118:
 
  http://oz123.github.io/writings/2012-11-26-enable-ufs-write-support-debian/  
 
  http://oz123.github.io/writings/2012-11-26-enable-ufs-write-support-debian/  
 
</pre>
 
</pre>
 +
 +
 +
<br />
 +
== XFS ==
 +
 +
As of Syslinux 6.03,
 +
a filesystem block size of 4KiB is supported.
 +
 +
As of Syslinux 6.03,
 +
an XFS partition in an "[[Mbr|MBR]]" partition scheme is supported.

Revision as of 15:40, 9 November 2015

EXTLINUX supports:
[3.00+] ext2/3,
[4.00+] FAT12/16/32, ext2/3/4, Btrfs,
[4.06+] FAT12/16/32, NTFS, ext2/3/4, Btrfs,
[5.01+] FAT12/16/32, NTFS, ext2/3/4, Btrfs, XFS,
[6.03+] FAT12/16/32, NTFS, ext2/3/4, Btrfs, XFS, UFS/FFS,

As of Syslinux 6.03, the extlinux command line installer supports 512 bytes per sector.

Please contact The Syslinux Project if the extlinux command line installer fails in any way in the supported filesystems or if the boot process fails after installing the bootloader.

For the available command line options, see Install.



Btrfs

Initial support for Btrfs was introduced in Syslinux 4.06. Several improvements and fixes were added in later versions. Syslinux 6.03 (or later) is recommended.

As of Syslinux 6.03, the compression and/or encryption features of Btrfs volumes are not supported. In other words, Syslinux cannot find (configuration / kernel / initrd) files if the boot filesystem is compressed and/or encrypted.

Additional boot parameters might be needed so to specify Btrfs subvolume IDs. For example: rootflags=subvol=<root subvolume>.


ext

As of Syslinux 6.03, "pure 64-bits", compression and/or encryption are not supported.



ISO9660

Not relevant for EXTLINUX. See ISOLINUX.



NTFS

Initial support for NTFS was introduced in Syslinux 4.06. Several improvements and fixes were added in later versions. Syslinux 6.03 (or later) is recommended.

Note: As of Syslinux 6.03, Syslinux supports NTFS volumes with Cluster (aka "Allocation Unit") size equal or smaller than 4096 bytes.

4096 Bytes (or less) per "Allocation Unit" (aka Cluster).
Each Cluster can be 4KiB or smaller.
For 512 Bytes per sector → either 8 / 4 / 2 / 1 Sectors per Cluster.
For 4096 Bytes per sector → 1 Sector per Cluster.

A Cluster size of 4096 bytes is usually the default and the recommended value.

For general information about Cluster size: http://support.microsoft.com/kb/140365

As of Syslinux 6.03, EXTLINUX does not support symlinks on NTFS volumes.



UFS

Syslinux 6.03 adds support for UFS/FFS in little-endian architectures (x86 and x86-64). UFS1 and UFS2 are both supported.

The author of UFS/FFS, Kirk McKusick, said about the name:

The code is broken into two parts, the part that handles naming (UFS where the U stands for Unix), and the part that handles disk layout (FFS where the F stands for Fast). When the two parts are put together they are called UFS/FFS or more commonly just UFS.

UFS notes

  • The following steps were initially only made under a GNU/Linux environment. Therefore, functionality might vary on other systems.
  • Dependency: ufsutils (UFS filesystems utilities) or equivalent.
  • To add Write support on UFS to Linux, a kernel with the option CONFIG_UFS_FS_WRITE enabled is needed, or at least configured as a module. To the latter case, load the module "ufs.ko" with modprobe (probably located at "/lib/modules/").
  • Enable UFS Write support under Debian (November 26, 2012):
 http://oz123.github.io/writings/2012-11-26-enable-ufs-write-support-debian/ 



XFS

As of Syslinux 6.03, a filesystem block size of 4KiB is supported.

As of Syslinux 6.03, an XFS partition in an "MBR" partition scheme is supported.