Filesystem/ja

ファイルシステムは、Article description::プログラムの終了後も保持されることが期待されるデータを整理する手段であり、データの格納、取り出し、更新、およびそれを含むデバイス上の利用可能な領域の管理を行う手順を提供します.

Linuxには数多くのファイルシステムがあり、それぞれが独自の長所と短所を持っています.

一般情報

 * アクセス・コントロール・リスト ガイド
 * ファイルシステムのセキュリティ

ディスクファイルシステム

 * bcachefs - A next generation, robust, high performance filesystem supporting CoW (Copy-on-write), compression, and encryption.
 * Cramfs - A memory and space sensitive compressed filesystem that supports random reading. It avoids the block device layer and tiny embedded systems with very tight memory constraints.
 * eCryptfs - The enterprise cryptographic filesystem for Linux.
 * efivarfs - a (U)EFI variable filesystem
 * ext4 - The default, GPL licensed journaling filesystem for many Linux distributions.
 * FAT - The File Allocation Table (FAT) filesystem. Originally created for use with Microsoft Windows.
 * JFS - A GPL licensed, 64-bit Journaled File System (JFS) developed by IBM.
 * Btrfs - A copy-on-write B-tree file system (Btrfs) with advanced features (an entirely open source licensed ZFS alternative).
 * NTFS - Microsoft Windows' New Technology File System (NTFS) (Windows' default filesystem).
 * Aufs - Advanced multi-layered unification file system (Aufs), formerly known as Another union file system.
 * OverlayFS - The only union-like filesystem built-in to the Linux kernel.
 * ReiserFS - Version 3 of the ReiserFS filesystem.
 * Reiser4 - Version 4 of ReiserFS filesystem. Currently not implemented in the mainline Linux kernel.
 * SquashFS - A compressed, read-only file system for Linux
 * UDF - Universal Disk Format - needed for mounting some kind of .iso files
 * GFS2 - Global File System 2: A shared disk filesystem. Typically used in compute clusters.
 * UFS - The Unix File System (UFS) also called the Berkeley Fast File System.
 * XFS - A GPL licensed, 64-bit journaling filesystem created by Silicon Graphics.
 * ZFS - A CDDL (non-GPL compatible) licensed, copy-on-write filesystem created by Sun Microsystems.
 * F2FS - A Flash-Friendly File System (F2FS) created by Samsung for the Linux kernel.

仮想ファイルシステム

 * debugfs - Used for debugging purposes; primarily Linux kernel development.
 * procfs - Used to output and change of system and process information.
 * securityfs - Used by the TPM BIOS character driver and IMA, an integrity provider.
 * sysfs - Used to output information about and to configure devices and drivers.
 * tmpfs - Used to store files in memory (RAM).
 * devtmpfs - requires devtmpfs (Maintain a devtmpfs filesystem to mount at ) in the kernel.

ネットワークファイルシステム

 * Ceph - A distributed object store and filesystem designed to provide excellent performance, reliability, and scalability.
 * NFS - A common Linux network file system protocol.
 * SSHFS - Implements FUSE to mount filesystems in user space.
 * Tahoe-LAFS - A Least Authority File Store (LAFS).
 * GlusterFS - A powerful network/cluster filesystem.

FUSEベースのファイルシステム

 * CurlFtpFS - File system for accessing FTP hosts based on FUSE.
 * exFAT - A FUSE filesystem for the extended FAT filesystem.
 * FuseISO - FUSE module to mount ISO filesystem images.
 * MTPfs - A FUSE filesystem providing access to Media Transfer Protocol (MTP) devices.
 * smbnetfs - A FUSE filesystem for SMB shares.
 * squashfuse - Mount SquashFS archives using FUSE.

マウント
ファイルシステムのマウントにはいくつかの手段があります:


 * - ファイルシステムをマウントするのに使用するコマンドです. 特権あるいはへの登録が必要です.
 * fstab - システムがマウントできるファイルシステムに関する情報が含まれています.
 * Removable media - 必要に応じてファイルをマウントします.
 * Udevil - ほとんど依存関係の存在しない、小さい自動マウントユーティリティです.
 * AutoFS - ファイルアクセスを自動的にマウントします.

参考

 * bcache - Linuxカーネルのブロックレイヤーキャッシュ.
 * FUSE - File system in User Space (FUSE).

外部資料

 * （Sven Vermeulenによる）Linux Seaの、ファイルシステムに関するチャプター
 * https://wiki.archlinux.jp/index.php/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0
 * https://arstechnica.com/information-technology/2014/01/bitrot-and-atomic-cows-inside-next-gen-filesystems/ - 次世代ファイルシステムの利点について、詳しい情報を提供している記事.
 * https://www.usenix.org/system/files/login/articles/03_lu_010-017_final.pdf - Linuxファイルシステムの発展に関する研究