LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Distributions (https://www.linuxquestions.org/questions/linux-distributions-5/)
-   -   /dev/-related errors, "Filesystem Check Failed" (https://www.linuxquestions.org/questions/linux-distributions-5/dev-related-errors-filesystem-check-failed-4175531169/)

MunkyCheez 01-15-2015 10:33 PM

/dev/-related errors, "Filesystem Check Failed"
 
Hello community,

I'm trying to get crux 2.8 up and running and I've always run into some issue or another. Usually, it involves a kernel panic along the lines of "VFS: not syncing", which I thought I narrowed down to an ATA/IDE driver issue with the kernel but never was able to solve it despite my attempts. I decided to give it another go on a different (but similar) machine:
  • Dell Inspiron B130 (laptop)
  • Pentium M
  • Intel GMA integrated graphics
  • IDE hard drive
Here's what's going on:
Code:

LILO Loading crux..................................
BIOS data check successful
EXT3-fs (sda1): error: couldn't mount because of unsupported optional features (240)
EXT4-fs (sda1): couldn't mount as ext due to feature incompatibilities
INIT: version 2.88 booting
The system is coming up. Please wait.
mount: unknown filesystem type 'devtmpfs'
cannot open /dev/null
udevd[970]: cannot open /dev/null

udevd[1004]: open /dev/null failed: Read-only file system

udevd[1003]: open /dev/null failed: Read-only file system

error: /dev/loop0: No such file or directory

[...]

...and the messages continue. I guess the /dev/ tree isn't being created. After more /dev/-related messages scroll by, I see:
Code:

********************* FILESYSTEM CHECK FAILED ***************************

Please repair manually and reboot. Note that the root file system is currently mounted read-only. To remount it read-write type: mount -n -o remount,rw /
When you exit the maintainance shell the system will reboot automatically.

*******************************************************************

Initially I thought this was due to devtmpfs being excluded from the kernel. Sure enough, it was. I changed my .config as follows:
Code:

CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y

(just to be safe). Recompile kernel, and still the same thing. :confused:

/etc/fstab
Code:

/dev/sda1      /              ext4        defaults        0    1
# I tried with the following line commented and not commented, still errors:
#devpts        /dev/pts        devpts      defaults        0    0

/etc/lilo.conf
Code:

lba32
install=text
boot=/dev/sda
image=/boot/vmlinuz
  label=crux
  root=/dev/sda1
  read-only
  append="quiet"

/etc/rc.conf
Code:

FONT=default
KEYMAP=us
TIMEZONE=UTC
HOSTNAME=b130
SYSLOG=sysklogd
SERVICES=(net crond)

P.S. Something definitely going on with the /dev/ tree. Check it out:

ls -A /dev
Code:

console  initctl  null  pts  shm

business_kid 01-17-2015 04:05 AM

Code:

EXT3-fs (sda1): error: couldn't mount because of unsupported optional features (240)
EXT4-fs (sda1): couldn't mount as ext due to feature incompatibilities

It looks like
1. You didn't load the initrd when you needed to, or
2. Your kernel is incorrect, lacking ext4 support. Filesystem support needs to be compiled into the kernel or supplied by an initrd.

MunkyCheez 01-18-2015 01:11 PM

Hey, business_kid. Thanks for your reply.

Quote:

Originally Posted by business_kid (Post 5302292)
2. Your kernel is incorrect, lacking ext4 support. Filesystem support needs to be compiled into the kernel or supplied by an initrd.

I think I had this part right:

$ grep -i ext4 /usr/src/linux-3.5.4/.config
Code:

CONFIG_EXT4_FS=y
CONFIG_EXT4_USE_FOR_EXT23=y
CONFIG_EXT4_FS_XATTR=y
# CONFIG_EXT4_FS_POSIX_ACL is not set
# CONFIG_EXT4_FS_SECURITY is not set
# CONFIG_EXT4_DEBUG is not set

Quote:

Originally Posted by business_kid (Post 5302292)
1. You didn't load the initrd when you needed to

I think I understand the basic concept of what initrd/initramfs does, but I don't know how to even begin troubleshooting this aspect. What would you recommend? Thanks.

business_kid 01-18-2015 02:01 PM

The basic concept of an initrd is that it loads on / and supplies kernel modules. Useful for distros trying to cater for all types of systems. When you mount the / filesystem, on / you mount over the initrd and it vanishes. Modules then used are your ones in /lib/modules. You only need an initrd if you need extra modules on bootup.

This is a better line for /dev/pts
Code:

devpts          /dev/pts        devpts      gid=5,mode=620  0  0
Now, presuming that fixes nothing, your error is
Code:

EXT3-fs (sda1): error: couldn't mount because of unsupported optional features (240)
EXT4-fs (sda1): couldn't mount as ext due to feature incompatibilities

Which tells me there are extra features enabled on your ext4 system (maybe ACLS?) that you have no support for. That is unusual if a distro install made the ext4 partition, and supplied the kernel. If this is a home built kernel, bets are off. It may be a disk fault. Can you fsck it?

MunkyCheez 01-18-2015 10:38 PM

Quote:

Originally Posted by business_kid (Post 5303048)
The basic concept of an initrd is that it loads on / and supplies kernel modules. Useful for distros trying to cater for all types of systems. When you mount the / filesystem, on / you mount over the initrd and it vanishes. Modules then used are your ones in /lib/modules. You only need an initrd if you need extra modules on bootup.

Okay, so if I understand correctly, I don't necessarily need one in this case, becase (I think) all necessary features are included in the kernel and not in loadable modules.

Quote:

Originally Posted by business_kid (Post 5303048)
This is a better line for /dev/pts
Code:

devpts          /dev/pts        devpts      gid=5,mode=620  0  0

Okay, changed. Same result.

Quote:

Originally Posted by business_kid (Post 5303048)
Which tells me there are extra features enabled on your ext4 system (maybe ACLS?) that you have no support for. That is unusual if a distro install made the ext4 partition, and supplied the kernel. If this is a home built kernel, bets are off. It may be a disk fault. Can you fsck it?

Assuming "ACLS" is the same as "ACL" in my last post, it is not enabled (see the snipped of my .config. It is indeed a homebuilt kernel. I booted off a CD and ran fsck, and everything seems alright as far as I can tell:

# e2fsck /dev/sda1
Code:

e2fsck 1.42.5 (29-Jul-2012)
/dev/sda1: clean, 77116/4890624 files, 66782/19537430 blocks

I am starting to wonder if this is actually a hardware issue, since I tried the same install on a handful of other similar systems and they had a different error (pretty much the same result on all the rest, except this one). I'll try a different distro on here and see how it behaves with disk access. Thanks for your help.

business_kid 01-19-2015 04:57 AM

Code:

# e2fsck /dev/sda1
That only does something if the disk was unclean. Try this

Code:

# e2fsck -fvy /dev/sda1


All times are GMT -5. The time now is 06:57 PM.