Ppc64le

From Alpine Linux
Revision as of 20:28, 6 September 2022 by Arrogance (talk | contribs) (→‎Booting Alpine from CDROM using qemu: Don't recommend "enable-kvm" by default. It makes no sense unless the host is the same architecture as the guest.)

This page is used to describe the ppc64le port.

Testing (for developers)

The hosting sponsor for the ppc64le port operates a miniCloud service, which provides ppc64le images to Alpine for testing.

View their website for more info.

Hardware

You can buy POWER8 or POWER9 hardware from IBM or from other vendors. For example, the Raptor Computing System Blackbird workstation is reasonably priced, competitive when compared to similar x86 servers, and is fully supported by the ppc64le port.


The following are the IBM machine models that would support Alpine Linux:


Raptor Computing System also has machines:


Tyan also has machines:

  • Tyan TN76-BP016
  • Tyan GT75-BP012
  • Tyan TN71-BP012


Open Power machines:

  • Rackspace Barreleye [17]
  • Google Zaius [18]

Installation

The Alpine 3.11.5 ppc64le ISO is available here.

The user login is root with no password.

Booting Alpine from CDROM using qemu

To start qemu using the Alpine ISO as cdrom, you can use a command similar to:

$ sudo qemu-system-ppc64 -device spapr-vlan,netdev=net0,mac=4C:45:42:45:79:F7 -netdev bridge,br=br0,id=net0 -m 8G -smp 16,sockets=16,cores=1,threads=1 -nodefaults -nographic -serial stdio -cdrom alpine-standard-3.11.5-ppc64le.iso

If running on a ppc64le host, you can append -enable-kvm to the above command.

Installing Alpine to hard-disk using qemu

Create a disk to install Alpine on it:

$ qemu-img create alpine_disk.img 16G

Start qemu attaching the created disk and using Alpine ISO as cdrom. Here is an example of the qemu command:

$ sudo qemu-system-ppc64 -hda alpine_disk.img -device spapr-vlan,netdev=net0,mac=4C:45:42:45:79:F7 -netdev bridge,br=br0,id=net0 -enable-kvm -m 8G -smp 16,sockets=16,cores=1,threads=1 -nodefaults -nographic -serial stdio -cdrom alpine-standard-3.11.5-ppc64le.iso

Run the setup-alpine script:

$ setup-alpine

After running the setup-alpine script, select the disk (in this example, sda) when the following configuration appears:

Available disks are:
sda   (17.2 GB QEMU     QEMU HARDDISK)
Which disk(s) would you like to use? (or '?' for help or 'none') [none] : sda

When asked how you would like to use the disk, select sys, and select yes when asked whether to erase the disk.

NOTE: The grub-ieee1275 and sfdisk are not included in ISO. Internet connection is required to complete the setup.

The installation will format the disk properly. After this finishes, type reboot.

Booting Alpine from CDROM using qemu and saving modifications between reboots

When using Alpine in this mode, you need to use Alpine Local Backup (lbu) to save your modifications between reboots. This requires some writable medium, usually removable.

Create a disk to save Alpine modifications:

$ qemu-img create alpine_disk.img 8G 

Start qemu attaching the created disk and using Alpine ISO as cdrom. Here is the example of the qemu command:

$ sudo qemu-system-ppc64 -hda alpine_disk.img -device spapr-vlan,netdev=net0,mac=4C:45:42:45:79:F7 -netdev bridge,br=br0,id=net0 -enable-kvm -m 8G -smp 16,sockets=16,cores=1,threads=1 -nodefaults -nographic -serial stdio -cdrom alpine-standard-3.11.5-ppc64le.iso 

Format the attached disk and add it to the /etc/fstab file:

$ apk add e2fsprogs  
$ mkfs.ext4 /dev/sda  <br>
$ echo "/dev/sda        /media/sda      ext4    noauto,rw 0 0" >> /etc/fstab  <br>
$ mkdir /media/sda  <br>
$ mkdir /media/sda/cache <br>

Set lbu to write to the attached disk, setting LBU_MEDIA=sda in the /etc/lbu/lbu.conf file.

Run the setup-alpine command, and select the following configurations when asked:

  • Enter where to store configs: ('floppy', 'sda', 'usb' or 'none') [none]: sda
  • Enter apk cache directory (or '?' or 'none') [/media/sda/cache]: /media/sda/cache

The last step is to commit the changes:

$ lbu commit 

After performing these configurations, you can reboot Alpine and the modifications will be saved. The next time a change happens, you just need to run the lbu commit command, as the configurations are already done.

It is important to know that, by default, lbu only cares about modifications in /etc and its subfolders, with the exception of /etc/init.d!

See also

  • Alpine local backup - For more information about how to use lbu and how to include a new folder to backup.

Reference

* ABI - https://openpowerfoundation.org/?resource_lib=64-bit-elf-v2-abi-specification-power-architecture