This document is a WORK IN PROGRESS.
This is just a quick personal cheat sheet: treat its contents with caution!
File systems¶
Reference(s)
Table of contents¶
- FUSE
- Ext4
- Btrfs
- XFS
- ZFS
- ReiserFS
- MergerFS
- F2FS
- HFS/HFS+
- JFS
- FAT
- ExFAT
- NTFS
- NFS
- SSHFS
sysfs
tmpfs
procfs
FUSE¶
Reference(s)
FUSE is a software interface for Unix and Unix like computer operating systems that lets non privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a "bridge" to the actual kernel interfaces.
Ext4¶
Reference(s)
The ext4 journaling file system or fourth extended file system is a journaling file system for Linux, developed as the successor to ext3.
Btrfs¶
See Btrfs
XFS¶
Reference(s)
XFS is a high performance 64-bit journaling file system created by Silicon Graphics Inc in 1993. XFS was ported to the Linux kernel in 2001; as of June 2014, XFS is supported by most Linux distributions, some of which use it as the default file system.
ZFS¶
See ZFS
ReiserFS¶
Reference(s)
ReiserFS is a general-purpose, journaled computer file system initially designed and implemented by a team led by Hans Reiser.
MergerFS¶
Reference(s)
MergerFS is a union file system geared towards simplifying storage and management of files across numerous commodity storage devices. It is similar to MHDDFS, UnionFS, and AUFS.
F2FS¶
Reference(s)
F2FS is a flash file system initially developed by Samsung Electronics for the Linux kernel.
HFS/HFS+¶
Reference(s)
HFS is a proprietary file system developed by Apple Inc. for use in computer systems running Mac OS.
HFS Plus or HFS+ is a journaling file system developed by Apple Inc. It replaced the HFS as the primary file system of Apple computers with the 1998 release of Mac OS 8.1.
JFS¶
Reference(s)
JFS is a journaling file system that was open sourced by IBM in 1999 and support for which has been available in the Linux kernel since 2002.
FAT¶
Reference(s)
FAT is a computer file system architecture and a family of industry standard file systems utilizing it. The FAT file system is a continuing standard which borrows source code from the original, legacy file system and proves to be simple and robust.
ExFAT¶
ExFAT is a file system introduced by Microsoft in 2006 and optimized for flash memory such as USB flash drives and SD cards. ExFAT is proprietary, and Microsoft owns patents on several elements of its design.
NTFS¶
Reference(s)
NTFS is a proprietary disk file system by Microsoft for Windows and Windows based operating systems.
NFS¶
Reference(s)
NFS is a distributed file system protocol originally developed by Sun Microsystems in 1984, allowing a user on a client computer to access files over a computer network much like local storage is accessed.
SSHFS¶
Reference(s)
SSHFS is a FUSE based file system client for mounting remote directories over a Secure Shell connection.
sysfs
¶
sysfs
is a pseudo file system provided by the Linux kernel that exports information about various
kernel subsystems, hardware devices, and associated device drivers from the kernel's device model
to user space through virtual files. In addition to providing information about various devices and
kernel subsystems, exported virtual files are also used for their configuration.
tmpfs
¶
Reference(s)
tmpfs
is a temporary file storage paradigm implemented in many Unix like operating systems. It is
intended to appear as a mounted file system, but data is stored in volatile memory instead of a
persistent storage device. A similar construction is a RAM disk, which appears as a virtual disk
drive and hosts a disk file system.
procfs
¶
Reference(s)
procfs
is a special file system in Unix like operating systems that presents information about
processes and other system information in a hierarchical file like structure, providing a more
convenient and standardized method for dynamically accessing process data held in the kernel than
traditional tracing methods or direct access to kernel memory.
Typically, it is mapped to a mount point named /proc
at boot time. procfs
acts as an interface
to internal data structures in the kernel. It can be used to obtain information about the system
and to change certain kernel parameters at runtime (sysctl
).
If this cheat sheet has been useful to you, then please consider leaving a star here.