Linuxのファイルシステムを理解しようとしていますが、まだ理解していない部分があります。これまで私が正しく理解しているのは、ファイルシステムがボリュームのパーティションからファイルを取得するために使用される一連の方法とデータ構造であることです。ファイルシステムはLinuxコマンドでリストできます。df
これまではとても良いです。
また、Linuxは合成ファイルシステムをprocsとして生成します。これは、ファイルではなくオブジェクトに対して通常のファイルシステムとして表示されます。 proc ファイルシステムがその例です。フラグを追加すると、dfコマンドを使用して合成ファイルシステムを一覧表示できます-a
。
今の質問は、/usr/フォルダがファイルシステムと呼ばれる理由です。https://tldp.org/LDP/sag/html/usr-fs.html)?私にとっては、ルートファイルシステムに属するフォルダのようです。それでは、なぜ人々はそれをファイルシステムと呼ぶのでしょうか?
また、人々がルートファイルシステムが小さくなければならないと言うのはなぜですか(https://tldp.org/LDP/sag/html/root-fs.html)?
実際にdf
次のコマンドを呼び出すと、次のようになります。
Filesystem 1K-blocks Used Available Use% Mounted on
udev 32866696 0 32866696 0% /dev
tmpfs 6578976 2484 6576492 1% /run
/dev/nvme0n1p5 959862832 101610168 809424504 12% /
tmpfs 32894876 109020 32785856 1% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 32894876 0 32894876 0% /sys/fs/cgroup
/dev/loop1 56704 56704 0 100% /snap/core18/1885
/dev/loop2 261760 261760 0 100% /snap/gnome-3-34-1804/36
/dev/nvme0n1p1 523248 4 523244 1% /boot/efi
/dev/loop3 63616 63616 0 100% /snap/gtk-common-themes/1506
/dev/loop4 51968 51968 0 100% /snap/snap-store/481
/dev/loop5 31744 31744 0 100% /snap/snapd/9721
/dev/loop6 30720 30720 0 100% /snap/snapd/8542
/dev/loop7 223232 223232 0 100% /snap/gnome-3-34-1804/60
/dev/loop8 51072 51072 0 100% /snap/snap-store/467
tmpfs 6578972 20 6578952 1% /run/user/125
tmpfs 6578972 40 6578932 1% /run/user/1000
/dev/sda1 30702592 2498400 28204192 9% /media/tommaso/USB
/dev/loop9 56704 56704 0 100% /snap/core18/1932
ルートファイルシステムは実際には次のように構成されているようです。すべて私のコンピュータではなぜ小さいのですか?
ベストアンサー1
基本原則は背景部分。 2000年代半ばから後半まで関連がありましたが、今日はもはや関連がありません。
別々のファイルシステムを作成する理由は、/usr
ルートファイルシステムを小さく保つためです。ディレクトリ/usr
ツリーはソフトウェアのインストールに使用されます。
インストールされているソフトウェアは頻繁に変更されないため、
/usr
読み取り専用でインストールできます。ルートファイルシステムは/etc
通常頻繁に変更する必要があるため、読み取り専用でマウントすることはできません。読み取り専用に保つ主な利点は、/usr
読み取り/書き込みがマウントされている間にシステムがクラッシュした場合に長いファイルシステムチェックを避けることができることです。これは、もはや最新のファイルシステムとは関係ありません。雑誌または、競合から直接回復できる他のメカニズムもあります。同じシステムにインストールされているソフトウェアは同じであるため、
/usr
読み取り専用にすることができます。あるいは、ローカルネットワークがある場合は、それを単一のサーバーに保存して別のシステムにインストールすることもできます。ネットワークのルートファイルシステムからの起動はより複雑です(より多くのブートローダとカーネルのサポートに依存し、ネットワークがダウンするとマシンを完全に使用できなくなります)。これはディスクスペースのコストが200ドルだった当時は一般的でしたが、/usr
コストは1セントにすぎないため、もはや重要ではありません。
したがって、最近では/usr
別々のファイルシステムを持っている/usr
か/
。
少なくともLinuxではこれ以上そうではありません。原因は、この/etc/mtab
ファイルが以前は一般的なファイルでしたが、今では一般的にシンボリックリンクがある/proc/mounts
のに十分であることです。しかし、プリンタ/ネットワークが最後に確認された時間のタイムスタンプを含むファイルを更新したいCupsやNetworkManagerなどの新しい犯人が登場しました。/etc/mtab
/etc/mtab