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!