LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> sshfs - ke vzdáleným souborům šifrovaně a interaktivně

Občas je potřeba pracovat se soubory, které jsou na jiném počítači, řešeními jsou nfs, samba, webdav, ..., tj. varianty, které nemusí být vždy dostupné, a sshfs.

5.4.2006 06:00 | MaReK Olšavský | Články autora | přečteno 13031×

Poměrně nedávno jsem řešil, jak připojit soubory z notebooku k mému stolnímu počítači. Nabízela se řešení: Samba, WebDav, NFS, ale vše vyžadovalo na notebooku instalaci dalšího software a jeho konfiguraci. Řešení (když chci z jiného počítače něco nastavit, případně překopírovat nějaký soubor), které by bylo nejlepší, by bylo takové, jenž by využilo to, co mám již nainstalováno na notebooku a tím je běžící sshd. Toto řešení se jmenuje sshfs (ssh file system) a "objevil" jsem jej díky zprávičce z 21.11.2005 na Linuxsoft.cz od o.k. Uplatnění tohoto programu nenajdete jen u případu podobného mému, ale i pokud máte ssh přístup na server a nemůžete na něm instalovat jiný, výše zmíněný, systém pro přístup k souborům. Já si přes sshfs připojuji notebook, kde mám běžící LAMP, na lokálním počítači edituji soubory, které jsou na něm uložené a nemusím řešit synchronizaci kódů a dokumentů mezi několika počítači, na kterých průběžně pracuji.

Sshfs se opírá o fuse* (filesystem in userspace), což je utilitka/modul, který umožňuje i neprivilegovaným uživatelům vytvářet a používat, bez psaní jakéhokoliv kódu do jádra, virtuální systém souborů připojený do toho svého. Modul byl přidán i do jádra 2.6.14, čiže by měl být brzo součástí všech aktuálních linuxových distribucí. Mezi jinými je tento modul používán v projektu GmailFS, který umožňuje připojit Gmail jako další souborový systém (nebo disk, chcete-li).

Pokud chcete sshfs používat, musíte mít ssh přístup na vzdálený počítač, ke kterému se chcete takto připojovat a budete moci pracovat pouze se soubory, ke kterým máte patřičná oprávnění na vzdáleném stroji.

Nainstalování a používání sshfs.

Fuse je zatím potřeba v některých distribucích instalovat ručně ze zdrojových kódů, pro některé (u mě Ubuntu 5.10 a dnes již i Mandriva) jsou již balíčky připravené, stejně je tomu u celého sshfs. Instalaci začneme logicky u fuse.

Po stažení a rozbalení potřebného souboru (nejméně verze 2.2) lze přistoupit k jeho překladu a instalaci. K překladu budete potřebovat vývojářskou verzi glib 2.0 či novější. Kompilace fuse probíhá standardně trojkombinací ./configure && make && make install. Po tomto kroku by bylo teoreticky možné začít kompilovat sshfs, to by se Vám pravděpodobně i dobře zkompilovalo, ale nefungovalo. Fuse se nainstaluje do adresáře /user/local/lib, je třeba ověřit existenci této cesty v /etc/ld.so.conf a případně jako root tuto cestu přidat. V dalším kroku doporučuji spustit ldconfig. Pokud jste kompilovali modul ze zdrojových kódů, budete muset ještě "ručně" vytvořit patřičný speciální znakový soubor a to příkazem:

mknod -m 666 /dev/fuse c 10 229

a přípojný bod, kam budete externí systém souborů připojovat (v mém případě jsem zvolil logicky /mnt/fuse). Poté již můžete modul zavést použitím modprobe fuse, já jsem fuse ještě přidal do /etc/modules, aby mi automaticky nabíhal při každém startu počítače, protože jej poměrně intenzivně používám.

Po instalaci fuse je možné přistoupit k instalaci sshfs. Opět je možné podstoupit instalaci ze zdrojových kódů pomocí ./configure && make && make install. Je-li pro Vaši distribuci připraven binární balík, bude tento mít pravděpodobně závislost na fuse, za standardních podmínek si vyžádá jeho instalaci (nepoužíváte-li některou z distribucí, které nehlídají závislosti) a nebudete muset procházet krok z předchozího odstavce. Pokud chcete používat sshfs i jako běžný uživatel, možná (někdy zůstane dostupný jen pro roota) budete muset přenastavit práva pro soubory sshfs a fusermount.

Souborový systém vzdáleného počítače připojíme pomocí příkazu:

sshfs [uživatel@]vzdálený_stroj:[vzdálený_adresář] lokální_přípojný_bod [volby]

(například k domácímu skladišti se připojuji pomocí sshfs marek@192.168.1.3:/ /mnt/fuse -C). Pokud za dvojtečku za názvem nebo IP adresou, nezadáte startovní adresář, ke kterému pochopitelně musíte mít oprávnění přistupovat, budete nasměrováni do domovského adresáře toho uživatele, jehož přihlašovací jméno jste použili. Pokud nezadáte jméno uživatele, bude se Vás sshfs snažit připojit pod stejným jménem, pod kterým jste přihlášeni na počítači. Volby/přepínače jsou uvedeny poněkud netradičně jako poslední. Jejich seznam získáte pomocí sshfs -h, já používám s oblibou -C pro zapnutí komprimovaného přenosu, protože většinou edituji textové soubory, pokud bych zpracovával třeba komprimované grafické formáty, touto volbou v podstatě nic nezískám a -d, když chci mít náhled, co se při komunikaci děje.

Pokud jste došli sem a dělali jste všechno stejně jako já, máte v adresáři /mnt/fuse připojený vzdálený souborový systém a můžete pracovat. Zde si neodpustím menší varování. Pokud máte udělány linky do jiných adresářů nebo na soubory umístěné na disku, budou Vám ty na vašem počítači fungovat korektně, ale ty, které máte na vzdáleném už fungovat nemusí. Zdůvodnění je prosté. Když mám jako uživatel na vzdálenému počítači udělánu v domovském adresáři zkratku html (symlink), který vede na /var/www/, tak připojím-li se nyní přes sshfs, vstoupím do domovkého adresáře a zkusím cd html, povede mi v absolutních cestách, tj. na lokálním počítači na /var/www.

Pro odpojení vzdáleného souborového systému se nepoužívá příkaz sshfs s přepínačem, ale fusermount [přepínač] lokální_připojovací_bod. Přepínače získáte pomocí fusermount -h a pro odpojení budete používat nejpravděpodobněji -u, nebo -z. Před odpojením uzavřete všechny soubory, které jste ze vzdáleného počítače měli otevřené, jinak Vám fusermount nedovolí odpojení.

K čemu sshfs je a k čemu není?

Pokud potřebujete občas překopírovat pár souborů, je vhodnějším řešením použít ftp klienta (existují i terminálové, scripty ovladatelné), jeho bezpečnou variantu ftps, případně chcete-li zautomatizovat vše do scriptů a máte vygenerovány certifikáty, lze použít scp. Nemusíte nic instalovat. Zde je sice možné použít sshfs, ale ostatní řešení jsou mnohem výhodnější.

Pokud potřebujete pracovat na vzdáleném stroji, je zapotřebí používat telnet nebo ssh. Sshfs Vám zpřístupní vzdálené soubory, ale veškeré programy/příkazy spouštíte lokálně na svém počítači. Ilustrujme situaci následovně. Pokud na vzdáleném stroji (ideálně odlišné architektury) máte uložené zdrojové kódy a bez určení architektury stroje je zkompilujete, budou spustitelné na počítači, ze kterého jste je kompilovali, nikoliv na stroji kde jsou uloženy a pokud překladači sdělíte cílovou architekturu a pokusíte se je spustit z počítače, ze kterého jste připojeni, také pohoříte (není myšleno spuštění třeba přes ssh, ale přímo na Vašem stroji, kde si jen vyberete pracovní adresář, který bude "navázán" přes sshfs na vzdálený stroj).

Dalším velice nevhodným použitím sshfs je následující způsob archivace dat ze vzdáleného stroje. Připojíte vzdálený počítač přes sshfs, spustíte tar, s paramety pro zkomprimování, pro vytvoření záloh vzdáleného stroje. Opět, uvažte především rychlost, s jakou bude celá tato operace prováděna. Archív bude vytvářen na Vašem stroji, veškerá data budou v nezkomprimované podobě (komprese ssh příliš nezefektivní) stahována na Váš počítač a teprve tam je zpracuje archivační program. Pokud neurčíte místo, bude archiv přenášen zpět na "zdrojový" stroj a posléze si jej budete moci překopírovat k sobě. Zde je opět mnohem vhodnější kombinací mít vygenerovány certifikáty, použít ssh pro odeslání příkazů pro vytvoření archívu a posléze je překopírovat pomocí rsync, nebo scp na Váš cílový stroj.

Sshfs je opravdu především nástrojem pro interaktivní práci se soubory na vzdáleném počítači ke kterému máte povolený ssh přístup.

Závěr

Sshfs nabízí něco, co může být pro spoustu uživatelů, kteří jsou mobilní mezi několika desktopy a mají ssh přístup k "serveru",  výhodou. Pracujete lokálně na svých souborech, které máte uloženy třeba doma na desktopu a máte je přístupné pěkně v souborovém systému. Já používám tento systém k přístupu k souborům na mém notebooku, který defakto funguje, jako přenosný vývojový WWW server a jsem s tímto řešením 100% spokojen.

Odkazy

http://www.cs.wm.edu/~zvezdan/research/780project/ ... Velice detailní popis toho, jak sshfs funguje.
http://fuse.sourceforge.net/ ... Domovská stránka projektu FUSE
http://fuse.sourceforge.net/sshfs.html ... Domovská stránka projektu sshfs
*/FUSE je i na tomto serveru již popisovaný emulátor Sinclair ZX-Spectrum. Dokonce autor tohoto FUSE, neznal emulátor FUSE, je autorem spectemu, který byl také popisován v článku o emulátorech Sinclaira. :-D

Verze pro tisk

pridej.cz

 

DISKUZE

MC 5.4.2006 09:07 Jan Rathousky
L Re: MC 5.4.2006 09:28 o.k.
  L Re: MC 5.4.2006 09:40 MaReK Olšavský
Notebook + ztráta spojení 5.4.2006 10:18 Jan Obrátil
|- Re: Notebook + ztráta spojení 5.4.2006 10:47 MaReK Olšavský
L Re: Notebook + ztráta spojení 5.4.2006 11:13 o.k.
  L Re: Notebook + ztráta spojení 5.4.2006 11:44 Jan Obrátil
    L Re: Notebook + ztráta spojení 5.4.2006 11:56 o.k.
      L Re: Notebook + ztráta spojení 5.4.2006 19:22 Aleš Hakl
        |- Re: Notebook + ztráta spojení 5.4.2006 19:53 Jan Obrátil
        L Re: Notebook + ztráta spojení 6.4.2006 09:35 o.k.
vzdálený klient 5.4.2006 11:18 Milan Knížek
shfsmount 5.4.2006 11:45 Filip Krejčí
  L Re: shfsmount 5.4.2006 12:06 MaReK Olšavský




Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

13.9.2017 8:00 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt – tentokrát netradičně v pondělí: 18. září od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

3.9.2017 20:45 /Redakce Linuxsoft.cz
PR: Dne 21. září 2017 proběhne v Praze konference "Mobilní řešení pro business". Hlavní tématy konference budou: nejnovější trendy v oblasti mobilních řešení pro firmy, efektivní využití mobilních zařízení, bezpečnostní rizika a řešení pro jejich omezení, správa mobilních zařízení ve firmách a další.
Přidat komentář

15.5.2017 23:50 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt, který se bude konat ve čtvrtek 18. května od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

12.5.2017 16:42 /Honza Javorek
PyCon CZ, česká konference o programovacím jazyce Python, se po dvou úspěšných ročnících v Brně bude letos konat v Praze, a to 8. až 10. června. Na konferenci letos zavítá např. i Armin Ronacher, známý především jako autor frameworku Flask, šablon Jinja2/Twig, a dalších projektů. Těšit se můžete na přednášky o datové analytice, tvorbě webu, testování, tvorbě API, učení a mentorování programování, přednášky o rozvoji komunity, o použití Pythonu ve vědě nebo k ovládání nejrůznějších zařízení (MicroPython). Na vlastní prsty si můžete na workshopech vyzkoušet postavit Pythonem ovládaného robota, naučit se učit šestileté děti programovat, efektivně testovat nebo si v Pythonu pohrát s kartografickým materiálem. Kupujte lístky, dokud jsou.
Přidat komentář

2.5.2017 9:20 /Eva Rázgová
Putovní konference československé Drupal komunity "DrupalCamp Československo" se tentokrát koná 27. 5.2017 na VUT FIT v Brně. Můžete načerpat a vyměnit si zkušenosti z oblasti Drupalu 7 a 8, UX, SEO, managementu týmového vývoje, využití Dockeru pro Drupal a dalších. Vítáni jsou nováčci i experti. Akci pořádají Slovenská Drupal Asociácia a česká Asociace pro Drupal. Registrace na webu .
Přidat komentář

1.5.2017 20:31 /Pavel `Goldenfish' Kysilka
PR: 25.5.2017 proběhne v Praze konference na téma Firemní informační systémy. Hlavními tématy jsou: Informační systémy s vlastní inteligencí, efektivní práce s dokumenty, mobilní přístup k datům nebo využívání cloudu.
Přidat komentář

15.4.2017 15:20 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě IoT a radiokomunikace? Přijď na sraz spolku OpenAlt, který se bude konat ve středu 19. dubna od 18:30 v Šenkovně (Sokolská 60, Praha 2).
Přidat komentář

5.3.2017 19:12 /Redakce Linuxsoft.cz
PR: 23. března proběhne v Praze konferenci na téma Cloud computing v praxi. Hlavními tématy jsou: Nejžhavější trendy v oblasti cloudu a cloudových řešení, Moderní cloudové služby, Infrastruktura současných cloudů, Efektivní využití cloudu, Nástrahy cloudových řešení a jak se jim vyhnout.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

18.9.2017 14:37 / Rojas
high security vault

15.9.2017 7:33 / Wilson
new zealand childcare jobs

31.8.2017 12:11 / Jaromir Obr
Re: ukůládání dat ze souboru

30.7.2017 11:12 / Jaromir Obr
Národní znaky

27.7.2017 12:24 / Jaromir Obr
Cteni/zapis

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2017) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze