私のライブディスクをパーティションごとに1つのrsync/dev/sdb
として2番目のディスクにコピー(試行)するスクリプトを作成しました。/dev/sda
フルスクリプト)。
最後のステップはにgrubをインストールすることです/dev/sda
。私が使用する方法は次のとおりです。
- /dev/sda ルートパーティションをマウントします。
/mnt/root1
- /mnt/root1 にマウント {/dev,/sys/,/proc} バインディング:
# mount -o bind /sys /mnt/root1/sys
# mount -o bind /proc /mnt/root1/proc
# mount -o bind /dev /mnt/root1/dev
- chrootedを実行し
update-grub
、grub-install
次を実行します/dev/sda
。
chroot /mnt/root1 update-grub
chroot /mnt/root1 grub-install /dev/sda
- 3つのバンドルのアンインストール:
# umount /mnt/root1/sys
# umount /mnt/root1/proc
# umount /mnt/root1/dev
しかし、/mnt/root1/dev
umountは失敗します。
# umount /mnt/root1/dev
umount: /mnt/root1/dev: target is busy.
メモ:mount コマンドは以下を提供/dev
します/mnt/root1/dev
。
udev on /dev type devtmpfs (rw,nosuid,relatime,size=8131896k,nr_inodes=2032974,mode=755,inode64)
udev on /mnt/root1/dev type devtmpfs (rw,nosuid,relatime,size=8131896k,nr_inodes=2032974,mode=755,inode64)
私の質問は:バインドインストールがどのようにそんなに忙しいのですか?解決策はありますか?
編集する:/mnt/root1/dev を使用してマウント解除できましたが(マンページを理解すると実際にマウントされたことを隠します)、umount --lazy
私には適していないようです。
関連質問:https://stackoverflow.com/questions/7878707/how-to-unmount-a-busy-device
ベストアンサー1
さまざまな考慮事項から始めてください。
同様のことを達成するときは、以下をインストールすることをお勧めします。
山--タイププロセス/proc /mnt/root1/proc これは、procが特殊なファイルシステムであり、常に自動的に認識されるかどうかわからないためです。しかし、その目的と特性のために/ procにバインドする必要はありません(そうではありませんか?)。
/sys および /dev の場合は、以下を好みます。
ㅏ:山--rbind/sys /mnt/root1/sys (mount --rbind /dev /mnt/root1/dev)
なぜなら、再帰的にマウントする必要があるからです (/sys と /dev のサブディレクトリも心配する必要があります)
第二:
山--make-rslave/mnt/root1/sys (mount --make-rslave /mnt/root1/dev)
あなたの質問についてはこれが重要です。
一つのためスレーブマウントホストから電波を受信しますが、その逆ではありません。削除してイベントはその方向にのみ伝播されます。
この重要な点を確認したら、次のことができるはずです。umount -R /mnt/root1/dev.