マウント中にマウントポイント「裏」が見えますか? [コピー]

マウント中にマウントポイント「裏」が見えますか? [コピー]

2つのパーティションがあります。 1 つは / にマウントされ、もう 1 つは /crypt にマウントされます。私はbindマウント/crypt/home/home/および他のさまざまなマウント)を使用しています。

問題は今、元の/homeディレクトリを見る必要がありますが、もちろん/crypt/home

ログインが必要なため削除できません。つまり、/home が使用中であるという意味です。

/homeUSBスティックなどから起動せずに元のディレクトリのファイルにアクセスできる方法(他のバインドマウントなど)はありますか?

答え1

ルートでログインした場合は、問題なくインストールできます/home。しかし、これが不可能な場合は、単にmount --bind / /elsewhere。デフォルトでは、--bind型マウントは再帰的ではありません。したがって、マウントされたファイルシステムは、他の場所にマウントされたときには従わないことに注意してください/--bindあなたできるただし、他の場所には再帰的にインストールされます--rbind

たとえば、

findmnt /esp; findmnt /

TARGET SOURCE    FSTYPE OPTIONS
/esp   /dev/sda1 vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro

TARGET SOURCE                FSTYPE OPTIONS
/      /dev/sda2[/arch_root] btrfs  rw,relatime,compress-force=lzo,ssd,space_cache,autodefrag

ご覧のようにインストールさ/espれています/

mkdir /tmp/root
sudo mount --bind / /tmp/root
ls /esp /tmp/root/esp

/esp:
EFI/  shellia32.efi*  shellx64.efi*

/tmp/root/esp:

これでファイルを次の場所に配置しました/tmp/root/esp

sudo touch /tmp/root/esp/blank_file
ls /esp /tmp/root/esp

/esp:
EFI/  shellia32.efi*  shellx64.efi*

/tmp/root/esp:
blank_file

/espそのため、インストールされたディレクトリにファイルを作成しました。願いより?

sudo umount /boot /esp; ls /esp
blank_file

sudo mount -a; ls /esp
EFI/  shellia32.efi*  shellx64.efi*

しなければならなかったumount /boot そして /esp実際に/boot/esp。どちらもそこにあります/etc/fstab。だからmount -a戻ってきたのです。

関連情報