tmpfs
無効にする方法/run/shm
? initscriptsを検索した結果、次のコードがinitscriptsのエントリを確認していることがわかりましたfstab
。しかし、マウントされないようにするには何を変更する必要がありますか/run/shm
?私はDebian sidを実行しています。
/lib/init/mount-functions.sh
read_fstab_entry () {
# Not found by default.
found=1
for file in "$(eval ls $(fstab_files))"; do
if [ -f "$file" ]; then
while read MNT_FSNAME MNT_DIR MNT_TYPE MNT_OPTS MNT_FREQ MNT_PASS MNT_JUNK; do
case "$MNT_FSNAME" in
""|\#*)
continue;
;;
esac
if [ "$MNT_DIR" = "$1" ]; then
if [ -n "$2" ]; then
[ "$MNT_TYPE" = "$2" ] || continue;
fi
found=0
break 2
fi
done < "$file"
fi
done
return $found
関数呼び出しポイント
if read_fstab_entry /run/lock; then
if [ "$MNT_TYPE" = "tmpfs" ] ; then
RAMLOCK="yes"
else
RAMLOCK="no"
fi
fi
〜の後
if [ yes = "$RAMLOCK" ]; then
domount "$MNTMODE" tmpfs shmfs /run/lock tmpfs "-o${NODEV}noexec,nosuid$LOCK_OPT"
# Make sure we don't get cleaned
touch /run/lock/.tmpfs
else
chmod "$LOCK_MODE" /run/lock
fi
答え1
何を達成したいのか明確ではありません。デフォルトでは、(少なくともDebian wheezyでは)/run/shm
サブディレクトリ/run
がtmpfsとしてマウントされます。したがって、/run/shm
マウントポイントになりたくない場合は、デフォルト設定を変更しないでください。/run/shm
のエントリを作成すると、/etc/fstab
ファイルシステムタイプを指定した場合にのみマウントされます。それ以外の場合は、その/dev/shm
場所にバインドマウントされます。 No /run/shm
tmpfs はサポートされている構成ではありません。他の種類のファイルシステムを使用するには、fstabエントリを作成し、それ以外の引数で呼び出されるように編集します/etc/init.d/mountall.sh
。何をしてもモードが1777で、最後のブートで残ったファイルがないことを確認してください。/etc/init.d/mountdevsubfs.sh
mount_shm
mount
mount_update
/run/shm
答え2
#
コメントとして表示するには、fstab-Entryの前に配置します。
continue
スクリプトを見ると - ステートメントで - ブランチがトリガーされ、その行をcase
スキップします。
答え3
その項目の説明を読んで/etc/default/tmpfs
、ファイルを編集(追加RAMSHM=no
)して、保存して再起動してください。