![]() |
ubuntu.com - launchpad.net - ubuntu help
|
|
|||||||
|
Tutorials & Tips The place to find Ubuntu related Tips & Tricks. |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
A Carafe of Ubuntu
![]() Join Date: Jul 2006
Location: Paris
Beans: 106
|
This how-to is intended to help those who want to mount an FTP site as a filesystem using CurlFtpFS.
Yesterday I was told I could mount an FTP site as a filesystem using CurlFtpFS, but I found that on ubuntuforums it isn't well explained. So I searched around the web and the forum posts and finally I have been able to mount properly my FTP site. I decided to make this post to summarize all the information I found to help ubuntu users who want to install CurlFtpFS. First of all, I'm using Ubuntu 6.10 Edgy Eft, but I think you can use this post also whit other Ubuntu versions. If it's the case, don't hesitate to post your problems, suggestions, etcetera. cURLftps package isn't available in Ubuntu, so I downloaded it from Debian. Anyway you must satisfy some dependencies and so you must upgrade some other packages. EDIT: A curlftpfs backport to Edgy is available thanks to mlind here: curlftpfs-0.9.1-1_edgy.tar.bz2 so now you have two ways for installing it. EDIT: curlftpfs is available for Feisty and Gutsy Installing Feisty or Gutsy packages use aptitude or apt-get (I prefer the first one) Code:
sudo aptitude install curlftpfs Installing DEBIAN packages mlind's advice is no to use too many packages from other distribution, so if you want, you can skip this part and try to install the Edgy backport. Anyway, also the second way is a little bit tricky. Download the following packages from http://packages.debian.org (testing) for your processor architecture: libgpg-error0: http://packages.debian.org/testing/libs/libgpg-error0 libgpg-error-dev: http://packages.debian.org/testing/l...bgpg-error-dev libcurl3-gnutls: http://packages.debian.org/testing/libs/libcurl3-gnutls fuse-utils: http://packages.debian.org/testing/utils/fuse-utils curlftpfs: http://packages.debian.org/testing/utils/curlftpfs Install them; supposing you have put them in the folder curlftpfs do: Code:
cd curlftpfs sudo dpkg -i *.deb Use the following command to append the curlftpsfs option to /etc/fstab Code:
sudo echo "curlftpfs#ftpusername:ftppassword@ftp.site.address /path/to/mountpoint fuse allow_other,uid=userid,gid=groupid 0 0" >> /etc/fstab ftpusername is the username to log in the FTP site ftppassword is the password to log in the FTP site userid and groupid are respectively the uid and the gid of your current user of your computer; you can discover them typing Code:
id Installing EDGY packages download the Edgy backport: curlftpfs-0.9.1-1_edgy.tar.bz2 be sure to meet the following dependencies: libc6 (2 2.4-1) libcomerr2 (2 1.33-3) libcurl3 (2 7.15.4-1) libfuse2 (0 (null)) libglib2.0-0 (2 2.12.0) libidn11 (2 0.5.18) libkrb53 (2 1.4.2) libssl0.9.8 (2 0.9.8b-1) zlib1g (2 1:1.2.1) fuse-utils (0 (null)) decompress the archive in an empty directory (or create a new one) Code:
mkdir curlftps-edgy tar xvjf curlftpfs-0.9.1-1_edgy.tar.bz2 -C curlftps-edgy Code:
sudo dpkg -i curlftpfs_0.9.1-1_i386.deb Use the following command to append the curlftpsfs option to /etc/fstab note that this is different from debian packages procedure due to the different curlftpfs version Code:
sudo echo "ftpusername:ftppassword@ftp.site.address /path/to/mountpoint curlftpfs rw,allow_other,uid=userid,gid=groupid 0 0" >> /etc/fstab Code:
sudo ln -s /usr/bin/curlftpfs /sbin/mount.curlftpfs common part Now you need your non-root user to be able to mount the FTP site without sudo. Change the group owner of your ftp mountpoint: Code:
chgrp fuse /path/to/mountpoint Code:
sudo chmod g+w /path/to/mountpoint Code:
addgroup username fuse That's all, now you should be able to mount your preferred FTP site as it were an hard disk. Thaks to: Shinda http://ubuntuforums.org/showthread.php?t=318824 Koybe http://ubuntuforums.org/showthread.php?t=369895 Mlind http://ubuntuforums.org/showthread.php?t=441141
__________________
Debian Lenny user. Don't underestimate the power of *nix manual!!! Code:
geco@biohazard:~$ man man Last edited by geco; May 25th, 2007 at 06:33 PM.. Reason: updating the how-to |
|
|
|
|
|
#2 |
|
A Carafe of Ubuntu
![]() Join Date: Jul 2006
Location: Paris
Beans: 106
|
UPDATE: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
waiting for this post to be approved I asked for Ubuntu packges here:
http://ubuntuforums.org/showthread.p...33#post2664733 as curlftpfs is available for Feisty and Gutsy you can skip the Debian Packages download part. anyway, maybe curlftpfs will be available for Dapper and Edgy too.
__________________
Debian Lenny user. Don't underestimate the power of *nix manual!!! Code:
geco@biohazard:~$ man man |
|
|
|
|
|
#3 |
|
Just Give Me the Beans!
![]() |
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
I had to add a
Code:
curlftpfs ftp://my.ftpsite.com /mount/point/ Last edited by goodtimetribe; May 19th, 2007 at 01:32 AM.. Reason: gave it more thought |
|
|
|
|
|
#4 |
|
First Cup of Ubuntu
![]() Join Date: Aug 2006
Beans: 7
|
For AMD64-users (like me *g*) the edgy-package won't work since it links to some 32bit-Version of libcurl.so.2. I installed it with --force-architecture, but it always brought up an error like "missing library libcurl.so.2 - No such file or directory". Trying to link to the library in /usr/lib(64) gave me an "wrong ELF" error - of course.
Anyway, it works beautifully when installed from source. Download the latest source package (in my case 0.9.1) from Sourceforge (http://sourceforge.net/projects/curlftpfs/). Untar it somewhere and do the obligatory # ./configure # make # make install I did a fresh apt-get upgrade beforehand and had to install libcurl3-dev and libfuse2-dev (iirc), so if configure complains, just try to install any missing fuse or curl packages for Edgy, having an special eye on the -dev ones which are needed. The make procedure dropped the binary in /usr/local/bin which gave me an error when trying to invoke it directly # curlftpfs -V bash: curlftpfs: command not found Maybe it was because I dpkg-installed and removed the abovementioned Edgy-Packet before. So I did a quick # ln -s /usr/local/bin/curlftpfs /usr/bin/curlftpfs And now curlftpfs -V gave me some nice version information, telling me thereby that all seemed to work fine. And indeed it did, at least mounting an FTP-Host directly. Didn't try the fstab-version yet. Hope this is of Help to anyone and thanks for the good Information on the topic so far, guys. Hope this has been a one-time-hassle for me until I upgrade to feisty. PS: The manpage was not installed correctly here, either. But you can bring it up with $ man /usr/local/share/man/man1/curlftpfs.1 Last edited by floyd24; May 23rd, 2007 at 01:00 PM.. Reason: Fixed some typos and added Manpage info |
|
|
|
|
|
#5 |
|
Way Too Much Ubuntu
![]() Join Date: Oct 2005
Location: Belgium
Beans: 250
Ubuntu Jaunty Jackalope (testing)
|
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
I'm trying this in Feisty (by adding it to fstab), but when I have to do 'chgrp fuse /media/nas' (either as root or as me) it says: 'Operation not permitted'.
Anyone know why? i bought a nas, and i initially planned to mount it as a smb share, but smb is way too slow for this (and it hangs nautilus on folders with many files for some reason). Ftp works better (i get double the speed when i transfer files with Filezilla, so i want to be able to do this). Are there any drawbacks to using ftp to share a folder like this, btw? edit: i fixed the first issue, and it mounts fine, but now i get this: Code:
jonne@fry:~$ cd /media/nas jonne@fry:/media/nas$ ls media jonne@fry:/media/nas$ cd media/ jonne@fry:/media/nas/media$ ls ls: reading directory .: Input/output error jonne@fry:/media/nas/media$
__________________
freebase.be Last edited by Jonne; May 25th, 2007 at 03:52 PM.. |
|
|
|
|
|
#6 |
|
5 Cups of Ubuntu
![]() |
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
Hi, i've got a rouble mounting FTPFT with fuse (or any other commandline sw...) because my ISP (aruba.it) send me these detais:
Host : ftp://ftp.MySite.com Login : 123456@aruba.it Pass: 123456 When i try to connect with PHP Code:
PHP Code:
If someone has a solution... let me know....
__________________
Sine requiem bellum in aeternitate con fatum aut contra fatum superbibendus! |
|
|
|
|
|
#7 | |
|
First Cup of Ubuntu
![]() Join Date: Nov 2007
Beans: 1
|
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
Host : ftp://ftp.MySite.com
Login : 123456@aruba.it Pass: 123456 Quote:
|
|
|
|
|
|
|
#8 |
|
First Cup of Ubuntu
![]() Join Date: Jan 2007
Location: Florida, USA
Beans: 9
Xubuntu 7.10 Gutsy Gibbon
|
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
This works fine for me until I try to delete a file. I get an error about a transport endpoint. Then when I try to remount I get this:
Code:
michael@michael-desktop:~$ sudo mount -a fuse: bad mount point `/media/xbox': Transport endpoint is not connected |
|
|
|
|
|
#9 | |
|
First Cup of Ubuntu
![]() Join Date: Aug 2006
Beans: 9
Ubuntu 6.06
|
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
Quote:
I've installed libcurl from source, and curl reports it's using libcurl 7.17.1. However, curlftpfs still reports curlftpfs 0.9.1 libcurl/7.16.4 fuse/2.5 I'm not sure how to make curlftpfs use the latest library I've installed to see if this resolves the problem. (I've seen many mentions of this across the Internet so it does seem to be a general problem for Ubuntu users who have upgraded to v7.10). Best wishes, David. |
|
|
|
|
|
|
#10 | |
|
First Cup of Ubuntu
![]() Join Date: Aug 2006
Beans: 9
Ubuntu 6.06
|
Re: [HOWTO] mount an FTP host as a filesystem using CurlFtpFS
Quote:
In short the solution seems to be: 1. Download the latest curl source (7.17.1 at the time of writing) from http://curl.haxx.se/download.html 2. Compile and install the downloaded version of curl. 3. Copy the new version of curl from /usr/local/lib to /usr/lib. You may need to amend the symbolic link for libcurl.so.3 and libcurl.so.4 in that folder to point at the new libcurl.so.4.0.1. curlftpfs should now see the new version and everything should be well. This is a workaround until Ubuntu's curl version has been updated to the latest by the maintainer, which would avoid these steps and automatically install the new version via an update. Best wishes, David. |
|
|
|
|
| Bookmarks |
| Thread Tools | |
| Display Modes | |
|
|