what to do?

imho QNAPs are hardware wise nice, but software wise they are a bloat (too much stuff, it shall only store files AS RELIABLY AS POSSIBLE (here it does not shine per default))

paranoid mode on: do a 1:1 dd copy of the “broken” filesystem over ssh to external backup system before proceeding any further! you have been warned!

if it is raid1: it is safe to:

1) power down system

2) take one harddisk out (just in case)

3) power up and proceed

(because full set of data on both harddisks)

manually check filesystem:

recommend you to run this in a

screen -S FileSystemCheck

session, so it will keep running if you get disconnected.

1. determine the name of your raid device (usually md0)

cat /etc/mdadm.conf
ARRAY /dev/md0 devices=/dev/sda3,/dev/sdb3

script filename: FilesystemCheck.sh

/etc/init.d/services.sh stop; # stop all services

umount /dev/md0; # umount the filesystem -> if you get a 

device is busy

lsof|grep MD0; # check what is using the device (killall rsync could help ;)

e2fsck -p -f -v -C 0 /dev/md0; # check filesystem 
reboot; # reboot afterwards
# someone here recommends this:
e2fsck -cDfty -v -C 0 /dev/md0; # check filesystem and check for badblocks as well

/etc/init.d/services.sh stop;
umount /dev/md0;
lsof|grep MD0;
e2fsck -cDfty -C 0 /dev/md0;
reboot; # if you want it all in one go

# got a lot of: answer=1 Inode 214107758 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214107759 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214107760 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214107763 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214500366 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214500570 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214696217 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214696265 has INDEX_FL flag set on filesystem without htree support.
 answer=1 Inode 214892669 has INDEX_FL flag set on filesystem without htree support.
 answer=1

# and on another system: answer=1 Inode 183304491 has INDEX_FL flag set but is not a directory.
 answer=1 Inode 183304491, i_blocks is 16, should be 0.
  answer=1 Inode 183304492 is in use, but has dtime set.
  answer=1 Inode 183304492 has an invalid extent     (logical block 0, invalid physical block 2833810231, len 1) answer=1 Inode 183304492, i_size is 18446743528248703138, should be 0.
  answer=1 Inode 183304492, i_blocks is 4294967248, should be 8.
  answer=1 Extended attribute in inode 183304493 has a value size (4294966328) which is invalid answer=1 Error while reading over extent tree in inode 183304493: Corrupt extent header answer=1 Inode 183304493, i_blocks is 4294967184, should be 8.
  answer=1 Inode 183304494, i_size is 18428729675200071329, should be 4096.
  answer=1 Inode 183304494, i_blocks is 16, should be 8.
  answer=1 Error while reading over extent tree in inode 183304496: Corrupt extent header answer=1 Inode 183304496 is a zero-length directory.
  answer=1 Error while reading over extent tree in inode 183304497: Corrupt extent header answer=1 Inode 183304497, i_size is 18446735277616531115, should be 0.
  answer=1 Inode 183304497, i_blocks is 16, should be 8.
  answer=1 Extended attribute in inode 183304498 has a value size (0) which is invalid answer=1 Inode 183304498, i_blocks is 16, should be 8.
  answer=1 Extended attribute in inode 183304500 has a value block (4292870144) which is invalid (must be 0) answer=1 Inode 183304500, i_size is 4294837903, should be 17583596113920.
  answer=1 Inode 183304500, i_blocks is 4294967278, should be 16.
  answer=1 Inode 183304501 is in use, but has dtime set.
  answer=1 Error while reading over extent tree in inode 183304501: Corrupt extent header answer=1 Inode 183304501, i_size is 4292874240, should be 0.
  answer=1 Inode 183304501, i_blocks is 16, should be 8.
  answer=1 Inode 183304504 is in use, but has dtime set.
  answer=1 Segmentation fault

if it ran successfully you should see something like:

/dev/md0: ***** FILE SYSTEM WAS MODIFIED *****

 1625545 inodes used (0.44%)
    7420 non-contiguous files (0.5%)
     869 non-contiguous directories (0.1%)
         # of inodes with ind/dind/tind blocks: 0/0/0
         Extent depth histogram: 1619143/1853/14
2487926347 blocks used (84.94%)
       0 bad blocks
     352 large files

 1466916 regular files
  153991 directories
       0 character device files
       0 block device files
       2 fifos
       0 links
    4623 symbolic links (4519 fast symbolic links)
       4 sockets
--------
 1625536 files

liked this article?

  • only together we can create a truly free world
  • plz support dwaves to keep it up & running!
  • (yes the info on the internet is (mostly) free but beer is still not free (still have to work on that))
  • really really hate advertisement
  • contribute: whenever a solution was found, blog about it for others to find!
  • talk about, recommend & link to this blog and articles
  • thanks to all who contribute!
admin