Como evitar o congelamento do sshfs?

23

Portanto, a questão é esta:

Instalei o sshfs no Ubuntu 12.04 e estou tentando conectar-me a alguns servidores remotos. Então, inicialmente, a montaria parece bem-sucedida. Às vezes, o Gnome o pega e exibe a caixa "novo dispositivo encontrado" na parte inferior da tela. mas daqui em diante não há muito que funcione. Ou pelo menos não mais. As primeiras vezes que o conectei pareciam funcionar bem, e consegui transferir alguns arquivos, depois desconectei o uso fusermount -u <folder>e, depois de reconectar um pouco mais tarde, o problema começou. Agora, após a execução sshfs -o ServerAliveInterval=15 -o reconnect -C -o workaround=all -o idmap=user root@<host>:/ <folder>, quando altero o diretório para o ponto de montagem, o shell congela. Estranhamente ls -al <folder>funciona ao listar apenas a raiz do sistema remoto, mas nada mais. Além disso, todo explorador de arquivos que tentei congela da mesma forma cd <folder>.

Para mim, parecia que havia algum tipo de fio zumbi ou algo pairando no meu sistema, devido ao fato de que funcionou pela primeira vez, então tentei reiniciar, mas não tive sorte.

sshfs -V dá o seguinte:

SSHFS version 2.3
FUSE library version: 2.8.6
fusermount version: 2.8.6
using FUSE kernel interface version 7.12

Então, sim, alguma idéia?

Andreas Hagen
fonte

Respostas:

17

Se você iniciou o sshfs -o reconnect, interromper o processo SSH fará com que ele se reconecte.

Primeiro encontre o SSH correspondente, por exemplo:

ps -ef
...
user 9644 1 0 11:15 ? 00:00:00 ssh -x -a -oClearAllForwardings=yes -2 <host> -s sftp
...

Você pode diferenciá-lo pelo conjunto distinto de opções e pelo host ao qual você estava conectando o sshfs. Em seguida, mate-o, o SIGTERM regular deve ser suficiente:

kill 9644

Isso deve fazer com que o SSHFS inicie uma nova sessão SSH e o sistema de arquivos montado se tornará responsivo novamente e todos os processos pendurados nela continuarão como se nada tivesse acontecido.

Beli
fonte
FYI: Esta solução parece muito útil para melhorar a robustez das nossas conexões sshfs: askubuntu.com/a/716618/327339 . Ver também # 11 na FAQ aqui: github.com/libfuse/sshfs/blob/master/FAQ
Gabriel Staples
1

Há quanto tempo você espera o congelamento resolver? Pode ser apenas problemas de transmissão entre você e o servidor em questão.

Eu uso sshfs entre o meu sistema e um amigo que mora nos boonies (termo oficial!), Ele está em uma rede sem fio terrestre que ocasionalmente cai (achamos que o receptor está balançando ao vento, perdendo a trava de sinal).

Se eu esperar, ele finalmente sincroniza e faz as coisas, mas, ocasionalmente, fica travado por alguns minutos.

Paciência GrassHopper!

lornix
fonte
2
Tentei esperar um pouco, talvez 10 a 20 minutos, mas sem sorte. Talvez só precise de algumas horas? ^^,
Andreas Hagen
Alguém poderia esperar que não !! Você pode tentar fazer login com sshfs -d' or sshfs -o LogLevel = Debug` (ou 'Debug2') para ativar o modo detalhado ... veja se alguma coisa esclarecedora é impressa.
Lornix 03/07/2012
0

Este é um post antigo e não estou dando uma solução definitiva para isso, mas acho que estava tendo o mesmo problema (no Ubuntu 14.04) e, no meu caso, trabalhos de desmontagem e remontagem preguiçosos (embora seja um pouco chato):

fusermount -u -z /local/folder
sshfs -C user@server:/remote/folder /local/folder

Eu suspeito que você estava apenas vendo resultados armazenados em cache ls -al <folder>.

Sheljohn
fonte