Too Cool for Internet Explorer

Fil-systemer via SSH og FTP


Smid din grimme FTP-klient langt væk og glem alle dine scp scripts: FUSE er din nye ven. FUSE står for 'File-system in User SpacE' og er her mest interessant i selskab med sine to udvidelser sshfs og curlftpfs.

Forestil dig nu at du sidder hjemme, og skal til at rydde op på din godt fyldte 35MB sandkasse-konto så du kan overføre din nye fine kildekode og starte test-kørsler på bastion-serverne. Du kører naturligvis linux så du fyrer op under en terminal, ssh'er til DIKU og går igang med cd blabla og rm -rf detEne og ll detAndet. Herefter skal du logge af brok igen og til at køre scp minKildeKodeMappe burgernavn@brok.diku.dk:mit/sære/dir så du kan kopiere filer op.

Forestil dig nu istedet at du i terminalen skriver

mkdir ~/DIKUHome
sshfs burgernavn@brok.diku.dk: ~/DIKUHome

Du kan herefter blot navigere ind i mappen ~/DIKUHome, som nu er et virtuelt fil-system som peger på din diku-konto, og foretage alle dine ændringer. Forskellen er bare at denne gang kan du benytte auto-completion når der kopieres i terminalen eller du kan benytte din yndlings-grafiske-file-manager (nautilus btw) som nogengange er lidt bedre til overblik end ls -la.

Endnu bedre bliver det når man istedet for sine grimme og tunge FTP-klienter kan nøjes med

mkdir ~/MyHomePage
curlftpfs ftp://burgerNavn:parseWord@ftp.host.dk ~/MyHomePage

hvorefter man har fuld adgang til sin FTP-server. Hjemmesiden kan nu mountes og indholdet oploades med hjemmelavede bash-scripts og man behøver ikke bekymre sig om klienten nu understøtter 'passive mode' når man fifler i længere tid (suk). Alternativt kan man nu redigere direkte på hjemmesiden med sin yndlingseditor (gvim btw).

Alt dette kan kombineres med mange andre smarte programmer til håndtering af fil-systemer. Se eksempelvis autofs, som først mounter når mappen forsøges tilgået eller læs om fstab filen som gør at mapper bliver mountet så snart linux startes. Encfs tilgår krypterede systemer, og der er sågar lavet et gmailfs (nedlægger muligvis din gmail-konto) samt wikipediafs (rediger wikipedia-artikler med din yndlingseditor?). Blandt de mere praktisk anvendelige virtuelle fil-systemer bør også nævnes: NTFS-3G som tilsyneladende giver read-write adgang til Microsofts NTFS fil-system fra Linux.

Opsummering

mkdir ~/DIKUHome
sshfs burgernavn@brok.diku.dk: ~/DIKUHome
mkdir ~/MyHomePage
curlftpfs ftp://burgerNavn:parseWord@ftp.host.dk ~/MyHomePage
.. Naviger .. rediger .. 
sudo umount ~/DIKUHome
sudo umount ~/MyHomePage

De sidste to gøres naturligvis før man mister sin net-forbindelse til Arriva-bussen og synkroniseringen af fil-systemet dør.

Installation

For at få disse herligheder til at virke skal fuse, sshfs og curlftpfs naturligvis være installeret. I *ubuntu er FUSE normalt installeret fra starten, så det eneste der her behøves er

sudo apt-get install sshfs curlftpfs

og så er man klar. Det er muligt at sshfs brokker sig over manglende rettigheder, men dette kan løses med:
sudo chmod a+r /etc/fuse.conf

Hvilket giver alle læse-rettigheder til FUSE's konfigurationsfil.

Yderligere læsning

rene's billede

Mac, OSX

Til folk der bruger Mac, kan jeg varmt anbefale programmet Macfusion, som bygger på FUSE og gør det super nemt at mounte sin hjemmemappe på Diku, så den er lige til at finde i Finder.

Eks.
Macfusion ScreenMacfusion Screen