[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Re (2): Apparent disagreement between df and cp.



On 28/06/12 16:18, peasthope@shaw.ca wrote:
From:	Berni Elbourn<berni421@gmail.com>
Date:	Thu, 28 Jun 2012 08:32:29 +0100
Are there too many files in target folder?

197 files here whereas Wikipedia mentions 65,460 files for "32 KB" clusters.

From:	Chris Davies<chris-usenet@roaima.co.uk>
Date:	Thu, 28 Jun 2012 08:47:21 +0100
What is the output of "mount | grep sdd1" ...

peter@dalton:~$ mount | grep sdd1
/dev/sdd1 on /media/4345-A417 type vfat (rw,nosuid,nodev,uhelper=udisks,uid=1000
,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush)

... and also "df -i /dev/sdd1"?

peter@dalton:~$ df -i /dev/sdd1
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sdd1                  0       0       0    -  /media/4345-A417

That can't be right.

The remedy is to move files to a subdirectory.

Seems the problem is deeper such as a bug in the software
which makes the filesystem.  Any further ideas before I go
off to study FAT filesystems?

Thanks everyone,         ... P.

Ok, I've just tested this. It is a FAT filesystem limitation.

On FAT12 (and FAT16, iirc) there is a limit of 512 files in the root directory. Other directories don't have this limit.

Ok, you don't have 512 files, *but* you're using it as VFAT, which uses extra directory entries to store additional entries (long filenames etc) for each file, thus reducing the number of files that can be stored.

(Incidentally, FAT file systems don't use inodes as such, so none will show).

I created a filesystem the same size as yours with mkfs.vfat, then did a simple:

  for i in $(seq 1 255);do touch Longfilename$i;done

After 173 files had been written, I got:

  touch: cannot touch `Longfilename174': No space left on device

and

dom@oz:/mnt$ df -k .
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/loop0        498368     0    498368   0% /mnt

(I used a file to test, not a physical drive as I didn't have one to hand).

Try creating a subdirectory on that drive and storing the files in there instead.

--
Dom


Reply to: