Skip to main content
Topic: can't find root filesystem? (Read 2369 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

can't find root filesystem?

I have an HP 8470 laptop and I'm having trouble UEFI booting a new Artix install.

There are two internal hard drives (one is in a caddy replacing the DVDROM). I am also using this system as a Hackintosh so I kind of have to use Clover as my bootloader.

I realize my system is about as weird as can be, but hopefully someone can help.
There is some cruft laying around from when I was experimenting with TrueOS BSD and I installed  ZFS (mirrored ~280GB partitions). 

Anyway, Clover autodetects my  Artix kernel  in /boot ( on  /dev/sdb1), but I end up at some sort of emergency  prompt and have to manually mount /dev/sdb2  on /new_root and then exit to get Artix to boot.

Code: [Select]
mount /dev/sdb2 /new_root -t ext4
exit


Code: [Select]
fdisk -l 

Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 6A6CED35-C610-4F47-BED5-D0C8B363A05A

Device          Start        End    Sectors   Size Type
/dev/sdb1          40     409639     409600   200M EFI System
/dev/sdb2      409640 1338183719 1337774080 637.9G Linux filesystem
/dev/sdb3  1363909968 1953262983  589353016   281G Apple HFS/HFS+
/dev/sdb4  1355227176 1363615783    8388608     4G FreeBSD swap
/dev/sdb5  1346807848 1355196455    8388608     4G FreeBSD swap
/dev/sdb6  1338183720 1346572327    8388608     4G FreeBSD swap

Partition table entries are not in disk order.


Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3251AD28-71A9-47CB-BD07-030623F224AB

Device         Start       End   Sectors   Size Type
/dev/sda1         40    409639    409600   200M EFI System
/dev/sda2     409640 391777167 391367528 186.6G unknown
/dev/sda3  391777168 976510983 584733816 278.8G Solaris /usr & Apple ZFS

/dev/sdb2 is listed above and I can boot with it as root filesystem.
Why is /dev/sdb2 not there in /dev/disk or in the output of blkid?


Code: [Select]
>ls -l  /dev/disk/by-partuuid/

total 0
lrwxrwxrwx 1 root root 10 May  9 18:39 369e5bbb-0ccd-4cc6-828e-88ecea57d2ef -> ../../sda2
lrwxrwxrwx 1 root root 10 May  9 18:39 418e68d7-8484-11e7-9fab-a01d48f35212 -> ../../sdb5
lrwxrwxrwx 1 root root 10 May  9 18:39 51b62607-cb3c-4b84-8500-4d7a1669741b -> ../../sda3
lrwxrwxrwx 1 root root 10 May  9 18:39 6845076e-8409-11e7-a842-a01d48f35212 -> ../../sdb4
lrwxrwxrwx 1 root root 10 May  9 18:39 7502e805-f99a-4d2d-868b-550c7c6880f8 -> ../../sdb1
lrwxrwxrwx 1 root root 10 May  9 18:39 c0f83ee1-4b9e-4fae-933f-edcee3b25c33 -> ../../sda1
lrwxrwxrwx 1 root root 10 May  9 18:39 cb70835b-848e-11e7-95a6-a01d48f35212 -> ../../sdb6

Code: [Select]
>blkid

/dev/sdb1: LABEL="EFI" UUID="67E3-17ED" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="7502e805-f99a-4d2d-868b-550c7c6880f8"
/dev/sdb4: PARTUUID="6845076e-8409-11e7-a842-a01d48f35212"
/dev/sdb5: PARTUUID="418e68d7-8484-11e7-9fab-a01d48f35212"
/dev/sdb6: PARTUUID="cb70835b-848e-11e7-95a6-a01d48f35212"
/dev/sda1: LABEL="EFI" UUID="67E3-17ED" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="c0f83ee1-4b9e-4fae-933f-edcee3b25c33"
/dev/sda2: PARTLABEL="promac" PARTUUID="369e5bbb-0ccd-4cc6-828e-88ecea57d2ef"
/dev/sda3: LABEL="macpool" UUID="1386131769466668669" UUID_SUB="14319573616587589675" TYPE="zfs_member" PARTLABEL="Untitled" PARTUUID="51b62607-cb3c-4b84-8500-4d7a1669741b"

Re: can't find root filesystem?

Reply #1
I observed this recently, reformatting an existing partition:
$ sudo mkfs.btrfs -f /dev/sda2
(prints new UUID)
$ blkid
(prints old UUID)
$ sudo mount -t btrfs /dev/sda2 /mnt
$ blkid
(prints new UUID)

So blkid info might not always be up to date.

Also I found I could not hot plug an ESATA drive, it was not detected, although I could hot plug an external USB drive. Apparently there are some extra packages that need installing to do this. It was detected when it was plugged in at power on though. Perhaps your extra drive might have similar issues? But I don't have any specific experience of your exact problem, others may have better suggestions.

Re: can't find root filesystem?

Reply #2
Code: [Select]
ls -lh /dev/disk/by-uuid 

is always accurate, that doesn't mean I know of blkid being inaccurate.

Re: can't find root filesystem?

Reply #3
Unfortunately the issue is that /dev/sdb2 does show up at all in /dev/disk/by-whatever.
It doesn't have the wrong UUID,  it's just not there. When I look at /dev/sdb2 in gparted it shows a big long hex number for the UUID.

Hmmm,  /dev/sdb2 has no label. Maybe that is causing a problem?


Re: can't find root filesystem?

Reply #5
I managed to install UEFI grub on /dev/sdb (drive in DVD caddy).  The UEFI/BIOS... whatever you call the HP firmware thing...lets me pick the boot drive by pressing ESC at startup.  (All the Clover  Hackintosh wierdness is on /dev/sda, the internal drive.)

So when I (UEFI) boot GRUB I still end up with an emergency prompt. But this time it says something about too many filesystems on /dev/sdb2 and suggests I mount with -t option. mounting /dev/sdb2 /new_root -t ext4 and exiting gets it to boot. On the next reboot, I'll write it down. Maybe I shouldn't have tried to replace the TrueOS partition with Artix.

There is definitely something wacky about the partitioning of this drive: I did not create 3 swap partitions and /dev/sdb3 is not HFS+ but really part of a ZFS pool. (I know, I know it's not recommended to use partitions with ZFS ... but it still seems to work so I don't fix it. This is my experimental old laptop where I test out aguably bad ideas in my spare time.)
Code: [Select]
fdisk -l /dev/sdb

Device          Start        End    Sectors   Size Type
/dev/sdb1          40     409639     409600   200M EFI System
/dev/sdb2      409640 1338183719 1337774080 637.9G Linux filesystem
/dev/sdb3  1363909968 1953262983  589353016   281G Apple HFS/HFS+
/dev/sdb4  1355227176 1363615783    8388608     4G FreeBSD swap
/dev/sdb5  1346807848 1355196455    8388608     4G FreeBSD swap
/dev/sdb6  1338183720 1346572327    8388608     4G FreeBSD swap


In gparted GUI  /dev/sdb2 does not have anything under Name, Label, or Flags.

On the next reboot I'll try the other fallback initrd.

Re: can't find root filesystem?

Reply #6
Was a solution to this ever found?  I recently started using Artix and am having a very similar problem.  Loving the distro otherwise!