Как выполнить sshfs посредством команды ssh?

Я пытался выполнить sshfs через ssh в одной команде.

Например, если я делаю:

$ ssh user@host
user@host$ sshfs host:/src /target

Все в порядке. Теперь, если я попробовал это в одной команде:

ssh -t "sshfs host:/src /target"

Но не смонтированная точка. При помощи sshfs параметра отладки кажется, что объем смонтирован и сразу размонтирован когда законченное соединение SSH.

Я также пытался выполнить sshfs в оболочке входа в систему, но результатом является то же при выходе из оболочки:

ssh -t "/bin/sh -l -c sshfs host:/src /target && /bin/sh"

Что случилось? Есть ли друг друга лучший способ?

3
задан 23 August 2014 в 11:12
2 ответа

Когда вы выходите из удаленной оболочки, все дочерние процессы, запущенные через эту оболочку, убиваются, потому что родитель (оболочка) убивается, когда вы выходите из оболочки.

Чтобы избежать этого вы можете использовать команду nohup:

ssh -t "nohup sshfs host:/src /target"

Таким образом, после выхода из системы родитель процесса sshfs станет процессом с id 1, а монтировка останется неизменной

.
4
ответ дан 3 December 2019 в 05:12

Для автоматического монтирования файловой системы SSHFS, когда кто-то пытается получить доступ к этому пути, лучше использовать autofs.

.
3
ответ дан 3 December 2019 в 05:12

Теги

Похожие вопросы