SSHFS é maravilhoso. Ele pode montar diretórios remotos em um diretório local com o FUSE . Os comandos abaixo são usados #
para indicar que um comando foi executado como root
, enquanto $
indica a execução como um usuário comum. Como o software FUSE é necessário, primeiro verifique se ele está disponível e em execução.
Um dos comandos lsmod
e grep
, abaixo, pode revelar se o software está carregado e pronto para uso. Um resultado de qualquer comando indica que fuse
está disponível.
# lsmod | grep fuse
$ grep -i fuse /lib/modules/$(uname -r)/modules.builtin
Se não houver resultado de nenhum dos comandos, tente carregar o módulo do kernel sem reiniciar usando modprobe
e verifique novamente.
# modprobe fuse
# lsmod fuse
Se o carregamento do módulo falhar, instale o software com apt-get
.
# apt-get install fuse
Verifique novamente após a instalação.
# modprobe fuse
# lsmod fuse
O FUSE deve estar instalado e funcionando antes de continuar.
Verifique as permissões de /dev/fuse
. As permissões devem fornecer à sua conta de usuário comum acesso de leitura e gravação. Pule esta parte se tiver determinado que sua conta de usuário comum já possui permissão de leitura e gravação /dev/fuse
.
# ls -l /dev/fuse
A saída pode ser algo como um dos seguintes.
crw-rw-rw- 1 root root (all users can read/write)
crw------- 1 root fuse (only root can read/write)
crw-rw---- 1 root fuse (root and members of fuse group can read/write)
Em 2013, meu Debian criou /dev/fuse
com 0600
permissões, proprietário root
, proprietário do grupo fuse
. Eu precisava deixar o grupo de fusíveis usar o dispositivo e adicionar minha conta de usuário comum ao grupo, como mostrado abaixo.
# usermod -aG fuse $your_regular_user_account
# chmod 0660 /dev/fuse
Se a nova associação ao grupo for necessária, efetue logout e logon novamente para se tornar um membro do grupo.
Em seguida, instale ssh
nos dois lados da seguinte maneira.
# apt-get install ssh
Essa resposta foi escrito para Debian, mas no Ubuntu 18.x, pelo menos, openssh-client
, fuse
, e alguns outros pacotes são uma parte do Ubuntu sshfs
pacote. O sshfs
software é necessário no lado do cliente, mas pode ser instalado nos dois lados, se desejado. Uma das dependências do pacote é fuse
, mas o instalador ignora o software que já foi instalado.
# Ubuntu 18.x:
# apt-get install sshfs
Com fuse
e ssh
disponível e com permissão para usar o dispositivo /dev/fuse
, crie um ponto de montagem para o sistema de arquivos remoto; e monte esse sistema de arquivos remoto localmente da seguinte maneira.
# mkdir /mnt/$directory_name
# chown $your_user:$group /mnt/$directory_name/
$ sshfs $remote_username@$remote_server_name: /mnt/$directory_name/
Para montar um diretório diferente de home, especifique-o após os dois pontos.
$ sshfs $remote_username@$remote_server_name:/remote/directory /mnt/$directory_name
Para desmontar, use fusermount
.
fusermount -u /mnt/$directory_name
Se você possui uma máquina Windows, ela também pode usar SSHFS com win-sshfs . Este software "mapeia uma unidade" com SSHFS, para que você possa ter uma letra de unidade do Windows que contenha o diretório remoto.