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
- Rasmuss blog
- log ind eller opret konto for at skrive kommentarer


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 Screen