UC20 beta1 released

Ubuntu Core is Ubuntu built with snaps for snaps, and we’re happy and excited to announce the first beta release of its next iteration: Ubuntu Core 20 (UC20).

From one-off Raspberry Pi projects to factory deployments in their thousands, Ubuntu Core enables anyone to easily create secure, embedded devices that inherit all the advantages of snaps, including:

  • automatic, atomic, transactional updates that can be rolled back
  • complete isolation between OS, apps, data and even data versions
  • access to thousands of apps on the Snap Store, or create your own

UC20 is built on the foundations of Ubuntu 20.04 LTS (Focal Fossa). It’s the next generation of Ubuntu for embedded devices.

New features for this beta release include:

  • Raspberry Pi support (both ARMv7 and ARM v8)
  • Full-disk encryption via TPM integration
    currently x86 only with ARM to follow - beta1 TPM integration works with existing CA
  • Recovery mode menu and chooser
  • A new recovery and reinstall mode
  • Initial MAAS & cloud-init support

Please note that because we will change the TPM integration from the exiting CA keys to the new UC20 key the beta may not be upgradable to the UC20 final release.

Download the latest UC20 images from:

http://cdimage.ubuntu.com/ubuntu-core/20/candidate/

Testing UC20

The easiest way to test our UC20 releases is to download the latest image and either write the image to a USB storage device, and test the build on real hardware, or use the image with a virtual machine.

If your hardware supports TPM, and has UEFI Secure Boot enabled, UC20 will use these to deploy a fully encrypted system. When redeploying to the same device, the TPM will need to be cleared.

To test UC20 with QEMU (https://www.qemu.org/), first install the OVMF package (eg. sudo apt install ovmf) then run the following command to boot a UC20 image (renamed pc.img) within a virtual machine:

$ sudo qemu-system-x86_64 -smp 2 -m 2048 \
-net nic,model=virtio -net user,hostfwd=tcp::8022-:22 \
-drive file=/usr/share/OVMF/OVMF_CODE.fd,if=pflash,format=raw,unit=0,readonly=on \
-drive file=pc.img,cache=none,format=raw,id=disk1,if=none \
-device virtio-blk-pci,drive=disk1,bootindex=1 -machine accel=kvm

Older OVMF packages can cause QEMU boot problems. Either build them manually, or consider extracting the files from a more recent package. OVMF for Ubuntu 20.04 LTS (Focal Fossa) is known to work.

With a successful boot, Ubuntu Core initialisation will ask for both networking parameters and an Ubuntu One account (see https://snapcraft.io/account).

When the initialisation process has finished, and rebooted, you can SSH to the device using either the physical device network address, or localhost port 8022 for the above QEMU example command:

$ ssh <username>@localhost -p 8022

Recovery mode chooser

To access the recovery chooser, reset or start up UC20 while holding the 1 key.

UC20 Recovery chooser

The 1 key needs to be held until the initial boot process completes, after which you’ll be presented first with the system selection menu followed by the following recovery options:

  • Run normally: Continue with the boot process.
  • Recover: reboot into recovery mode and log into the system using prior credentials to recover your data, either via SSH or locally after setting up a password for the user.
  • Reinstall: initialise the device from the listed system version image. All existing user data on the device will be removed.

We’d love to get your feedback on this release - let us know what you think on the forum, and for further details on Ubuntu Core, see https://ubuntu.com/core.

5 Likes

What the license for Ubuntu Core 20
I don’t found useful information in ubuntu.com

Ubuntu Core is built from deb packages in the Ubuntu archives so the same licenses apply …

This .1 release is basically just a collection of all the updated packages into a new iso file, so that people looking to install Ubuntu now won’t have to download a ton of updates afterwards.

Well, Ubuntu Core 20 (UC20) has (still) not been released yet and given Ubuntu Core is a rolling release there are not actually .1 releases. While the snap packges that Ubuntu Core is built from are indeed built from the latest deb packages in the ubuntu archive, there are tons of other snap specific changes happening too. Especially between the above announced beta release and today there have been many code changes and improvements already.