Sou administrador de sistema de um servidor multiusuário, onde os alunos do nosso departamento têm contas shell. Um de nossos usuários solicitou a instalação sshfsnele. Estou debatendo se seria sensato instalar sshfsconforme sugerido.

Minha principal preocupação é se uma montagem FUSE poderia tornar nosso servidor menos confiável. Na minha experiência, coisas ruins podem acontecer aos servidores quando um servidor NFS fica indisponível repentinamente - a média de carga dispara e você pode não ser capaz de desmontá-lo de forma limpa, a ponto de uma reinicialização forçada ser necessária. Se um servidor montado com FUSE desaparecer repentinamente, quão difícil será limpar a bagunça? Existem outras catástrofes ou pegadinhas prováveis ​​que eu deva considerar?

Pelo menos com NFS, apenas root pode montar, e podemos escolher montar servidores NFS que consideramos razoavelmente confiáveis.

Vamos supor que nossos usuários não tenham intenções hostis, mas podem fazer coisas estúpidas acidentalmente. Além disso, não estou realmente preocupado com o conteúdo dos sistemas de arquivos que eles podem montar, uma vez que nossos usuários já têm acesso ao shell e podem copiar qualquer coisa que quiserem para seu diretório pessoal.

answer

Usei o FUSE com sshfs e HDFS. sshfs parece ser muito confiável, eu nunca vi um pânico ou travamento forte. HDFS otoh causou vários travamentos. Isso foi investigado com atenção, contanto que não vejamos uso pesado de hdfs, tudo é estável.

Eu vi os sistemas host do sshfs desaparecerem sem efeitos nocivos. HDFS causou todos os tipos de problemas. Isso me deixa com a impressão de que o sshfs é bastante estável.

Eu sugeriria testar muito I / O e ver como o sshfs lida com isso, espero que ele lide com isso como um campeão.

Parece (corrija-me se eu estiver errado) que você está pensando em instalar o FUSE-sshfs em seu servidor. Você pode estar confuso sobre como funciona: o FUSE-sshfs deve ser instalado nas máquinas clientes. O servidor precisa de mais do que já precisa: o servidor SSH.

O "potencial de um FUSE montar para desestabilizar um servidor Linux" é "algum".

Vale a pena entender a natureza do FUSE. FUSE ele não é intrinsecamente instável. É um código de kernel (relativamente maduro) que fornece uma maneira de executar 'drivers' de espaço do usuário para vários sistemas de arquivos. Destina-se a sistemas de arquivos de teste ou 'brinquedo', ou aqueles que não 'pertencem' ao kernel, ou aqueles que ainda estão em fluxo, ou seja, que podem ser instáveis, no entanto, dado que o driver roda no espaço do usuário, qualquer problema no código do driver user-land é um pouco isolado do kernel. Desta forma, é indiscutivelmente mais estável do que executar código imaturo no kernel.

A estabilidade exata depende mais de qual módulo FUSE você está usando. Usei sshfs um pouco e nunca tive um problema de estabilidade. O sistema de arquivos para de responder se eu perder a conexão com o servidor SSH, mas isso é esperado, obviamente.