Differences between revisions 4 and 6 (spanning 2 versions)
Revision 4 as of 2020-07-09 01:55:43
Size: 3024
Comment:
Revision 6 as of 2020-07-10 16:53:33
Size: 1810
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= File System = = File System Setup =
Line 3: Line 3:
File systems are standards for organizing, maintaining, and accessing data on a disk drive. This will ''not'' be a crosswalk of file systems. File systems are standards for organizing, maintaining, and accessing data on a disk drive.
Line 5: Line 5:
You may need to take a step back and look at [[PartitionTablesSetup|creating a partition table first]]. See also [[PartitionTablesSetup|this document]] for creating a partition table, and [[FileSystemMounting|this document]] for using a new file system.
Line 8: Line 8:

----



== Mounting File Systems ==

----



=== fstab ===

On a Linux system, `/etc/fstab` informs on what volumes should be mounted and with what options. This configuration file is structured as:

{{{
# <device> <dir> <type> <options> <dump> <fsck>
UUID=f9fe0b69-a280-415d-a03a-a32752370dee none swap defaults 0 0
}}}

Spacing between columns is arbitrary. The `<dir>` column is the mount point, while the `<type>` column indicates file system type.

The `<options>` column can contain any of:
 * `defaults`
 * `noatime` - do not write access times
 * `noauto` - do not wait on `fsck`
 * `nofail` - do not indicate errors if unavailable
 * `noatime` - do not sync update times
 * `nodev` - disallow special device files
 * `nosuid` - disallow operation of SUID bit

The `<dump>` column is used by the `dump` utility--if you don't need that utility (and most people don't), set it to `0`.

The `<fsck>` column is used by the `fsck` utility, and enables boot-time filesystem checks.
 * `0` disables checks.
 * `1` runs corrections based on checks. This is important for the root device.
 * `2` forces reboot on error.
Line 53: Line 16:

----
Line 68: Line 29:
Seriously. Don't. Don't.

File System Setup

File systems are standards for organizing, maintaining, and accessing data on a disk drive.

See also this document for creating a partition table, and this document for using a new file system.


Creating File systems

Henceforward you will see reference to sdXN, where you should understand that X needs to be replaced with the relevant letter and N with the relevant number. You should also understand how to find that relevant letter and number combination, and the risks of finding the incorrect letter or number.

ext2

Don't.


ext3

Don't.


ext4

If you are creating ext4 file systems, you probably are using Linux. Therefore, let's assume you have the Linux toolset available.

Running as superuser:

mkfs.ext4 /dev/sdXN

Consider disabling access time on secondary and storage drives. Setting this metadata isn't always helpful and carries a speed cost.

# <device>                                <dir> <type> <options>        <dump> <fsck>
/dev/sdXN                                 /var  ext4   defaults,noatime 0      0


FAT32

The main advantage to FAT32 is it near-universal mount-ability. (Expect issues on a vanilla macOS environment!) The cost of getting that is steep though. Expect much slower performance, greater instability, and incompatibility with standard Linux file metadata.

On Linux, run as superuser:

mkfs.vfat /dev/sdXN


MS-DOS

On Linux you can run as superuser:

mkdosfs /dev/sdXN

But you should also know that mkdosfs is a symlink to mkfs.vfat.


CategoryRicottone

Linux/FileSystems (last edited 2023-07-19 15:07:39 by DominicRicottone)