tar
単一のシェルスクリプトで、ボリューム、マウントされたボリュームの内容をマウントし、マウントされたボリュームをアンマウントする必要があります。
だから私は次のようにコーディングしました。
$ cat sample.sh
sudo mount -o loop Sample.iso /tmp/mnt
cd /tmp/mnt
tar-cvf /tmp/sample.tar *
sudo umount /tmp/mnt
エラーが発生しました。umount: /tmp/mnt: device is busy.
だから確認してみた
$ lsof /tmp/mnt
現在の「sh」ファイルを出力します。だから私は/tmp/mnt
現在スクリプトが使用中であると自信を持っていました(この場合はSample.sh)。
同じスクリプトにメソッド(install、tar、uninstall)がありますか?
ポリスチレン:スクリプトの完了後に/tmp/mntボリュームをアンマウントできます。
ベストアンサー1
削除するには、次のようにディレクトリを終了する必要があります。
#!/bin/bash
sudo mount -o loop Sample.iso /tmp/mnt
cd /tmp/mnt
tar -cvf /tmp/sample.tar *
#Got to the old working directory. **NOTE**: OLDPWD is set automatically.
cd $OLDPWD
#Now we're able to unmount it.
sudo umount /tmp/mnt
今は正しいです。