X86 system do not find boot device after installation (solved)

After I was not very happy about the fact that umbrel 1.x comes with a complete system, I dared to update anyway. So, as described, I first created a backup of my V0.5.4 and installed Umbrel 1.x.
On first reboot, however, no boot device was found!
I was able to solve this for me on that way:

  1. No boot device is found after installing Umbrel 1.x (x86)
  2. Create a Supergrubdisk USB stick (short SG-USB)
  3. Connect the backup (if available) and the SG-USB stick to the PC
  4. Boot from SG-USB > select:Detect and show boot methods and then select the disk with the new Umbrel 1.x installation to boot.
  5. Open with a browser the IP of your Umbrel, wait until the migration wizard is finished* (restore) and shutdown the system.
  6. Unplug the backup
  7. Boot SG-USB as in step 4.
  8. SSH into Umbrel
  9. execute the following commands in sequence:
    sudo apt install grub-efi
    sudo update-grub
    sudo grub-install
  10. shutdown, disconnect SG-USB and boot as usual into your (restored) umbrel 1.x (may you’ve to select the proper umbrel boot device in BIOS again)

5./6./7. can be ignored if no backup is available.

Because I’m not a native speaker, I hope it is clearly described and I can help some by solving the boot problem on x86 systems.

Good Luck! :slight_smile:

5 Likes

It’s awesome, that solution is great

2 Likes

I’m new to umbrelOS and have the same problem. I want to install umbrelOS to a ESPRIMO Q556/2 with SATA SSD, 8 GB RAM and i3 processor. Thank you @servietos for your great HowTo. Using Supergrubdisk I at least was able to boot umbrelOS.

After that I had problems connecting via SSH. I thought that my umbrel user name is also my user name for SSH. But than I found:

Where I got to know, that umbrel is the user name.

But installing grub does not work for me. Using sudo grub-install first gave the following error:
grub-install: error: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory.

Than I found the following:

But installing the following does not help:
sudo apt-get install grub-pc

Now I get:

umbrel@umbrel:~$ sudo grub-install
Installing for i386-pc platform.
grub-install: error: install device isn't specified.
umbrel@umbrel:~$ sudo grub-install /dev/sda
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.

I have no glue why a part of the text is red now! Pleas ignore that!

How to install umbrelOS that it can boot without manually installing grub? Or how to install grub?

1 Like

Hi, I’m just a customer ;-)…
But what is the output of command ā€šlsblkā€˜?

umbrel@umbrel:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 476.9G  0 disk
|-sda1   8:1    0   200M  0 part /mnt/root/boot/efi
|                                /boot/efi
|-sda2   8:2    0   9.8G  0 part
|-sda3   8:3    0   9.8G  0 part /mnt/root
|                                /
`-sda4   8:4    0 457.1G  0 part /mnt/root/var/log
                                 /var/log
                                 /mnt/root/var/lib/docker
                                 /var/lib/docker
                                 /mnt/root/home
                                 /home
                                 /mnt/root/data
                                 /data
sdb      8:16   1  29.4G  0 disk
|-sdb1   8:17   1   146K  0 part
|-sdb2   8:18   1   2.8M  0 part
`-sdb3   8:19   1  12.6M  0 part

sdb is the USB stick with supergrubdisk.

Today my raspi with HomeAssistant ā€œdiedā€. So I had to do something. So I installed Proxmox on my machine and created a VM for HomeAssistant. Later IĀ“m going to install UmbrelOS as a VM on my Proxmox virtual environment like discussed in the following thread:
https://community.umbrel.com/t/umbrel-1-1-on-proxmox/

With proxmox there is no problem booting… My problem is ā€œsolvedā€.

1 Like

Excellent solution @servietos !

Finally I could do a proper upgrade on my +decade old umbrel host.

Regards.

2 Likes

FYI, and for anyone looking for an answer later…

You are most likely seeing this because you accidentally didn’t boot your USB in UEFI mode. You can probably fix this by installing grub-pc-bin, but a probably ā€œmore correctā€ fix is probably going to be to reboot your device and select UEFI mode for your USB; then you won’t see the initial error:

grub-install: error: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory.

I say probably ā€œmore correctā€ because I GUESS it’s feasible that someone is running this on a pre-UEFI machine, but UEFI has been around for a long time, so I am guessing anyone reading this is not using legacy bios mode by choice.

1 Like

Hi @jtirelli, I believe that’s my case - my machine is pretty old and I get the same error as you mentioned. Unfortunately grub-pc-bin hasn’t solved the issue for me, since I’m still getting the following error:

Installing for i386-pc platform.
grub-install: error: install device isn't specified

Do you have any advice? Thanks!
PS: More info about my case: [umbrelOS 1.1 update] Fail to boot from usb stick - #8 by brnbc