Dualbooting
It's assumed you have a box where you already run another operating system, and would like to be able to dual boot either the installed system or Alpine Linux.
Basic setup
Follow the Installation steps until the Base configuration. i.e set up Alpine without installing to a disk.
Create a Partition
To dual boot, Alpine needs a separate partition where it can be installed to. If you don't already have one free, refer Manual partitioning, to create a new Partition.
Make note of what partition you will use for your Alpine installation. In this example we are going to install Alpine on /dev/sdXY.
.
Format the partition
First format your partition. During the above partioning step, you would have installed the necessary formatting tool e2fsprogs. If not, install the tool for formatting the partition.
# apk add e2fsprogs
# mkfs.ext4 /dev/sdXY
Mount the partition
Mount the newly formatted partition. After mounting, the partition will be available at /mnt.
# mount -t ext4 /dev/sdXY /mnt
Install Alpine on the mounted partition
Now install Alpine Linux using the setup-disk script to the formatted partition(s) that was mounted on /mnt.
# setup-disk -m sys /mnt
The above command would have installed grub and grub-efi and no further configuration should be required.
Your dual boot installation can be considered complete. You be should be able to dual boot once you reboot.
If you face any difficulty, refer configure bootloader section.
Configure bootloader
There are different bootloaders to get a boot menu that allows selecting the operating system to boot. It is easiest to simply install and use rEFInd boot manager for dual boot between Alpine Linux and Windows.
Otherwise, one may adjust the bootloader that has already been installed by the other operating system.
Dual/Multiboot with Linux
The following example is given to give you some ideas for adjusting grub to boot Alpine.
Reboot your system (start Ubuntu).
Start a 'terminal' (ALT-F2 + "terminal" + [Run])
Take notes of the UUID of the partition you are planning to use:
# blkid /dev/sdXY
Start editing the grub2 configuration
# gedit /etc/grub.d/40_custom
I edited the file to look something like this:
Contents of /etc/grub.d/40_custom
Finally the configuration changes need to be applied to the grub2 bootloader:
update-grub
Now it's time to test. Reboot your box.
Dualboot with Windows
For Windows partitions to be detected with grub, you need `os-prober` and `grub-mount` installed at the time grub-mkconfig runs.
To upgrade the grub installation, the efi directory must be mounted in /boot/efi/. To know in which partition the efi is, we must examine the partition table, so if your main disk is /dev/sda then.
# fdisk -l /dev/sda
Device Start End Sectors Size Type /dev/sda1 2048 309247 307200 150M EFI System
# mkdir /boot/efi
# mount /dev/sda1 /boot/efi/
# apk add efibootmgr
(If your system supports UEFI. Most PC's from 2010, support UEFI)
Install grub
# grub-install –root-directory=/mnt
After grub re-installation, unmount efi partition:
# umount /boot/efi/