Oracle Linux 9 has been announced on June 30th, 2022. Immediately after the announcement we also released the Oracle Linux 9 image for Raspberry. Here the steps to leverage this image and run Oracle Linux 9 on Raspberry.

Prepare the Installation Media

  • Obtain the Raspberry Pi disk image for Oracle Linux 9 from the Oracle Technology Network at https://www.oracle.com/linux/downloads/linux-arm-downloads.html.
  • On an existing Oracle Linux system, insert the removable storage device to be used to copy the image file.
    • For example, insert an SD Card into an SD Card reader that is connected to the system, or, for a USB attached storage device, into the USB port.
  • Ensure that the removable storage device has enough capacity to store the image. (4GB min. required, 16GB min. suggested)
  • Perform a block copy of the image file to the removable storage device.

Caution: This operation is destructive and overwrites all of the data on the device you have specified. Ensure that you have specified the correct device name. Note that the operation might take some time to complete.

# sudo bash -c “xzcat <compressed-image> > <path-to-device-name>”

Previous command can be executed on Linux or MacOS with proper tools installed. compressed-image refers to the compressed image that you downloaded. path-to-device-name refers to the name of of the removable storage device; device name example on Linux is “/dev/sdb” while an example for MacOS is “/dev/disk3“.

  • After the operation has completed, eject the removable device from the system.

Customize the image as appropriate

  • Insert installation media device into the associated slot on the Raspberry Pi, then power on the device.
  • Log in to the image as the root user by using the password oracle. The remote login (by ssh) does not work so this operation has to be executed locally.
  • Change the password immediately as prompted.
  • If your removable storage device is larger than the image, you can grow the partition size to maximize disk usage.
    • Identify the device information.

# sudo mount | grep root 

  • Information similar to the following example might be displayed:

# dev/mmcblk0p3 / type btrfs (rw,cache,subvolid=258,subvol=/root) 

In the output, /dev/mmcblk0p3 indicates both the device (mmcblk0) and partition number (3).

Note: The name of the removable storage device and the partition number are determined by the location where the removable storage device is mounted. This location can vary, depending on your Raspberry Pi model.

  • Grow the partition size, for example:

# growpart /dev/mmcblk1p 3

# btrfs filesystem resize max / 

Further optional steps

By default “root” access is not enabled by password via ssh; if you want to get it enabled you have to edit the sshd configuration file /etc/ssh/sshd_config and update following line:

PermitRootLogin prohibit-password

to:

PermitRootLogin yes

Immediately update your Oracle Linux 9 system to obtain all the updates (bug & security fixes) installed:

# dnf update -y