Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am using XFS on small HDD (/dev/sdb1, less than 150G) and storing many small files (-32KB). df -h and -i show that it has available space.

# df -hv
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             127G   19G  102G  16% /
tmpfs                  16G     0   16G   0% /lib/init/rw
udev                   16G  168K   16G   1% /dev
tmpfs                  16G     0   16G   0% /dev/shm
/dev/sda1              99M   20M   75M  21% /boot
/dev/sdb1             136G  123G   14G  91% /mnt/sdb1
# df -iv
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda3            8421376   36199 8385177    1% /
tmpfs                4126158       5 4126153    1% /lib/init/rw
udev                 4124934     671 4124263    1% /dev
tmpfs                4126158       1 4126157    1% /dev/shm
/dev/sda1              26112     222   25890    1% /boot
/dev/sdb1            24905120 11076608 13828512   45% /mnt/sdb1

However I got No space left on device error.

# touch /mnt/sdb1/test
touch: cannot touch `/mnt/sdb1/test': No space left on device

I think inode64 issue is not related to this case because drive is less than 1TB and df -i shows that there are free inodes. I unmounted and mounted with -o inode64 but got the same error.

xfs_repair does not report any problem. xfs_info shows drive information as follows.

# xfs_info /dev/sdb1
meta-data=/dev/sdb1              isize=1024   agcount=16, agsize=2227764 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=35644210, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=17404, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Any ideas? Thanks!

--

I found this is the same problem as described in the following discussion.

[http://comments.gmane.org/gmane.comp.file-systems.xfs.general/41031][1]

There is no freespace available for inode in my HDD.

# xfs_db -r "-c freesp -s" /dev/sdb1
   from      to extents  blocks    pct
      1       1 1105980 1105980  32.01
      2       3  528180 1195803  34.61
      4       7  203982 1153467  33.38
share|improve this question
    
If you have any test files you are willing to remove: can you even remove files, or does even that nag you "No space left on device"? –  Janne Pikkarainen Oct 6 '12 at 12:47
    
Yes. I moved some files to another drive. That made freespace for new inodes. –  beketa Oct 7 '12 at 4:30
add comment

2 Answers

Are you sure this is an inode problem? I notice that the space consummed is over 90%. This leads me to wonder if this is one of these "root" reserved spaces (I know that ext2/3/4 has this), or if 10% is necessary to be free for some reason for the XFS filesystem to work.

share|improve this answer
    
I don't think it is caused by reserved space. I did a quick test using the same capacity drive. I made 141 1GB files. That made disk usage to be 100%. But still I can make a new file by touch. $ df /dev/sdc1 Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdc1 142507224 141297208 1210016 100% /srv/node/sdc1 $ df -i /dev/sdc1 Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sdc1 1210208 145 1210063 1% /srv/node/sdc1 –  beketa Oct 11 '12 at 21:54
    
Well it was just something I thought of. –  mdpc Oct 11 '12 at 22:02
add comment

Have you tried running a fsck to see if it frees up available inodes.

If you interrupt a mv or rm then it can do what you describe.

share|improve this answer
    
No I have not tried fsck. I will try it if I encounter the same situation though I hope I will not. –  beketa Oct 7 '12 at 4:54
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.