# VFS: unable to mount root fs on unknown block(8,1)

## Adel Ahmed

I'm getting the following message when booting to my freshly installed gentoo:

not syncing: VFS: unable to mount root fs on unknown block(8,1)

, this is a new installation, it had not worked yet.

lspci -k:

https://pastebin.com/e2a0sS6V

kernel config:

https://pastebin.com/AYjVtF5t

I believe I have all the modules listed in lspci -k built into the kernel except for the ahci module which I'm unable to find

kernel version:

sys-kernel/gentoo-sources-4.9.34:4.9.34::gentoo

----------

## NeddySeagoon

Adel Ahmed,

```
unknown block(8,1) 
```

 is sda1.  The kernel can see it but not read the filesystem it finds there.

Either your root is not sda1 or the filesystem driver for sda1 is not available.

----------

## Adel Ahmed

wierd, here's the partition on another machine:

/dev/sdc1: LABEL="root" UUID="e91be2a8-2fae-4322-a6ec-91a19c8dfb8f" TYPE="xfs" PARTUUID="9fb07208-01"

fstab:

LABEL="root"            /               xfs             defaults,noatime

and xfs has been built into the kernel, this is the only hard disk drive and only partition

----------

## duby2291

Filesystem drivers have to either be built into the kernel image or the initrd. If they are just built as normal modules they can't boot the root filesystem. My guess is it's built as a normal module and then stored on the very filesystem it's supposed to drive.

----------

## NeddySeagoon

Adel Ahmed,

If xfs is indeed built in the filesystem you intended to be root isn't at sda1.

Perhaps you have some USB storage connected?

Your fstab is not relevant.  Its contained on the, as yet, not mounted root, so cannot be read.

Prior to root being mounted, its just the kernel, the initrd, if you have one and the kernel command line.

Nothing else matters.

----------

## ntnn

 *Quote:*   

> 
> 
> 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series]
> 
>     Subsystem: PC Partner Limited / Sapphire Technology Cedar [Radeon HD 5000/6000/7350/8350 Series]
> ...

 

You have a built in graphics card - does your processor have built-in graphics as well? If so, switch from 'switchable graphics' to 'internal' (or 'external' if you can) in the BIOS settings.

There are solutions for switchable graphics in linux (e.g. bumblebee for optimus), but it isn't supported natively yet.

----------

## Adel Ahmed

xfs is built into the kernel

and no I do not have any other storage connected(usb or otherwise)

I have no built in graphics card

----------

## NeddySeagoon

Adel Ahmed,

Tell us about the HDD.  The manufacturer and model number will do.

CONFIG_SATA_AHCI=y is on.  That's good.

----------

## Adel Ahmed

It's a Kingston suv400s37

----------

## NeddySeagoon

Adel Ahmed,

There should be no complications there.  These hybrid HDD with a small embedded SSD for cache can appear like two different drives to the kernel.

That's ruled out.

The next thing to check is xfs features.  Are you trying to mount a filesystem that is feature incompatible with your kernel?

I can't help there as I don't run xfs.

----------

## Jaglover

What is the kernel command line? Have you tried to use PARTUUID?

----------

## Adel Ahmed

the kernel command line is a simple root=/dev/sda1 ro init=/usr/lib/systemd/systemd

I do not know if xfs is feature incompatible with my kernel.

I used a simple mkfs.xfs  using:

sys-fs/xfsprogs-4.9.0

how can I tell?

----------

## Adel Ahmed

bump

----------

## Adel Ahmed

bump

----------

## Adel Ahmed

I've reformatted the rootfs to btrfs and I'm getting the same error !!!!

I have compiled btrfs into the kernel and changed /etc/fstab of course:

/dev/sda1            /               btrfs              defaults,noatime 0 0

I only have 1 disk !!!

this is very strange

----------

## Jaglover

```
fdisk -l
```

Perhaps your root is not sda1, but sda2?

----------

## Adel Ahmed

fdisk shows there is only one partition, sda1

and when I ran mkfs.btrfs I ran it on the first partition

----------

