vim can't open files under curlftpfs directory

Bug #120018 reported by qq274980
46
This bug affects 6 people
Affects Status Importance Assigned to Milestone
curlftpfs (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Binary package hint: curlftpfs

I'v mount a remote AIX ftp directory to local.

Commands of ls,cat,du can work well , but when i edit a file use vi (vim7.0),
the vim screen frozen and i can't use the mounted direcotry any more.
I had to remout the ftp directory.

curlftpfs --version (curlftpfs 0.9 libcurl/7.15.5 fuse/2.5)
vim --version (VIM - Vi IMproved 7.0 (2006 May 7, compiled May 22 2007 21:25:19) )

Revision history for this message
Frank S. Thomas (fst) wrote :

This bug vanishes when curlftpfs is built against libcurl >= 7.16 and it is a duplicate of http://bugs.debian.org/391009.

Revision history for this message
qq274980 (qq274980) wrote :

I'v reported that curlftpfs 0.9 + libcurl 7.15.5 works unnormal with aix ftpserver,
( https://bugs.launchpad.net/ubuntu/+source/curlftpfs/+bug/120018 )
so,i update curlftpfs to 0.9.1 and update libcurl to 7.16.2,things goes even badder.

with curlftpfs 0.9.1 + 7.16.2 ( mount remote aix ftp direcotry to local linux system ):
files and directories older than six month are displayed error with a space before it.

I had to modify ftpfs-ls.c ,
 line 61:
               /* "%5s" "%*c" year */
               "%5s" SPACES /* year */
line 73:
               /* "%5s" "%*c" year */
               "%5s" SPACES /* year */

thing goes well, i can list direcotries and vi files now .
NOTICE!! havn't test under other ftpservers !!

files lists by aix ftpserver is:
-rw-r--r-- 1 smisdep tsgrp 502 Nov 16 2006 card_type
-rw-r--r-- 1 smisdep tsgrp 3853069 Nov 22 2006 info.txt
-rw-r--r-- 1 smisdep tsgrp 7827 Nov 22 2006 inst.txt
-rw-r--r-- 1 smisdep tsgrp 12590 Dec 01 2006 m_bmw_data_fhyzhdzd.txt
-rw-r--r-- 1 smisdep tsgrp 15054 Dec 01 2006 m_bmw_data_dwyqtdwwl.txt
-rw-r--r-- 1 smisdep tsgrp 201344 Dec 11 2006 888
-rw-r--r-- 1 smisdep tsgrp 81308 Dec 21 10:23 111.txt
-rw-r--r-- 1 smisdep tsgrp 4533 Dec 21 10:26 create_cardapp_tabel.sql
-rw-rw-rw- 1 smisdep tsgrp 1528 Dec 25 15:31 makeGroup.log
-rw-r----- 1 smisdep tsgrp 12753 Dec 25 16:37 makegroup.sql
-rw-r--r-- 1 smisdep tsgrp 128 Dec 28 10:44 wlq.sql

files modifed at 2006 have double space before it's name ,and those modifed at 2007
have only one space before it's name.

Revision history for this message
Steven Harms (sharms) wrote :

Is this still an issue in Intrepid or Jaunty?

Changed in curlftpfs:
status: New → Incomplete
Revision history for this message
qq274980 (qq274980) wrote :

Version(0.9.2-1) with Intrepid still has this problem.
On aix, timestamp display in two format : if file was modifed no longer than one year ,displayed like this, "Jan 06 14:28", if not ,will display "May 22 2008". Length of the two format not the same.

it's output of Aix home directory. Two space before name of ".esradm".
ftp> ls
200 PORT command successful.
150 Opening data connection for /bin/ls.
total 2216
-rw------- 1 zjkf db2iadm1 1306 Jan 06 14:28 .dbxhist
-rw-rw-r-- 1 zjkf db2iadm1 80 May 22 2008 .esradm
-rwxrwxr-x 1 zjkf db2iadm1 53 Mar 11 2008 .exrc
-rw-rw-r-- 1 zjkf db2iadm1 108167 Oct 21 20:25 .kkksss

linux output after 'curlftpfs ftp://zjkf/ a',
-rw-rw-r-- 1 root root 467528 2008-12-23 13:59 dbx
-rw-rw-r-- 1 root root 80 2008-05-22 00:00 .esradm
-rwxrwxr-x 1 root root 53 2008-03-11 00:00 .exrc
drwxrwxr-x 2 root root 256 2008-12-03 19:26 hp
-rw-rw-r-- 1 root root 195524 2008-12-23 14:02 lasb_change
-rw-r----- 1 root root 18904 2009-01-08 20:06 profile090108

.esradm no longer a hidden file under linux, it has name '[space].esradm'
but directory 'hp' works well.

biff@lenovo:~$ date
Mon Jan 12 10:15:39 CST 2009

biff@lenovo:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=8.10
DISTRIB_CODENAME=intrepid
DISTRIB_DESCRIPTION="Ubuntu 8.10"

biff@lenovo:~$ uname -a
Linux lenovo 2.6.27-9-generic #1 SMP Thu Nov 20 21:57:00 UTC 2008 i686 GNU/Linux

biff@lenovo:~$ dpkg -s curlftpfs
Package: curlftpfs
Status: install ok installed
Priority: optional
Section: utils
Installed-Size: 112
Maintainer: Ubuntu MOTU Developers <email address hidden>
Architecture: i386
Version: 0.9.2-1

Revision history for this message
qq274980 (qq274980) wrote :

I'v save output to a file , see the attachment.

Revision history for this message
nils (internationils) wrote :

This is still a problem under the latest intrepid, and I'm fairly sure I've seen the exact same behavior on my Jaunty machine as well.
curlftpfs 0.9.2 libcurl/7.18.2 fuse/2.7

vim fails with E667: Fsync failed (and the data is NOT written to the file)
cp fails with an cp: closing 'filename.txt' input/output error, but the file IS created and written properly.
kate complains about not being able to save the file as well, but DOES write it

I'm willing to run test cases, let me know what's needed.

Revision history for this message
fuhrysteve (fuhrysteve) wrote :

vi is able to make a backup copy of whatever 755 file i try to edit in my curlftpfs mounted directory (i.e. original: somefile.php, backup: somefile.php~), but editing it gives me this error in vi:
"test.php" E507: Close error for backup file (add ! to override)

I mounted like this:
sudo curlftpfs -o allow_other ftp://user:<email address hidden> /home/steve/mydirectory/

and I have tried many other variations of mounting the directory with curlftpfs with no success. Apparently the IT guys were able to get it working on whatever machines they were using:

"....Actually they created a "test" FTP subuser for your account and had no problems to edit the classes.php file over curlftpfs....."

hope this was helpful

Revision history for this message
nils (internationils) wrote :

good ideas for testing. I just tried:

- Situation 1: create a directory (755), touch a file in it, then vi it, Result: E677, no backup file, no data in it.
- Situation 2: chmod the directory to 770, vi the file in the dir, E507, backup file exists, but no data in either file (the backup file being empty is OK since the orig file was empty)
- Situation 3,4: chmod the dir to 777 and try vi-ing the file and chmodding the file to 666 and trying the vi is the same as situation 2

a cp in that dir with 777 privs also gives the IO error, but the file is created with the right content.

Anyone in the mood to write a perl or C test script that tries several write-close-fsync combinations out to narrow down the problem? Funnily enough kate writes the file but complains,and vi does not write and complain... maybe a different order of when the backup is created/written, or a bug in kate that writes the main file even if the backup fails?

Revision history for this message
nils (internationils) wrote :

I've created a Kate bug: https://bugs.launchpad.net/ubuntu/+source/kdesdk/+bug/345268 Maybe the resolution of that will shed some light on what fuse is and is not doing right.

This bug is currently marked as INCOMPLETE, why? what's needed to complete it?

Revision history for this message
obluda (obluda) wrote :

i have the same issue for a couple of months, what's needed to complete it?

Revision history for this message
obluda (obluda) wrote :
Revision history for this message
Gioacchino Mazzurco (gmazzurco89) wrote :

also affect karmic koala with curlftps0.9.2-1build1

Changed in curlftpfs (Ubuntu):
status: Incomplete → New
Revision history for this message
skyjumper (x-skyjumper-launchpad) wrote :

I'm seeing this in lucid, curlftpfs_0.9.2-1build1 is still the latest available

Revision history for this message
jockie (m-launchpadnet-jockie-de) wrote :

Also experiencing the problem in Lucid Lynx.
   curlftpfs 0.9.2 libcurl/7.19.7 fuse/2.7

Revision history for this message
Kevin (kkd) wrote :

Can confirm obluda's advice to downgrading does work in lucid.

Revision history for this message
JanMalte (janmalte) wrote :

I'm affected too. Working with Lucid and curlftpfs 0.9.2 libcurl/7.19.7 fuse/2.7

janmalte@desktop:~$ ls -al /tmp/remote-folder-malte/public_html/kunden/bergdolt/
insgesamt 48
drwxrwxrwx 2 janmalte www-data 4096 2010-08-03 10:47 .
-rwx------ 1 janmalte www-data 32422 2010-08-03 10:47 GPL.txt
-rwxr-xr-x 1 janmalte www-data 8857 2010-08-03 10:43 index.php
-rw-r--r-- 1 janmalte www-data 0 2010-08-03 10:44 test.txt
janmalte@desktop:~$ rsync -trv /srv/www/bergdolt/GPL.txt /tmp/remote-folder-malte/public_html/kunden/bergdolt/ --temp-dir=/tmp/
sending incremental file list
GPL.txt
rsync: close failed on "/tmp/remote-folder-malte/public_html/kunden/bergdolt/GPL.txt": Input/output error (5)
rsync: copy "/tmp//.GPL.txt.97WFVr" -> "GPL.txt": Input/output error (5)

sent 32495 bytes received 31 bytes 13010.40 bytes/sec
total size is 32422 speedup is 1.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1060) [sender=3.0.7]
janmalte@desktop:~$ cp /srv/www/bergdolt/index.php /tmp/remote-folder-malte/public_html/kunden/bergdolt/
cp: Schließen von „/tmp/remote-folder-malte/public_html/kunden/bergdolt/index.php“: Input/output error

Revision history for this message
Al Williams (wd5gnr) wrote :

Still a problem, but downgrading fixed it here also.

Revision history for this message
Alan Lord (theopensourcerer) wrote :

Am on Lucid server and am getting lots of Input/Output errors when copying files from a local drive to a curlftpfs mounted system.

This is in a script and so I am not able to test for a sane exit of the copy command due to these errors. I tried to downgrade but there's a bit of dependency hell going on and this is a production server...

libertus@fruity:~$ sudo dpkg -i curlftpfs_0.9.1-3+b2_amd64.deb
Selecting previously deselected package curlftpfs.
(Reading database ... 54668 files and directories currently installed.)
Unpacking curlftpfs (from curlftpfs_0.9.1-3+b2_amd64.deb) ...
dpkg: dependency problems prevent configuration of curlftpfs:
 curlftpfs depends on libkrb53 (>= 1.6.dfsg.2); however:
  Package libkrb53 is not installed.
dpkg: error processing curlftpfs (--install):
 dependency problems - leaving unconfigured
Processing triggers for man-db ...
Errors were encountered while processing:
 curlftpfs
libertus@fruity:~$ sudo apt-get install libkrb5
libkrb5-15-heimdal libkrb53 libkrb5-dbg libkrb5-ruby libkrb5-ruby1.9 libkrb5-ruby-doc
libkrb5-25-heimdal libkrb5-3 libkrb5-dev libkrb5-ruby1.8 libkrb5-ruby1.9.1 libkrb5support0
libertus@fruity:~$ sudo apt-get install libkrb53
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libkrb53 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  krb5-pkinit libkrb5support0 libkrb5-3 libk5crypto3 libgssapi-krb5-2
E: Package libkrb53 has no installation candidate

Changed in curlftpfs (Ubuntu):
status: New → Confirmed
Revision history for this message
rmbell (rmbell) wrote :

I can also confirm that downgrading to 0.9.1-3+b2 has worked for me on 10.10. You just need an additional package, being here: http://packages.ubuntu.com/natty/libkrb53

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.