現在のプロジェクトでは、ファイルがtmpfsのマウントポイントにマウントされていることを示すmountコマンドの出力を見ることができます。
tmpfs on /etc/hostname type tmpfs (rw,relatime,size=52724k)
tmpfs on /etc/hosts type tmpfs (rw,relatime,size=52724k)
tmpfs on /etc/passwd type tmpfs (rw,relatime,size=52724k)
tmpfs on /etc/ntp.conf type tmpfs (rw,relatime,size=52724k)
tmpfs on /etc/resolv.conf type tmpfs (rw,relatime,size=52724k)
渡すマンページマウントはディレクトリをマウントポイントとしてのみ使用することに注意してください。
上記のようにファイルをインストールしようとしましたが、うまくいきませんでした。
root@raspberrypi:/home# file /tmp/agner
/tmp/agner: ASCII text
root@raspberrypi:/home# mount -t tmpfs tmpfs /tmp/agner
mount: mount point /tmp/agner is not a directory
バインドマウント構文:
mount --bind olddir newdir
mount --rbind olddir newdir
'/tmp'ディレクトリはtmpfsにマウントされます。
tmpfs on /tmp type tmpfs (rw)
次の組み合わせを試しましたが、「fs」が存在しないエラーが発生します。
root@raspberrypi:/home# mount --rbind tmpfs /tmp/agner
mount: special device tmpfs does not exist
root@raspberrypi:/home# mount --bind tmpfs /tmp/agner
mount: special device tmpfs does not exist
root@raspberrypi:/home# mount --bind /tmp/ /tmp/agner
mount: mount point /tmp/agner is not a directory
また、-t tmpfsファイルシステムオプションが指定されている場合は、マウントマニュアルページが表示されます。
root@raspberrypi:/home# mount -t tmpfs --bind tmpfs /tmp/agner
したがって、これを達成するには、mountコマンドにどのようなオプションが必要ですか?
答え1
はい、バインドマウント職場で。
最初は理解できませんでした。しかし調査を終えて/proc/self/mountinfo
、よりよく理解しました。
https://www.kernel.org/doc/Documentation/filesystems/proc.txt
共有:X選択フィールドはキャッチとインストールID、親ID手がかりも用意されています。
既存のケース:
47 14 0:30 /hostname /etc/hostname rw,relatime shared:21 - tmpfs tmpfs rw,size=52724k
52 14 0:30 /etc/passwd /etc/passwd rw,relatime shared:21 - tmpfs tmpfs rw,size=52724k
37 34 0:30 / /DATA/var/volatile rw,relatime shared:21 - tmpfs tmpfs rw,size=52724k
36 35 0:30 / /var/volatile rw,relatime shared:21 - tmpfs tmpfs rw,size=52724k
/var/揮発性でファイルを作成/コピー:
touch /var/volatile/hostname
mount --bind /var/volatile/hostname /etc/hostname