A. Co to?
Sshfs umożliwia nam podmontowanie zdalnego systemu plików pod własny, lokalny. Do połączenia wykorzystywane jest ssh.
B. Po co?
Wygoda :) Montujemy raz, a potem korzystamy nawet nie zastanawiając się, czy działamy na systemie lokalnym czy zdalnym.
Bezpieczeństwo. Transmisja odbywa się via ssh, a nie np. nieszyfrowanym ftp.
C. Różnice w porównaniu do sftp.
Jedna zasadnicza - działamy bezpośrednio na zdalnym systemie plików.
Łatwo przerabiamy domowy routerek na serwer plików :)
Nie musimy, więc ściągać np. filmu do siebie, lecz odtwarzamy go w locie. Wystarczy nam magazynowanie mp3 w jednym miejscu, czy też bardziej ambitnie - mozemy trzymać na zdalnym serwerze konfiguracje programów
D. Wymagania.
W PLD, będzie to paczka sshfs-fuse, w Archu extra/sshfs.
Oczywiście wraz z zależnościami.
E. How-to
1. Instalujemy potrzebne paczki
2. Ładujemy moduł fuse
# modprobe fuse
Możemy go oczywiście dodać, do odpowiedniego pliku konfiguracyjnego, żeby był ładowany automatycznie przy starcie (PLD: /etc/modules, Arch:/etc/rc.conf)
3.Montowanie
$ sshfs uzytkownik@serwer:/home/uzytkownik/jakis_katalog/ /home/users/moj_uzytkownik/katalog_w_ktorym_zamontujemy/
W jednej linii oczywiście
Voila!
4.Odmontowywanie
Musimy być w grupie fuse:
# usermod -A fuse moj_uzytkownik $ fusermount -u /home/users/moj_uzytkownik/katalog_w_ktorym_zamontujemy/
F. Automatyczne montowanie przy starcie systemu
a. moduł fuse musi być załadowany (pkt E1)
b. generujemy klucze do automatycznego uwierzytelniania https://wiki.rootnode.net/Ssh
Edytujemy /etc/fstab
sshfs#sshfs uzytkownik@serwer:/home/uzytkownik/jakis_katalog/ /home/users/moj_uzytkownik/katalog_w_ktorym_zamontujemy/ uid=1001,gid=100,umask=0,allow_other 0 0
W jednej linii oczywiście
gdzie uid oczywiście równy uid'owi naszego użytkownika, lub gid równy grupie która ma miec dostęp do zamontowanych zasobów.
G. Problemy
/dev/fuse powinno mieć następujące uprawnienia:
# ls -l /dev/fuse crw-rw-rw- 1 root fuse 10, 229 2008-02-21 10:25 /dev/fuse
Jednak udev woli nadawać im uprawnienia root:root
Jak temu zaradzić?
Nauczyć udeva ;p
# echo "KERNEL==\"fuse\", GROUP=\"fuse\"" >> /etc/udev/rules.d/91-permissions.rules

wieeeeeeeeelkie dzięki
wieeeeeeeeelkie dzięki
Dodaj nową odpowiedź