You are not logged in.

#1 2014-08-29 19:40:42

olivine
Member
Registered: 2009-10-24
Posts: 19

Install on external drive doesn't boot on all computers

I have installed Arch on an external drive encrypted with LVM on LUKS. I am using persistent block device naming with UUID and can boot properly on one computer. On a second computer, I get "waiting" messages for the devices followed by a "device not found" error.

The set-up: external drive connecting through eSATA. I'm using syslinux as a bootloader and I manage to get to the syslinux menu on both computers.

The boot partition is on /dev/sdb2; sdb3 is encrypted:

$ lsblk -f
sdb                                                      
├─sdb1                                                   
├─sdb2            d03e0e69-0bdf-4bd6-85fe-1979f89f787b   /boot
└─sdb3            0d8c82b1-6821-4550-b425-da22792fbdc2   
  └─aravis        FXC1v6-mpXB-ltYs-3R0H-lk3e-nrvP-NCEbuk 
    ├─aravis-root 55cb712a-3448-4c31-8ae5-b15dd4a3ee58   /
    ├─aravis-var  03e8463e-834d-4e5d-95ee-6205c93a66b9   /var
    ├─aravis-home 26891f19-3bac-4313-8034-2b10ccea1d0a   /home
    └─aravis-data 1742ec02-56c6-4653-83c3-3d3b46a25fb7   /mnt/aravis

mkinitcpio.conf contains:

HOOKS="base udev autodetect modconf block encrypt lvm2 filesystems keyboard fsck"

Boot section in /boot/syslinux/syslinux.cfg:

LABEL arch
    MENU LABEL Aravis Arch Linux
    LINUX ../vmlinuz-linux
    APPEND cryptdevice=UUID=0d8c82b1-6821-4550-b425-da22792fbdc2:aravis root=/dev/mapper/aravis-root rw
    INITRD ../initramfs-linux.img

I've also tried with (same result):

   APPEND cryptdevice=UUID=0d8c82b1-6821-4550-b425-da22792fbdc2:aravis root=55cb712a-3448-4c31-8ae5-b15dd4a3ee58 rw

fstab:

# 
# /etc/fstab: static file system information
#
# <file system>	<dir>	<type>	<options>	<dump>	<pass>

#/dev/mapper/aravis-root	/         	ext4      	rw,relatime,data=ordered	0 1
UUID=55cb712a-3448-4c31-8ae5-b15dd4a3ee58	/         	ext4      	rw,relatime,data=ordered	0 1

#/dev/mapper/aravis-var	/var      	ext4      	rw,relatime,data=ordered	0 2
UUID=03e8463e-834d-4e5d-95ee-6205c93a66b9	/var      	ext4      	rw,relatime,data=ordered	0 2

#/dev/mapper/aravis-home	/home     	ext4      	rw,relatime,data=ordered	0 2
UUID=26891f19-3bac-4313-8034-2b10ccea1d0a	/home     	ext4      	rw,relatime,data=ordered	0 2

#/dev/mapper/aravis-data	/mnt/aravis	ext4      	rw,relatime,data=ordered	0 2
UUID=1742ec02-56c6-4653-83c3-3d3b46a25fb7	/mnt/aravis	ext4      	rw,relatime,data=ordered	0 2

#/dev/sdb2					/boot		ext2		rw,relatime 	0 2
UUID=d03e0e69-0bdf-4bd6-85fe-1979f89f787b       /boot           ext2            rw,relatime     0 2

/swapfile           	none      	swap      	defaults  	0 0

The system boots properly when connected to my laptop. When I try with a desktop, I get this message:

Waiting 10 seconds for device /dev/disk/by-uuid/0d8c82b1-6821-4550-b425-da22792fbdc2
Waiting 10 seconds for device /dev/mapper-aravis-root
ERROR: device '/dev/mapper/aravis-root' not found. Skipping fsck.

I have also tried using lvmwait in the boot section of syslinux.cfg (maybe not properly?) with the same result.
Am I messing up the UUIDs? Is there something else missing? Thanks in advance for any help.

Last edited by olivine (2014-08-29 19:41:43)

Offline

#2 2014-09-04 18:29:34

jernst
Member
From: Silicon Valley
Registered: 2014-03-04
Posts: 296
Website

Re: Install on external drive doesn't boot on all computers

I've had some similar issues with boot working on one machine but not another, and they went away after I added this to /etc/mkinitcpio.d/linux.preset before generating:

default_options="-S autodetect"

You have that autodetect already in the hooks, but maybe worth a try.

Offline

#3 2014-09-04 19:01:33

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

Re: Install on external drive doesn't boot on all computers

Ahh - I have to disagree with jernst, unless I'm misunderstanding the linux.preset file syntax which may be as I don't use it.

You need to remove the autodetect hook, then regenerate the initramfs.

EDIT: I did misunderstand, jernst's suggestion should work as that entry will remove the autodetect hook.  I'd just remove it form mkinitcpio.conf, but either one should acheive the same goal.

Last edited by Trilby (2014-09-04 19:02:57)


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#4 2014-09-04 19:35:35

alphaniner
Member
From: Ancapistan
Registered: 2010-07-12
Posts: 2,810

Re: Install on external drive doesn't boot on all computers

jernst wrote:

I've had some similar issues with boot working on one machine but not another, and they went away after I added this to /etc/mkinitcpio.d/linux.preset before generating:

default_options="-S autodetect"

This is exactly how the fallback image is generated. So if you generate both you'll have two identical images. IMO the best solution in this case is to remove autodetect from the HOOKS in mkinitcpio.conf and only generate a default image.


But whether the Constitution really be one thing, or another, this much is certain - that it has either authorized such a government as we have had, or has been powerless to prevent it. In either case, it is unfit to exist.
-Lysander Spooner

Offline

Board footer

Powered by FluxBB