Dégradation gracieuse SSHFS au lieu de geler lorsque la connexion est perdue. C'est possible?


9

Un programme tiers écrira des fichiers dans un répertoire monté SSHFS. En cas de perte de la connexion Internet, le programme tiers risque de planter (gravement), car tous les programmes essayant d'accéder à un tel répertoire monté SSHFS dans un tel état (lorsqu'il n'y a pas de connexion Internet) sont placés dans ce que certains décrivent comme "ininterruptible". sommeil". SSHFS a une option pour se reconnecter automatiquement, mais cela n'aide pas, car le programme tiers sera toujours bloqué (et bloquera) si la connexion est perdue (même si la connexion est restaurée, SSHFS remontera le répertoire). Autofs ne va pas aider, fondamentalement, il s'agit du comportement de SSHFS lorsque la connexion est perdue. Pourquoi ne peut-il pas se comporter comme un répertoire réseau partagé (Samba ou autre moyen) et simplement renvoyer une erreur plus tôt que… jamais?

Existe-t-il des alternatives à SSHFS si SSHFS ne peut pas fonctionner comme décrit?

Autre info:

OS: J'utilise Ubuntu Linux (12.04 LTS)


S'il vous plaît expliquer ce que vous faites exactement. J'imagine que vous montez un système de fichiers distant utilisant sshfs sur une machine Linux locale, est-ce vrai? Peut-être inclure votre /etc/fstab? Avez-vous essayé autofs avec l' softoption?
terdon

@terdon Un programme tiers écrira des fichiers dans un répertoire monté SSHFS. Si la connexion Internet est perdue, le programme tiers risque de planter (gravement). SSHFS a une option pour se reconnecter automatiquement, mais cela n'aide pas, car le programme tiers sera toujours bloqué (et bloquera) si la connexion est perdue (même si la connexion est restaurée, SSHFS remontera le répertoire). Autofs ne va pas aider, fondamentalement, il s'agit du comportement de SSHFS lorsque la connexion est perdue. Pourquoi ne peut-il pas se comporter comme un répertoire réseau partagé (Samba ou autre moyen) et simplement renvoyer une erreur plus tôt que… jamais?
Andrei

Merci pour la mise à jour, mais merci de l'inclure dans votre question car tout le monde ne lit pas les commentaires. Incluez également les fichiers de configuration que vous utilisez. Quelle est la valeur de ssh timeout, etc.? Je ne dis pas que je connais la réponse, mais simplement que plus vous avez d'informations dans votre question, plus il est probable que vous obtiendrez une bonne réponse. Dans l'état actuel des choses, il est difficile de comprendre quelle est exactement votre configuration.
terdon

@terdon Merci, j'ai presque complètement remplacé ma question.
Andrei

Beaucoup mieux :). Ajoutez également le système d'exploitation que vous utilisez. Est-ce Linux, OSX, un autre Unix?
terdon

Réponses:


0

En bref: Non. Parce que le blocage provient de l'application, l'échec de sshfs est gracieux. Il indique à l'application d'attendre. - le fait que l'application ne respecte pas cela n'est pas la faute de SSHFS.

L'application ferait exactement la même chose si elle accédait à un fichier stocké sur un périphérique de stockage amovible, tel qu'un lecteur USB, et que vous le supprimiez. L'application doit capturer et gérer les événements de délai d'attente sur les E / S au lieu de rester bloquée dans l'attente de la réponse.


-2

Problème triste. J'ai essayé sshfs plusieurs fois dans le passé.

Dès que la connexion est perdue, les applications accédant aux fichiers du dossier monté se bloquent et se bloquent. Même les terminaux. MAIS les applications ne savent même pas qu’elles attendent. C'est quelque chose au niveau du noyau qui ne peut pas gérer sshfs en leur disant d'attendre indéfiniment ... même le démontage ne fonctionne pas et se bloque parfois, car le dossier monté est verrouillé d'une manière ou d'une autre au niveau du système de fichiers.

Pourquoi cela ne se produit-il pas lorsque je débranche un lecteur USB?

Ce problème existe depuis des années maintenant ...

La reconnexion automatique n'aide pas si vous ne pouvez pas rétablir une connexion à tout moment. (Dans mon cas, j'ai Kerberos Tickes qui s'épuise).

Désolé mais je dois dire: sshfs est inutilisable!
(sauf dans les cas où une connexion n'est jamais perdue)

Je finis toujours par utiliser scp à la place. Question triste

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.