Installing Ubuntu using console

Bedrock V3000 does not have a display, so Ubuntu installation requires connecting Bedrock to a host PC using a console (serial over USB).

This document describes Ubuntu installation process on Bedrock V3000.

Test setup

The installation was validated at SolidRun using the following setup:

  • Ubuntu versions:

    • Ubuntu server 22.04

    • Ubuntu server 23.04

  • Terminal software:

    • Putty

    • Alternatively, Tio can also be used.
      known TIO limitation: in BIOS, the currently selected option is displayed in the same color as the background, which makes it not visible yet it is still fully functional.

  • USB flash disk: Kingston Data Traveler

Installation process

Creating bootable USB drive

Please follow instructions at https://solidrun.atlassian.net/l/cp/m9Reo11r

Connecting serial console

Please follow instructions at https://solidrun.atlassian.net/wiki/spaces/developer/pages/472481800

BIOS settings

You need to enable some configurations in BIOS before starting the installation.

  • Insert the USB media to the device

  • Turn on Bedrock

  • Repetitively press the DEL / ESC key to enter the BIOS setup

  • In BIOS go to -> Save & Exit -> <your bootable USB device> -> yes

  • Device will reset and a grub screen will appear

Configure grub

A grub menu will appear saying try or install Ubuntu. Press ‘e’ to set the boot parameters.

  • You will be prompted with a window like this:

setparams 'Install Ubuntu Server'
set gfxpayload=keep
linux        /casper/vmlinuz   quiet  --- 
initrd        /casper/initrd

  • Remove the quiet parameter and change the entry that starts with ‘linux’ to look as follows:
    linux /casper/vmlinuz console=tty1 console=ttyS4,115200n8 systemd.wants=getty@ttyS4.service —

  • Wait for the live USB to boot

Sometimes the text cursor is not visible, you can still edit grubs boot arguments, or you can reboot and the cursor will appear again.

Live USB settings

  • After live USB boots

It might be hard to see the shell prompt within all the kernel output so you can press ‘enter’ to find it quicker.

  • run sudo subiquity

  • if you see a “waiting for coloud init” message, wait until it times out and opens the installer (could take some time since some services should finish starting in the background).

  • Choose your prefered settings for installation

  • Wait until installation is complete

  • when prompted, remove the installation media and press enter

  • Device will be rebooted

Enable ttyS4 service

Enable the ttyS4 console to be able to interact with the system.

  • Boot into BIOS

  • Boot from the disk you installed linux on

  • If you don't get a grub menu automatically on boot, connect a keyboard to the bedrock and hold the 'shift' key right after boot

    • If you dont get the grub menu after pressing shift, connect a keyboard to the device and hold shift on the connected keyboard when booting

  • In the grub menu choose:

    • Advanced options for Ubuntu

    • Select the line that says recovery mode

    • Press ’e’

    • In the line that says: linux        /boot/vmlinuz-5.15.0-43-generic root=UUID=4c58e5aa-6443-4fb2-84e7-4ac2265a7b9e ro recovery nomodeset dis_ucode_ldr

    • Add the console parameters to grub after the ‘ro’ parameter

      • from this:

      • linux /boot/vmlinuz-6.2.0-27-generic root=UUID=1dfc1a94-6289-4b15-9f4f-0fb36c083841 ro

      • to this:

      • ro console=tty1 console=ttyS4,115200n8 systemd.wants=getty@ttyS4.service quiet

        • Note: if you want to see the boot logs remove the quiet argumentPress ctrl+x to boot

Sometimes the text cursor is not visible, you can still edit grubs boot arguments, or you can reboot and the cursor will appear again.

  • Type to enable the ttyS4 service automatically when you boot: systemctl enable getty@ttyS4

  • edit grub config file: nano /etc/default/grub

    • add the console redirection to the grub default options (same as above):
      on line: GRUB_CMDLINE_LINUX_DEFAULT add the following

      GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty1 console=ttyS4,115200n8"
    • save the file and run: update-grub

It might be hard to see the shell prompt within all the kernel output so you can press ‘enter’ to find it quicker.

SolidRun Ltd.