2

I saw this in dmesg. What does it mean?

EXT4-fs error (device sdb1): htree_dirblock_to_tree: bad entry in directory #763 3575: rec_len is smaller than minimal - block=30429885offset=0(671744), inode=0,
rec_len=0, name_len=0

How in the earth this happen? Is this because SDB is bad?

This is what /var/messages say

Sep 26 17:15:40 host pure-ftpd: (?@175.44.11.232) [INFO] New connection from 175.44.11.232
Sep 26 17:15:40 host pure-ftpd: (?@27.150.198.182) [INFO] Logout.
Sep 26 17:15:41 host pure-ftpd: (?@216.244.84.165) [WARNING] Authentication failed for user [solarromancecom]
Sep 26 17:15:41 host pure-ftpd: (?@216.244.84.165) [INFO] Logout.
Sep 26 17:15:41 host pure-ftpd: (?@27.150.198.182) [INFO] New connection from 27.150.198.182
Sep 26 17:15:41 host pure-ftpd: (?@216.244.84.165) [INFO] New connection from 216.244.84.165
Sep 26 17:15:43 host pure-ftpd: (?@202.100.206.34) [WARNING] Authentication failed for user [admSep 27 04:17:49 host kernel: imklog 5.8.10, log source = /proc/kmsg started.
Sep 27 04:17:49 host rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="1708" x-info="http://www.rsyslog.com"] start
Sep 27 04:17:49 host kernel: Initializing cgroup subsys cpuset
Sep 27 04:17:49 host kernel: Initializing cgroup subsys cpu
Sep 27 04:17:49 host kernel: Linux version 2.6.32-358.18.1.el6.i686 (mockbuild@c6b10.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Wed Aug 28 14:27:42 UTC 2013
Sep 27 04:17:49 host kernel: KERNEL supported cpus:
Sep 27 04:17:49 host kernel:  Intel GenuineIntel
Sep 27 04:17:49 host kernel:  AMD AuthenticAMD
Sep 27 04:17:49 host kernel:  NSC Geode by NSC
Sep 27 04:17:49 host kernel:  Cyrix CyrixInstead
Sep 27 04:17:49 host kernel:  Centaur CentaurHauls
Sep 27 04:17:49 host kernel:  Transmeta GenuineTMx86
Sep 27 04:17:49 host kernel:  Transmeta TransmetaCPU
Sep 27 04:17:49 host kernel:  UMC UMC UMC UMC
Sep 27 04:17:49 host kernel: BIOS-provided physical RAM map:

That's it. So the system reboot and before it reboot it doesn't tell why or anythign.

user4951
  • 10,519

1 Answers1

8

According to this knowledgebase article on novell.com, titled: EXT3 file-system error "bad entry in directory", the resolution for this message:

EXT3-fs error (device dm-0): ext3_readdir: bad entry in directory #5556142: rec_len is smaller than minimal - offset=0, inode=2553887680, rec_len=0, name_len=0

Is as follows:

NOTE: This error is caused by a file that has been marked as a directory. This is a non-fatal error and can be fixed by removing the file in question.

  1. Mount the file-system in question
  2. Locate the file that has been corrupted. The file's inode is the number after "bad entry in directory" Using the example error code the file would be found by typing:

     $ find /MOUNT_POINT -inum 5556142
    
  3. Delete the file identified in step two

  4. Umount the file-system
  5. Check the disk, and check for errors.

    $ fsck /dev/PHYSICAL_DEVICE
    
  6. Repeat step 5. If no errors, the file-system is clean.

The resolution is the same, it doesn't matter if it's EXT4 or an EXT3 formatted drive.

slm
  • 369,824
  • Dude, the server is down and require manual check. If not hardware error, what could possibly have happened? – user4951 Sep 27 '13 at 10:59
  • @slm, There is a space missing to the find command. /MOUNT_POINT and -inum – Valentin Bajrami Sep 27 '13 at 11:04
  • root@host [~]# find /MOUNT_POINT-inum 763 find: /MOUNT_POINT-inum': No such file or directory find:763': No such file or directory Device is already mounted – user4951 Sep 27 '13 at 11:05
  • @JimThio - who knows why these things happen. They just do. Yes the partition may be failing, or an error may have occurred when the data was being written to the device, so it was left in a partial state. – slm Sep 27 '13 at 11:05
  • root@host [~]# root@host [~]# find /home2 MOUNT_POINT-inum 763 -bash: root@host: command not found – user4951 Sep 27 '13 at 11:06
  • @JimThio - That's an example command, you need to change it to your situation. find /home2 -inum 763. These commands are meant to be run from a fully operational system, where you've mounted the drive, if this is your live system and you're at the fsck prompt, these aren't going to work!!! You'll then need to enlist the help of a boot disk (or LiveCD) and boot the system from that to run the above command! – slm Sep 27 '13 at 11:07
  • I did that and the server just stop. Is this simply command taking a long time? – user4951 Sep 27 '13 at 11:15
  • @JimThio you need find /mount_point -inum 5556142 Notice the space between /mount_point and -inum. Also the mount_point in your case is /dev/sdb1 – Valentin Bajrami Sep 27 '13 at 11:17
  • @val0x00ff - thanks I fixed the typos, didn't copy paste correctly. – slm Sep 27 '13 at 11:17
  • @val0x00ff - I gave him the correct command in comments to run for his inode. – slm Sep 27 '13 at 11:18
  • @JimThio - when you say it stopped what is it doing? are you at a prompt? – slm Sep 27 '13 at 11:19
  • @val0x00ff - /dev/sdb1 isn't a mountpoint either. That's the device handle for the first partition on the 2nd drive. – slm Sep 27 '13 at 11:21
  • @slm, true. I mean using fsch requires to use the device. The mount point referes to the directory which is created either by hand or using lvm etc. – Valentin Bajrami Sep 27 '13 at 11:50
  • I did root@host [/home2]# find /home2 -inum 763 and it simply doesn't return to the prompt – user4951 Sep 27 '13 at 11:57
  • Basically it's as if the command takes a very long time – user4951 Sep 27 '13 at 11:59
  • @JimThio - it's entirely possible that that command can take a long time, it needs to search the entire /home2 partition looking for files/directories that have the inode 763. – slm Sep 27 '13 at 12:19