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.

Please help to determine,

how to may fix this XFS filesystem and whats actually wrong?


An XFS image runs productive mounted -o loop on debian. a million of files are read every day, only some are written in batches every few days.

/dev/cciss/c0d9      1953449048 1950392335   3056714 100% /website
/dev/loop0  1950358937 1937866163  12492775 100% /var/www/website

a single, nearly full 2TB drive, 100% load on the arm since 2-3 years (behind a raid controller,smart invisible)

/website ls -ls
1997201106024 Apr 29 12:33 website.image
/var/www/website  ls|wc -l

480k subdirectories in an nearly full image

at high work load and while moving some files (usually the files are only read but not written) the website.image already said bye a few times and the machine was rebooted

now suddenly:

/var/www/website  ls|wc -l
input / output error

yet sometimes it can be mounted sometimes sais bad superblock but when it can be mounted then again only able to show the 134181 directories.

xfs_repair website.image stops after some minutes scanning a certain inode
xfs_repair -L same

-i forgot the -f "drive is a file" first - does it matter?

xfs_repair /dev/cciss/c0d9  finishes properly in a second.

dd_rescue for website.image
has 50% after 12 hours and skipped 3500 512 byte blocks
(not too much i guess? - can i resume dd_rescue or do i need to convert the log into gddrescue first?)

But dd for /dev/cciss/c0d9 seems to run full speed without errors.

 xfs_info /dev/cciss/c0d9
meta-data=/dev/cciss/c0d9        isize=256    agcount=4, agsize=976740908 blks
         =                       sectsz=512   attr=2
data     =                       bsize=512    blocks=3906963632, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=16384  ascii-ci=0
log      =internal               bsize=512    blocks=65536, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
share|improve this question
Why are you using a loop-mounted filesystem? –  ewwhite Apr 29 '13 at 23:33
It is an image file since one day it had to be moved to another server in 5 hours rather then waiting a week to move all the files, since then it amazingly kept working mounted as loop for many years. (until now :(...) –  jonas Apr 30 '13 at 2:21
add comment

Your Answer


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

Browse other questions tagged or ask your own question.