You are not logged in.

#1 2017-05-14 10:57:36

Smoerrebroed
Member
From: Germany
Registered: 2011-07-24
Posts: 106

[SOLVED] Arch/GRUB/GPT on USB 3.0 Stick

Hi All,

I am currently trying to master installing Arch on a Kingston Traveller DT Ultimate G2 USB 3.0 running on a HP EliteBook 840 G3. Customarily, I have worked through the Arch Installation Guide, taking into account the special remarks for Installing Arch Linux on a USB key.

The USB key is GPT partitioned as follows:

Partition 1: 512 MB, EFI, mounted at /boot
Partition 2: all remaining space, ext4, mounted at /

Those partitions are correctly entered in /etc/fstab, using UUID as reference.

Installing and configuring grub (with the --removable) option gave no errors, and I have also moved the block hook of the initial ram disk right after udev, recreating the ram disk afterwards.

Now, when I start the machine and go to the boot menu, I can select the USB key for UEFI booting. I am presented with the grub menu and can select Arch Linux for booting. Confirming my choice, I get the following output:

Loading Linux linux ...
Loading initial ramdisk ...

starting version 232
ERROR: device 'UUID=...' not found. Skipping fsck.
mount: can't find UUID=...
You are now being dropped to an emergency shell.
sh: can't access tty; job control turned off

[rootfs ]# [   16.863297] sd 3:0:0:0: [sdb] No Caching mode page found
[   16.863297] sd 3:0:0:0: [sdb] Assuming drive cache: write through

blkid
/dev/sdb2: UUID="..." TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="..."
[rootfs ]#

This leads me to believe that somehow the process of recognizing the USB key and getting it into a usable state is too slow. Consequently, it is not available when systemd tries to mount / and thus aborts the whole process. Has anyone experienced a similar behavior before and possibly found a solution? Is it perhaps possible to insert a pause during systemd startup?

What I did discover is that sometimes (perhaps once out of ten tries) I can successfully boot from the USB key when I select Arch fallback, but this is fairly inconsistent and certainly not a long-term solution.

Any pointers you might have are highly appreciated. Thanks in advance for trying to help me.

Cheers,

Smoerrebroed

Last edited by Smoerrebroed (2017-05-14 15:50:57)

Offline

#2 2017-05-14 12:12:32

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,447
Website

Re: [SOLVED] Arch/GRUB/GPT on USB 3.0 Stick

Is that the verbatim output, or did you siimplify/remove parts - if so please be clear about what revisions you made to the error output.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2017-05-14 14:50:34

tom.ty89
Member
Registered: 2012-11-15
Posts: 897

Re: [SOLVED] Arch/GRUB/GPT on USB 3.0 Stick

Make sure you don't exclude the udev hook since the init will only poll/wait the requested device  (root= / cryptdevice=) for 10 seconds (well the default), then make sure the necessary drivers are included in the initramfs image (if unsure try/use the fallback image), then make sure the UUID in the grub entry (again, root= / cryptdevice=) set is correct.

Did the init wait for 10 seconds before it spitted "device not found"? Also is sdb(2) the usb disk(root partition)?

In that's the case try adding rootdelay=15 (or something even higher) to the grub entry.

P.S. Your stick probably sucks, better not use it for a system installation.

Offline

#4 2017-05-14 15:50:30

Smoerrebroed
Member
From: Germany
Registered: 2011-07-24
Posts: 106

Re: [SOLVED] Arch/GRUB/GPT on USB 3.0 Stick

Trilby wrote:

Is that the verbatim output, or did you siimplify/remove parts

It's exactly what is presented on screen, except for the UUID which I omitted for brevity. (However, it is the correct UUID.)

tom.ty89 wrote:

Make sure you don't exclude the udev hook

I made sure - it's in there by default. I only moved the block hook in the position right next to udev (according to the Arch Wiki).

tom.ty89 wrote:

make sure the necessary drivers are included in the initramfs image

All required drivers are included. UUID matches as per above.

tom.ty89 wrote:

In that's the case try adding rootdelay=15 (or something even higher) to the grub entry.

That did the trick! I found that I can go as low as rootdelay=12. Anything below that and booting fails. Many thanks for your help. smile

tom.ty89 wrote:

P.S. Your stick probably sucks, better not use it for a system installation.

Well, so far I am rather pleased with its performance, and I figured I'd use a rather fast USB stick for this setup. I know it's not ideal, but at the moment it's the only solution I can implement. Thanks again!

Cheers,

Smoerrebroed

Offline

Board footer

Powered by FluxBB