Dualbooting: Difference between revisions
Prabuanand (talk | contribs) (moved the mount point reasoning from Bootloaders page) |
Prabuanand (talk | contribs) (updated wikilinks and minor rewording) |
||
| Line 1: | Line 1: | ||
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. | 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. | ||
{{Warning|This Dualboot manual is intended for experienced users. You will have to manually edit partitions on your harddisk. Take adequate backup of important data before proceeding further. | {{Warning|This Dualboot manual is intended for experienced users. You will have to manually edit partitions on your harddisk. Take adequate backup of important data before proceeding further.}} If you want to avoid partitioing your existing hard disk, it may be better for you to buy an additional disk and use [[Installation#setup-alpine_based_System_Disk_Install|setup-alpine based Install]], or use [[Tutorials_and_Howtos#Virtualization|virtualization]]. | ||
If you want to avoid partitioing your existing hard disk, it may be better for you to buy an additional disk and use [[Installation#setup-alpine_based_System_Disk_Install|setup-alpine based Install]], or use [[Tutorials_and_Howtos#Virtualization|virtualization]] | |||
== Install Alpine Linux == | == Install Alpine Linux == | ||
To Dual boot Alpine Linux, you must follow the [[ | To Dual boot Alpine Linux, you must follow the [[System Disk Mode#setup-disk based Installation|setup-disk based Installation]], except for the following points: | ||
# To Dualboot, Alpine Linux needs a separate partition. If you don't have a partition refer [[Setting_up_disks_manually#Manual partitioning|manual partitioning]] to create and format it. If you are using [[btrfs]] filesystem, | # To Dualboot, Alpine Linux needs a separate partition. If you don't have a partition refer [[Setting_up_disks_manually#Manual partitioning|manual partitioning]] to create and format it. If you are using [[btrfs]] filesystem, refer [[Install_Alpine_on_a_btrfs_filesystem_with_refind_as_boot_manager|btrfs tutorial]] for more information. | ||
# Mount the '''/ (root)''' partition i.e partition(here sdXY), where you'd like to install Alpine Linux on a mount point i.e say /mnt. {{Cmd|# mount /dev/sdXY /mnt}} | # Mount the '''/ (root)''' partition i.e partition(here sdXY), where you'd like to install Alpine Linux on a mount point i.e say /mnt. {{Cmd|# mount /dev/sdXY /mnt}} | ||
#:{{Note| To allow multiple linux installations to co-exist, it is better to keep the /boot folder (where kernel files reside) inside the '''"/" root ''' partition. Following the below instructions will result in: {{cat|/etc/fstab|<nowiki>... | #:{{Note| To allow multiple linux installations to co-exist, it is better to keep the /boot folder (where kernel files reside) inside the '''"/" root ''' partition. Following the below instructions will result in: {{cat|/etc/fstab|<nowiki>... | ||
UUID=ABCD-1234 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 2 | UUID=ABCD-1234 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 2 | ||
...</nowiki>}}}} | ...</nowiki>}}}} | ||
# If you're using EFI, pay special attention to ESP partition | # If you're using EFI, pay special attention to ESP partition as it might be used by other operating system(s) too. Create a mount point <code>/mnt/boot/efi</code> for the same. {{Cmd|# mkdir -p /mnt/boot/efi}} | ||
# Identify the correct partition name for ESP partition and mount it on the | # Identify the correct partition name for ESP partition and mount it on the mount point created in the previous step. {{Cmd|# mount /dev/sdXY /mnt/boot/efi}} | ||
# Install Alpine Linux on the chosen partition. {{Cmd|# setup-disk -m sys /mnt}} | # Install Alpine Linux on the chosen partition. {{Cmd|# setup-disk -m sys /mnt}} | ||
# Your dual boot installation can be considered complete. You be should be able to dual boot once you [[Installation#Reboot|reboot]]. | # Your dual boot installation can be considered complete. You be should be able to dual boot once you [[Installation#Reboot|reboot]]. | ||
| Line 25: | Line 25: | ||
=== Dual or Multiboot with Linux === | === Dual or Multiboot with Linux === | ||
The following example is given to give you some ideas for adjusting [[Bootloaders#GRUB|grub]] to boot Alpine. | The following example is given to give you some ideas for adjusting [[Bootloaders#GRUB|grub]] to boot Alpine. | ||
| Line 55: | Line 56: | ||
=== Dualboot with Windows === | === 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. | For Windows partitions to be detected with grub, you need `os-prober` and `grub-mount` installed at the time grub-mkconfig runs. | ||
| Line 78: | Line 80: | ||
== Troubleshooting == | == Troubleshooting == | ||
Check [[ | Check [[System Disk Mode#Troubleshooting|Troubleshooting]] page, if you encounter errors like [[System Disk Mode#Mounting_on_/dev/sdXY_sysroot_failed|Mounting on /dev/sdXY sysroot failed]]. | ||
== References == | == References == | ||
* [https://brittanymitchell.co/index.php/2024/03/06/dual-boot-windows-11-and-alpine-linux-part-2/ Dual Boot Windows 11 and Alpine Linux] | * [https://brittanymitchell.co/index.php/2024/03/06/dual-boot-windows-11-and-alpine-linux-part-2/ Dual Boot Windows 11 and Alpine Linux] | ||
* [https://unix.stackexchange.com/questions/405472/cannot-find-efi-directory-issue-with-grub-install/679800#679800 Mount EFI] | * [https://unix.stackexchange.com/questions/405472/cannot-find-efi-directory-issue-with-grub-install/679800#679800 Mount EFI] | ||
Latest revision as of 16:14, 31 October 2025
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.

If you want to avoid partitioing your existing hard disk, it may be better for you to buy an additional disk and use setup-alpine based Install, or use virtualization.
Install Alpine Linux
To Dual boot Alpine Linux, you must follow the setup-disk based Installation, except for the following points:
- To Dualboot, Alpine Linux needs a separate partition. If you don't have a partition refer manual partitioning to create and format it. If you are using btrfs filesystem, refer btrfs tutorial for more information.
- Mount the / (root) partition i.e partition(here sdXY), where you'd like to install Alpine Linux on a mount point i.e say /mnt.
# mount /dev/sdXY /mnt
- Note: To allow multiple linux installations to co-exist, it is better to keep the /boot folder (where kernel files reside) inside the "/" root partition. Following the below instructions will result in:
Contents of /etc/fstab
... UUID=ABCD-1234 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 2 ...
- If you're using EFI, pay special attention to ESP partition as it might be used by other operating system(s) too. Create a mount point
/mnt/boot/efifor the same.# mkdir -p /mnt/boot/efi
- Identify the correct partition name for ESP partition and mount it on the mount point created in the previous step.
# mount /dev/sdXY /mnt/boot/efi
- Install Alpine Linux on the chosen partition.
# setup-disk -m sys /mnt
- Your dual boot installation can be considered complete. You be should be able to dual boot once you reboot.
Refer configure bootloader section, if you would like to change your default bootloader(Optional).
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 or 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/
Troubleshooting
Check Troubleshooting page, if you encounter errors like Mounting on /dev/sdXY sysroot failed.