Curlftpfs
Un article de WindowsLinux.Net - Astuces pour Windows et Linux.
Sommaire |
Explications
curlftpfs repose sur Fuse.
Fuse veut faciliter le développement de programmes afin de monter toutes sortes de systèmes de fichiers (ssh, ftp, webdav, etc...).
Vous pouvez visiter le site officiel : http://fuse.sourceforge.net/
Une liste des systèmes de fichiers pouvant être utilisés avec Fuse se trouve sur cette page :
http://fuse.sourceforge.net/wiki/index.php/FileSystems
Installation
Installer le paquet :
aptitude install curlftpfs
Les dépendances suivantes seront aussi installées : curlftpfs libcurl3-gnutls
Le module Fuse doit être chargé en mémoire, taper la commande suivante :
modprobe fuse
Pour charger le module automatiquement à chaque démarrage de l’ordinateur, il faut ajouter "fuse" dans le fichier "/etc/modules".
Pour monter le FTP, utiliser une commande du type :
$ curlftpfs ftp://ServeurFTP /mnt -o user=Login:MotDePasse
Néamoins le mot de passe du serveur FTP reste en mémoire dans /home/UserName/.bash_history
Configuration
Afin de sécuriser le mot de passe, il faut ajouter uine ligne dans "\.netrc" :
machine ServeurFTP login VotreLogin password VotreMotDePasse
Note : Plusieurs serveurs FTP peuvent être ajoutés dans ce fichier, à hauteur d'un serveur FTP par ligne.
Note : Si "\.netrc" n’existe pas, il faut le créer et limiter son accès à un seul utilisateur :
$ chmod 600 ~\.netrc
Avec ce nouveau fichier, la commande suivante devrait fonctionner :
$ curlftpfs ftp://ServeurFTP /mnt
Désormais n'importe quelle application peut accéder à ces fichiers.
Le démontage peut se faire avec :
$ fusermount -u /mnt
ou (la commande classique avec root) :
# umount /mnt
Montage automatique
Utiliser mount
# mount -t fuse curlftpfs#ServeurFTP /mnt
Note : Le système de fichier utilisé ci-dessus est fuse, pour curlftpfs.
Insertion dans /etc/fstab
fstab permet de monter automatiquement la partition au démarrage de l’ordinateur à condition que le fichier « .netrc » soit créé pour root et que le réseau soit actif lors du montage des partitions.
Voici une ligne d'exemple à mettre dans /etc/fstab :
curlftpfs#ServeurFTP /mnt fuse defaults 0 1
Cette ligne n'autorise que root.
Pour autoriser d'autres utilisateurs, il faut utiliser la ligne suivante :
curlftpfs#ServeurFTP /mnt fuse allow_other 0 1
ATTENTION ! Ceci autorisera TOUS les utilisateurs du système...
Eléments complémentaires
Les temps d'accès peuvent être long par Internet. Il est donc préférable d'utiliser ce système dans un réseau local.
Liens
La F.A.Q. officielle : http://fuse.sourceforge.net/wiki/index.php/SshfsFaq

