web-dev-qa-db-ja.com

同じマウントポイントにマウントされている2つのデバイスのうちの1つをアンマウントするにはどうすればよいですか?

誤って2つの異なるデバイスを/optにマウントしたままにしました。

/dev/xvdf on /opt type ext4 (rw,relatime,seclabel,data=ordered)
/dev/md0 on /opt type ext4 (rw,relatime,seclabel,stripe=256,data=ordered)

/dev/md0をアンマウントするのは問題であり、物事は/optを使用しています。 /dev/md0/dev/xvdfの上にマウントする必要があります。 /dev/xvdfをアンマウントする方法について何か提案はありますか?

試した:

[root@redacted ~]# umount /dev/xvdf
umount: /dev/xvdf: umount failed: Invalid argument

[root@redacted ~]# mount --move /dev/xvdf /temp
mount: bad option. Note that moving a mount residing under a shared
       mount is unsupported.

また、使用中のボリュームを強制的にデタッチすることについて、ボリュームに対するAWSのサポートがあり、それはオプションではありません。

3
Some Linux Nerd

あなたはそれを原子的に行うことはできません。ただし、mount --moveコマンドのシーケンスを使用してそれを行うことができます。また、マウントポイントとして使用する他の2つのディレクトリが必要になります。

cp /etc/mtab /root/mtab-before
mkdir /mnt/shuffle-md0 /mnt/shuffle-xvdf
mount --move /opt /mnt/shuffle-md0
mount --move /opt /mnt/shuffle-xvdf
mount --move /mnt/shuffle-md0 /opt
umount /mnt/shuffle-xvdf
cp /etc/mtab /root/mtab-after

/etc/mtab/dev/xvdfエントリは、結局かなり奇妙に見える可能性があることに注意してください。したがって、開始する前に/etc/mtabのコピーを作成して、完了したらそのエントリを再構築できるようにすることをお勧めします。

マウントポイントをシャッフルしているときに/optを介してパスを開くと、予期しない結果が生じることがあります。ただし、開始する前に開かれたファイルやディレクトリは、この操作の影響を受けません。

3
kasperd

@kasperdソリューションは、次のメッセージを受け取ったため、機能しませんでした。

共有マウントの下にあるマウントを移動することは禁止されています

簡単な解決策は、ファイル/etc/fstab内の問題のあるマウントポイントをコメントアウトし、サーバーを再起動することです。

0
david.perez

実行できるはずです:

umount /dev/xvdf /opt
0
Robert Young