Odpowiedzi:
Najpierw zainstaluj moduł:
sudo apt-get install sshfs
Załaduj go do jądra:
sudo modprobe fuse
Ustawianie uprawnień (wersje Ubuntu <16.04):
sudo adduser $USER fuse
sudo chown root:fuse /dev/fuse
sudo chmod +x /dev/fusermount
Teraz utworzymy katalog do zamontowania zdalnego folderu.
Zdecydowałem się utworzyć go w moim katalogu domowym i nazwać go remoteDir
.
mkdir ~/remoteDir
Teraz uruchomiłem polecenie, aby go zamontować (mount on home):
sshfs maythux@192.168.xx.xx:/home/maythuxServ/Mounted ~/remoteDir
Teraz powinien być zamontowany:
cd ~/remoteDir
ls -l
Skonfiguruj uwierzytelnianie oparte na kluczu ssh
Wygeneruj parę kluczy na lokalnym hoście.
$ ssh-keygen -t rsa
Zaakceptuj wszystkie sugestie, naciskając klawisz Enter.
Skopiuj klucz publiczny do zdalnego hosta:
$ ssh-copy-id -i .ssh/id_rsa.pub user@host
Zainstaluj sshfs
$ sudo apt install sshfs
Zamontuj zdalny katalog
$ sshfs user@host:/remote_directory /local_directory
Nie próbuj dodawać zdalnego fs do / etc / fstab
Lub nie próbuj montować udziałów przez /etc/rc.local.
W obu przypadkach nie będzie działać, ponieważ sieć nie jest dostępna, gdy init czyta / etc / fstab.
Zainstaluj AutoFS
$ sudo apt install autofs
Edytuj /etc/auto.master
Skomentuj następujące wiersze
#+/etc/auto.master.d
#+/etc/auto.master
Dodaj nową linię
/- /etc/auto.sshfs --timeout=30
Zapisz i wyjdź
Edytuj /etc/auto.sshfs
Dodaj nową linię
/local_directory -fstype=fuse,allow_other,IdentityFile=/local_private_key :sshfs\#user@remote_host\:/remote_directory
Nazwa użytkownika zdalnego jest obowiązkowa.
Zapisz i wyjdź
Uruchom autofs w trybie debugowania
$ sudo service autofs stop
$ sudo automount -vf
Obserwuj dzienniki zdalnego serwera ssh
$ ssh user@remote_server
$ sudo tailf /var/log/secure
Sprawdź zawartość lokalnego katalogu
Powinieneś zobaczyć zawartość katalogu zdalnego
Uruchom autofs w trybie normalnym
Zatrzymaj AutoFS działający w trybie debugowania za pomocą CTRL-C.
Uruchom AutoFS w trybie normalnym
$ sudo service autofs start
Cieszyć się
(Testowany na Ubuntu 14.04)
Na podstawie moich eksperymentów, jawne utworzenie grupy bezpieczników i dodanie do niej użytkownika NIE jest wymagane do zamontowania systemu plików ssh.
Podsumowując, oto kroki skopiowane z tej strony:
sshfs
$ sudo apt-get install sshfs
2. Utwórz lokalny punkt montowania
$ mkdir /home/johndoe/sshfs-path/
3. Zamontuj folder zdalny /remote/path
w/home/johndoe/sshfs-path/
$ sshfs remoteuser@111.222.333.444:/remote/path /home/johndoe/sshfs-path/
$ fusermount -u /home/johndoe/sshfs-path/
Zainstaluj sshfs
sudo apt-get install sshfs
Dodaj do fstab:
<USER>@<SERVER_NAME>:<server_path> <local_path> fuse.sshfs delay_connect,_netdev,user,idmap=user,transform_symlinks,identityfile=/home/<YOUR_USER_NAME>/.ssh/id_rsa,allow_other,default_permissions,rw,nosuid,nodev,uid=1000,gid=1000,nonempty 0 0
sshfs
poleceniu, myślę, że nazwa lokalnego katalogu mountpoint jest nazwanaremoteDir
, a kiedy jestem na serwerze ssh, jest katalog,/home/maythuxServ/Mounted
który nie jest montowany lokalnie i nie mogę powiedzieć, lub nieważne, czy jest zamontowany gdzie indziej?