回答:
読み取り専用bind-mountを作成できます。
mount --bind /path/to/source/ /path/to/dest/
mount -o bind,remount,ro /path/to/dest
はい、これはLinuxカーネル2.6.25以降のカーネルで2つのステップで実行する必要があります(理由については上記のリンクを参照してください)。
または、代わりに、/etc/fstab
行の例refとして:
/path/to/source/ /path/to/dest/ none bind,ro
どちらのアプローチでも、バインドマウントは仮想ファイルシステムレイヤー(VFS)に存在するため、これはどのファイルシステムにも固有ではなく、実際に何かを「マウント」することもありません。したがって、基本的に、これは一種のシンボリックリンクを作成しますが、そのようには表示されません。
そして、データ損失に関する以下のコメントに返信するために...いいえ、これらの指示はファイルを削除しません。宛先パスにファイルが存在する場合、このマウントはこれを覆います。マウントを解除するだけで、その下のファイルシステムのパスにファイルをリストできます。さらに良い。一般的に、空でない宛先パスの上にマウントすることは避けてください。
mount -o bind,remount,ro /path/to/dest
参照してください。
mount -o remount,ro /path/to/dest
次のエラーが表示されます:mount: mount point is busy.
@gertvdijk
1つのコマンドでバインド読み取り専用をマウントするには:
mount --bind -r /path/to/source/ /path/to/dest/
アンマウントする
umount /path/to/dest/