回答:
このテクノロジーはカーネルに組み込まれているため、追加のツールは必要ありません。実際、既にいくつかのRAMディスクがあります(使用しないでください、システム用に予約されています)。
grep -w tmpfs /proc/mounts
にマウントされた2GB RAMディスクをセットアップするには/ramdisk
、次の行を追加します/etc/fstab
。
ramdisk /ramdisk tmpfs mode=1777,size=2g
次に、コマンドを使用してディスクをマウントしmount /ramdisk
ます(これは再起動時に自動的に行われます)。
指定されたサイズは最大であり、ディスクはその上にあるファイルと同じだけのメモリを使用します。
/tmp
RAMディスクに変更できます。/etc/fstab
上記の行に、/tmp
ではなくを入れて/ramdisk
から再起動します。
/tmp
RAMディスクに変更した後に最初に再起動すると、あったファイルは/tmp
非表示になります。少しのディスクスペースを浪費していることを除いて、これは無害です。(RAMディスクで再起動した後に)それらをクリーンアップできます/tmp
mount --bind / /mnt
rm -r /mnt/tmp/* /mnt/tmp/.*
umount /mnt
このmount --bind
コマンドは/mnt
、ルートファイルシステムの複製ビューを作成します。しかし、RAMディスク/tmp
はルートビュー上で不明瞭になりますが、不明瞭なものはありません/mnt/tmp
。
追加:/tmp
再起動せずにRAMディスクに切り替えることができます。これはもう少し複雑です。/etc/fstab
上記のように行を追加し、次のコマンドを実行します。
mkdir /tmp.old
mount --bind /tmp /tmp.old
mount /tmp
cd /tmp
ln -s /tmp.old/* /tmp/.* .
次に/tmp.old
、再起動後に削除します。
ファイルをから/tmp.old
に移動できないの/tmp
は、一部の重要なプログラムでファイルが開かれている/tmp
ためです。たとえば/tmp/.X11-unix/X0
、Xサーバーがリッスンし、すべてのGUIプログラムが起動時に開きます。ファイルを別のファイルシステムに移動するということは、そのファイルをコピーして古いファイルシステムを削除することを意味するため、Xサーバーは引き続きリッスンし/tmp.old/.X11-unix/X0
ますが、Xクライアント/tmp/.X11-unix/X0
は無駄に接続します。サーバーでは、注意すれば動きを逃れるかもしれません。
/tmp
ことのみtmpfs
です。それは必要ではなく、答えを編集して方法を説明しましたが、もっと複雑です。mkfs
準備する基礎となるストレージがないため、関与する必要はありません。カーネルがすべてを処理します。
/tmp
、ディスク上で同期の頻度が上がるため)が、これは信頼できない主観的な印象です。ベンチマークを試みたことがありません。