
Проблема:
Я создал bash
скрипт для монтирования/размонтирования SSHFS, используя:
1| dir=$(mktemp -d)
2| sshfs user@server $dir
3| cd $dir
4| bash
5| fusermount -u $dir
6| rmdir $dir
После выполнения этих строк возникает ошибка в строке 5 fusermount -u $dir
и выдается следующее сообщение:
fusermount: failed to unmount /home/tmp/tmp.xxxxxxxxxx: Device or resource busy
В предупреждающем сообщении /home
к пути добавляется вместо только /tmp/tmp.xxxxxxxxxx
. Интересно, rmdir
что затем выдает это сообщение:
rmdir: failed to remove '/tmp/tmp.xxxxxxxxxx': Device or resource busy
... показывая, что $dir
все еще имеет значение /tmp/tmp.xxxxxxxxxx
.
Вопрос:
Почему fusermount
добавляется /home
к пути, когда ресурс занят?
решение1
По-видимому, это правильная версия, которая решила эту проблему:
1| dir=$(mktemp -d)
2| sshfs user@server $dir
3| cd $dir
4| bash
5| cd ..
6| fusermount -u $dir
7| rmdir $dir