Přeskočit na obsah

Sshfs

Z Wikiverzity

sshfs je zkratka pro SSH FileSystem.

Je to nástroj, kterým si namotovat na lokální souborový systém vzdálený souborový systém (prostřednictvím fusermount) a tak s ním pracovat, jako by to byl souborový systém na našem počítači. Příkaz sshfs může používat i řadový uživatel, který nemá rootovská práva.

Postup

[editovat]

Správce systému (s rootovskými právy) musí:

  • nainstalovat balík deb:sshfs (automaticky s dalšími dependencemi, jako např. fuse a fusermount):
 aptitude install sshfs

(Při konfiguračním dotazu, která skupina uživatelů k tomu má mít přístup, zpravidla ponecháme nabízenou možnost "fuse" a necháme ji následně vytvořit - Ano.)

  • nainstalovat modul fuse, např. příkazem:
 modprobe fuse

(pokud to neprojde, podíváme se, jestli máme nainstalovaný modul /lib/modules/verze_jádra/kernel/fs/fuse/fuse.ko)

  • uživatele, kteří chtějí fuse používat, přidat do skupiny fuse, např. příkazem:
 usermod -aG fuse login_uzivatele

Uživatelovi pak stačí:

  • po přidání skupiny administrátorem se odlogovat a znovu zalogovat a ověřit si, že je ve skupině fuse
 groups
  • vytvořit si v části filesystému, kde má příslušná práva (např. ve svém domácím adresáři), montovací bod (tj. prázdný adresář), např:
 mkdir ABCD
  • přimontovat si k tomuto bodu vzdálený adresář, ke kterému má přístup přes ssh, příkazem:
 sshfs muj-login@abcd-server.domena.cz: ABCD

V případě, že náš SSH kanál běží na jiném portu, než na standardním 22, je nutno uvést i číslo portu:

 sshfs muj-login@abcd-server.domena.cz:adresář ABCD -p cislo_portu

(Pokud nevyplníme adresář, míní se tím domácí adresář, jinak je to adresář relativně k domácímu. Absolutní cesta k adresáři musí bezprostřeně za dvojtečkou začínat lomítkem.)

Pro ještě jednodušší připojení kanálem SSH je výhodné mít ve svém domácím konfiguračním souboru .ssh/config definovaný přístup ke vzdálenému serveru, např:

Host abcd-server
    Hostname abcd-server.domena.cz
    User muj-login
    port 6543

(číslo portu jen v případě, že se nepoužívá standardní ssh port 22). (Adresář .ssh by neměl být přístupný ostatním uživatelům, neboť obsahuje důvěrná přístupová data, např. klíče!) Potom stačí při montování zadat pouze:

 sshfs abcd-server: ABCD

Odmontování pak provede uživatel příkazem např:

 fusermount -u ~/ABCD