I have a Voyage Linux (a Debian derived system) computer (which is headless, ie no display). The root filesystem is marked as corrupted and there are actually some errors.
I would like to fix these errors, but I can't. I tried several things (shutdown -rF now, touch /forcefsck, set FSCKFIX=yes in /etc/default/rcS, tune2fs -c 1 -C 1 /myfilesystem): no check is done.
After some searches I discovered that the /etc/init.d/checkroot.sh was set to check the /dev/root filesystem:
fstabroot=/dev/root #... rootcheck=yes
while df told me this:
Filesystem 1K-blocks Used Available Use% Mounted on rootfs 3541948 1156324 2205660 35% / /dev/disk/by-label/ROOT_FS 3541948 1156324 2205660 35% /
tune2fs indicates this:
# tune2fs -l /dev/disk/by-label/ROOT_FS tune2fs 1.41.12 (17-May-2010) Filesystem volume name: ROOT_FS Filesystem revision #: 1 (dynamic) Filesystem features: ext_attr resize_inode dir_index filetype sparse_super large_file Filesystem flags: signed_directory_hash Default mount options: (none) Filesystem state: not clean with errors Errors behavior: Continue Filesystem OS type: Linux Filesystem created: Tue Mar 13 09:49:14 2012 Last mount time: Sat Jan 1 02:36:20 2000 Last write time: Tue Apr 14 08:38:22 2026 Mount count: 3 Maximum mount count: 1 Last checked: Fri Jun 15 20:55:44 2012 Check interval: 0 (<none>) Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root)
My fstab looks like:
#/dev/hda1 / ext2 defaults,noatime,rw 0 0 proc /proc proc defaults 0 0 tmpfs /tmp tmpfs nosuid,nodev 0 0 #tmpfs /rw tmpfs defaults,size=32M 0 0
The only way I found to force fsck to run was to modify the /etc/init.d/checkroot.sh setting the following values:
fstabroot=/dev/disk/by-label/ROOT_FS #... rootcheck=yes
and then perform
'touch /forcefsck' and
I believe this is a quick and dirty fix to make my FS be repaired.
What can I do to repair this volume using a better practice ?