This guide will allow you to install linux on Bedrock PC (follow all instructions without the ones marked in red).
text in red are remarks to change or further investigate
Tested versions:
Ubuntu server 20.04.2
Ubuntu server 22.04.1
Tested serial platforms:
Tio
Putty
Tested NVME disks:
Micron 7450 pro 960GB
Samsung 980 pro 980 GB
Create bootable usb drive:
download a linux server iso
sudo dd if=${path/to/iso/file.iso} of=/dev/sdX status=progress
Note X is the letter marked by your computer when running lsblk (usually a or b)
Insert the usb media to the device
In bios enable uart support (ASK RON HOW TO DO IT)
Boot from inserted usb media
Putty settings:
If keyboard input doesn’t work change XON\XOFF to none
Grub settings:
In grub press “e” to enter into setparams mode
You will be prompted with a window like this:
setparams 'Install Ubuntu Server'
set gfxpayload=keep
linux /casper/vmlinuz quiet ---
initrd Bedrock V3000 lacks an integrated display adapter. Consequently, to install Ubuntu, users must connect Bedrock to a host PC using a console, facilitated by serial over USB.
This document describes Ubuntu installation process on Bedrock V3000.
Table of Contents
Anchor | ||||
---|---|---|---|---|
|
This installation process has been validated by SolidRun with the following configurations:
Ubuntu versions:
Ubuntu server 22.04
Ubuntu server 23.04
Ubuntu server 24.04
Terminal software:
Putty
USB flash disk: Kingston Data Traveler
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Please follow instructions at https://solidrun.atlassian.net/l/cp/m9Reo11r
Anchor | ||||
---|---|---|---|---|
|
Please follow instructions at Using serial console with Bedrock V3000
Anchor | ||||
---|---|---|---|---|
|
You need to choose your USB bootable device to start 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 menu screen will appear
If you dont see a grub menu, reboot and press the “arrow down” key repetitively right after you pressed enter to boot from BIOS
Anchor | ||||
---|---|---|---|---|
|
At the grub menu (displaying "try or install Ubuntu"),Press ‘e’ to set the boot parameters.
You'll encounter a window resembling:
Code Block setparams 'Install Ubuntu Server' set gfxpayload=keep linux /casper/vmlinuz quiet --- initrd /casper/initrd
Remove the quiet parameter and change line 3 to:
Change below command to the correct ttyS#
...
linux the entry that starts with ‘linux’ to look as follows:
console=tty0 console=ttyS4,115200n8 ---Code Block linux /casper/vmlinuz
...
console=tty1 console=ttyS4,115200n8 systemd.
...
wants=
...
Note: the text in bold may be different for you, you just need to add the parameters after that.
Now press ctrl+x to boot
A message saying “Booting a command list” will appear
It might take a while to start showing more output
After the output stops running you will see one or more of the following messages:
Welcome to Ubuntu Server Installer!
Cloud init is ready
Some encryption keys
You have 3 options to proceed from here (choose ONE):
1. Install from serial console:
Check if we can make it work through uart input
IMPORTANT: Connect a keyboard to the device (serial input will not work here)
Press ctrl+z
Type the commands in bold:
systemctl status getty@ttyS4.service
systemctl enable getty@ttyS4.service
systemctl start getty@ttyS4.service
Check console redirection or start service automatically
Note: you will not see what you're typing but just continue
After the last command, a console line will appear (switch back to uart input)
Run the following file: /usr/bin/subiquity-shell
2. Install from ssh: this option enables yopu to connect throuth SSH (wasnt tested yet).
3. Install from cloud init: this option uses network boot
Installation process:
Choose language
If prompted to update the installer choose the desired option
Choose keyboard configuration
Configure network interface (not mandatory)
Configure proxy (not mandatory)
Configure ubuntu archive mirror (not mandatory)
Choose installation disk
Choose on which partition to install linux, or choose the whole disk
Note: chosen disk will be formatted so be careful when choosing, so you will not lose your data.
Choose what snaps you want to install
After install finishes select reboot now
After installation is done:
run: systemctl start getty@ttyS4.service
And : systemctl enable getty@ttyS4.service
- After that the device's console will appear and that's it.
serial-getty@ttyS4 —
Wait for the live USB to boot
Info |
---|
might take some time for the installer to run, so just give it some time |
Anchor | ||||
---|---|---|---|---|
|
After live USB boots
Run
sudo subiquity
NOTE: On newer Ubuntu versions the installer might run automatically, so you can skip this step.
If you see a “waiting for cloud init” message, wait until it times out and opens the installer (could take some time since some services should finish starting in the background).
Proceed with your preferred installation settings and await completion
Wait until installation is complete
When prompted, remove the installation media and press enter
Device will be rebooted
Anchor | ||||
---|---|---|---|---|
|
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, press the “arrow down” key repetitively right after you pressed enter to boot from BIOS
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:
Code Block linux /boot/vmlinuz-6.2.0-27-generic root=UUID=1dfc1a94-6289-4b15-9f4f-0fb36c083841 ro
to this:
Code Block linux /boot/vmlinuz-6.2.0-27-generic root=UUID=1dfc1a94-6289-4b15-9f4f-0fb36c083841 ro console=tty1 console=ttyS4,115200n8 systemd.wants=serial-getty@ttyS4 quiet
Note: if you want to see the boot logs remove the
quiet
argumentPress ctrl+x to boot
Type to enable the ttyS4 service automatically when you boot:
systemctl enable serial-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 followingCode Block GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty1 console=ttyS4,115200n8"
save the file and run:
update-grub