tmpfsの使い方とサイズ変更

tmpfsの使い方とサイズ変更

私はこの内容を理解しようとしています。 80Gの記憶容量を持つコンピュータがあります。次のようになります。

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   50G  7.1G   43G  15% /
devtmpfs                 3.9G     0  3.9G   0% /dev
tmpfs                    3.9G  1.4M  3.9G   1% /dev/shm
tmpfs                    3.9G  409M  3.5G  11% /run
tmpfs                    3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda1                494M  125M  370M  26% /boot
/dev/mapper/centos-home   26G   23G  3.5G  87% /home
tmpfs                    782M     0  782M   0% /run/user/0

今私が知っている限り、tmpfsは物理ストレージを占有せず、システムの仮想メモリを使用します。そうなんですか?どのように物理ストレージに影響を与えますか?

tmpfsは実際に物理ストレージに書き込まれますか?次に、マウントされたすべての(/dev/sda1、/dev/sda1など)ディレクトリはtmpfsを共有しますか?それともそれぞれ違うものがありますか?

また、tmpfsのサイズを変更してみました。私はそうしました:

 mount -o remount,size=1G /dev/shm

再起動後、元のサイズに戻りました。 /etc/fstabを次のように変更しました。

tmpfs      /dev/shm      tmpfs   defaults,size=1G

それから:

mount -o remount /dev/shm

成功しましたが、再起動後元のサイズに戻りました。何か抜けていると思います。

答え1

今私が知っている限り、tmpfs物理的なストレージスペースを取らずにマシンの仮想メモリを使います。そうなんですか?

正しい。tmpfsマウントされたファイルシステムとして表示されますが、永続ストレージではなく揮発性メモリに保存されます。したがって、これは他の質問に答えることができます。

実際、物理ストレージはtmpfs仮想メモリにのみ依存するため、割り当てることはできません。tmpfsハードドライブにファイルが作成されないため、ここに保存されているすべてのコンテンツは一時的です。メモリが不足している場合は、スワップ領域をバックアップストアとして使用します。再起動すると、すべてのコンテンツtmpfsが失われます。

多くのUnixディストリビューションでは、デフォルトでファイルシステムの分岐または共有メモリを有効にして使用しますtmpfs/tmp

ディストリビューションに応じてをtmpfs使用できます/tmp。デフォルトでは、tmpfsパーティションの最大サイズは使用可能なRAMの半分に設定されていますが、この値を上書きして最大サイズを明示的に設定することもできます。この例では、デフォルトのインストールを上書きするにはインストールオプションを/tmp使用します。size

/etc/fstab
tmpfs   /tmp         tmpfs   nodev,nosuid,size=2G          0  0

源泉:https://wiki.archlinux.org/index.php/tmpfs

答え2

今私が知っている限り、tmpfsは物理ストレージを占有せず、システムの仮想メモリを使用します。そうなんですか?どのように物理ストレージに影響を与えますか? tmpfsは実際に物理ストレージに書き込まれますか?

まあ、それは限られたスワップ領域を埋めます。バラよりtmpfs はスワップをオーバーフローしません。

次に、マウントされたすべての(/dev/sda1、/dev/sda1など)ディレクトリはtmpfsを共有しますか?それともそれぞれ違うものがありますか?

これはtmpfs設置場所によって異なります。しかしtmpfs、それが意味するなら、すべては同じメモリを共有する必要があります。

何か抜けていると思います。

おそらくhttps://superuser.com/questions/45342/when-should-i-use-dev-shm-and-when-should-i-use-tmp:

最近の2.6 Linuxカーネルリリースでは、共有メモリとしてRAMディスクの形で/ dev / shmを提供し始めました。具体的には、メモリに格納された世界書き込み可能ディレクトリとして提供され始めました。定義された制限がある場合/etc/default/tmpfs。 /dev/shm サポートはカーネル構成ファイルでは完全にオプションです。これは、デフォルトでPulseaudioアプリケーションで最も広く使用されているFedoraおよびUbuntuディストリビューションに含まれています。 [強調除去と追加]

関連情報