Running RancherOS on Estuary D02 board
Requirements
- RancherOS ARM rootfs image:
rootfs_arm.tar.gz
- Estuary D02 kernel:
Image_D02
- Estuary D02 device tree:
hip05-d02.dtb
- Estuary Ubuntu ARM64 rootfs image:
Ubuntu_ARM64.tar.gz
Prepare the storage media
Partition (optional) and format a USB drive or a SAS drive. The root partition should be formatted with ext4 filesystem.
Prepare the root filesystem
Mount the ext4 formatted root partition (or the full disk) to an empty directory on your Linux machine (e.g. /mnt/d02_rootfs
).
Unpack rootfs_arm.tar.gz
into the root partition:
$ cd /mnt/d02_rootfs
$ sudo tar -xzf ~/Downloads/rootfs_arm.tar.gz
Unpack /lib/modules
and /lib/firmware
from Ubuntu_ARM64.tar.gz into the root partition:
$ sudo tar -xzf ~/Downloads/Ubuntu_ARM64.tar.gz lib/modules lib/firmware
Unmount the root partition and hook the drive to the D02 board.
Edit grub.cfg
Here's an example grub menu entry for RancherOS:
menuentry "D02 RancherOS USB" --id d02_ros_usb {
set root=(tftp,192.168.3.1)
linux /Image_D02 root=/dev/sda2 rootfstype=ext4 rw init=/init console=ttyS0,115200 earlycon=uart8250,mmio32,0x80300000 ip=dhcp rancher.password=rancher quiet
devicetree /hip05-d02.dtb
}
Replace 192.168.3.1
with your TFTP server IP-address, /dev/sda2
with your root partition device. Kernel parameter rancher.password=rancher
sets rancher
user password to rancher
.
Put the boot files into the boot directory
Place the grub config, kernel image and the device tree blob onto the boot dir. This is typically a TFTP root dir on a PXE boot server:
$ sftp root@192.168.3.1:/var/lib/tftpboot <<< 'put ./tmp/tftp/*'
Enjoy!
You can now turn on your D02 and it will boot with RancherOS.
Resources