SSHFS è meraviglioso. Può montare directory remote in una directory locale con FUSE . I comandi seguenti usano #
per indicare che un comando è stato eseguito come root
, mentre $
indica l'esecuzione come utente normale. Poiché è richiesto il software FUSE, assicurarsi innanzitutto che sia disponibile e in esecuzione.
Uno dei comandi lsmod
e grep
, di seguito, può rivelare se il software è caricato e pronto per l'uso. Un risultato da entrambi i comandi indica che fuse
è disponibile.
# lsmod | grep fuse
$ grep -i fuse /lib/modules/$(uname -r)/modules.builtin
Se non ci sono risultati da nessuno dei comandi, provare a caricare il modulo del kernel senza riavviare usando modprobe
e ricontrollare.
# modprobe fuse
# lsmod fuse
Se il caricamento del modulo non riesce, installare il software con apt-get
.
# apt-get install fuse
Ricontrolla dopo l'installazione.
# modprobe fuse
# lsmod fuse
FUSE deve essere installato e in esecuzione prima di continuare.
Controlla le autorizzazioni di /dev/fuse
. Le autorizzazioni dovrebbero fornire al tuo account utente normale l'accesso in lettura e scrittura. Salta questa parte se hai stabilito che il tuo account utente normale ha già permesso di leggere e scrivere /dev/fuse
.
# ls -l /dev/fuse
L'output potrebbe essere simile a uno dei seguenti.
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)
Nel 2013, il mio Debian ha creato /dev/fuse
con 0600
permessi, proprietario root
, proprietario del gruppo fuse
. Avevo bisogno di consentire al gruppo di fusibili di utilizzare il dispositivo e di aggiungere il mio account utente normale al gruppo, come mostrato di seguito.
# usermod -aG fuse $your_regular_user_account
# chmod 0660 /dev/fuse
Se era richiesta la nuova appartenenza al gruppo, disconnettersi e accedere nuovamente per diventare un membro del gruppo.
Quindi, installare ssh
su entrambi i lati come segue.
# apt-get install ssh
Questa risposta è stata scritta per Debian, ma su Ubuntu 18.x almeno, openssh-client
, fuse
, e pochi altri pacchetti sono una parte del Ubuntu sshfs
pacchetto. Il sshfs
software è richiesto sul lato client, ma può essere installato su entrambi i lati se lo si desidera. Una delle dipendenze del pacchetto è fuse
, ma il programma di installazione salta il software che è già stato installato.
# Ubuntu 18.x:
# apt-get install sshfs
Con fuse
e ssh
disponibile e con il permesso di utilizzare il dispositivo /dev/fuse
, creare un punto di montaggio per il file system remoto; e, montare quel file system remoto localmente come segue.
# mkdir /mnt/$directory_name
# chown $your_user:$group /mnt/$directory_name/
$ sshfs $remote_username@$remote_server_name: /mnt/$directory_name/
Per montare una directory diversa da home, specificarla dopo i due punti.
$ sshfs $remote_username@$remote_server_name:/remote/directory /mnt/$directory_name
Per smontare, utilizzare fusermount
.
fusermount -u /mnt/$directory_name
Se hai una macchina Windows, anche questa può usare SSHFS con win-sshfs . Questo software "mapperà un'unità" con SSHFS, in modo da poter avere una lettera di unità di Windows che contiene la directory remota.