alpine-wiki

Alpine Install: from a USB to any computer customized partitioning

Overall description: Alpine Installation from a official iso, dumpet to a usb source device media, and installed to a bare metal computer no matter if include UEFI this will guide to installed to boot, but using customized partiton layout

Means you will install Alpine in customized layout paritiont on PC computer from USB media.

Warning This method only works for most modern pc beyond 2016 and recents.

Feels lost here? check How to use this guide section of this document

Requirements

Downloading the source medium to install

In this case, your PC wil have UEFI or must be beyond 2016’s you will need 64-bit iso then, the download URL will be:

http://dl-cdn.alpinelinux.org/alpine/v3.20/releases/x86_64/alpine-extended-3.20.0-x86_64.iso

How to download usin Graphical browser: point the web browser to that url and the download of the iso file will start. A file with .iso extension type, will be downloaded commonly into the Download directory.

How to download usin Command line method: in unix-like terminal (MAC/Linux) execute: cd $HOME;wget -c -t8 --no-check-certificate http://dl-cdn.alpinelinux.org/alpine/v3.20/releases/x86_64/alpine-extended-3.20.0-x86_64.iso, and unless the case of GUI, your .iso file wil be direclty in your home directory.

Writing the source medium to your USB

Using balena-etcher-electron to flash the USB drive from any system, its easy, simple and available for all OSs.

*Warning this guide assume only one hard drive as /dev/sda and only one USB as /dev/sdb

Note this method only works on recent MacOs 10.12+ or recent Linux 4.9+ installations

You can also made it manually, open your terminal program, move to the place directory where ISO downloaded are placed and cp to the USB device:

umount /dev/sdb; cp alpine-extended-3.20.0-x86_64.iso /dev/sdb

Booting the Alpine ISO disc

When the machine start, you must be sure to choose the right booting drive (commonly named USB boot drive or USB hard disk), so the disc/iso will boot and after a while a command line shell will show you:

Note When starting Alpine it will ask for the login, just typing root and pressing enter allows you to start:

Warning Tip: If your system is not configured to boot from a USB drive, it must be configured in the BIOS/UEFI, ask/search to your vendor or technical support, Toshiba computers need to hit F1 to choose boot medium, DELL must hit F11 to choose medium for example, and so and so

Installing after boot up

Warning if you do not download the extended ISO it may require internet.!!!

runing the setup script

After entering the root environment and gets the console prompt installation media, you must perform these commands, that will be in following order:

export BOOT_SIZE=500

export SWAP_SIZE=8164

export BOOTLOADER=grub

setup-alpine

After last command, it will start some questions, these are in the following order:

Format Patitions and disk layout

We are configuring a UEFI capable system so we need to setup a minimal layout of three or more partionts, following are the mandatory ones:

Mount point Partition Partition type Purpose Minimum size Formats
/boot/efi ? /dev/1 GPT UEFI Boot partition 260 MiB eufat
none /dev/2 Linux swap memory 2Gb swap
/ /dev/3 Alpine Linux root system OS 32 GiB btreefs,ext2/3/4,xfs

For more info about check ../alpine/requirementes.md and the document ../alpine/alpine-boot-uefi-bios.md.

Warning edit /etc/apk/respositories and enable community repositories!

Here we will assume you already partitioned the disk, if not this part will be only a quick steps using fdisk and assuming your ssd/hdd is /dev/sda so then using same medium running alpine linux you can use fdisk:

After answering sys to the questions about the drive, and since there will only be one drive, answering sda (if options shows to you) on which drive to use, this will create and leave your hard drive as follows:

So now we must format partitions so lest run those commands from alpine running medium, be carefully that you must enabled the community repositories previously:

apk add e2fsprogs dosfstools

mkfs.vfat -n EFI /dev/sda1

mkswap -L SWAP /dev/sda2

mkfs.ext4 -b 1024 -m 1 -L ROOT /dev/sda3

Setup and install to customized partition layout disk

This part will assume the following layout to property work, mounted in the following order as mandatory:

So then lest install customized partioned disk with alpine:

Warning edit /etc/apk/respositories and enable community repositories!

apk add grub-efi arch-install-scripts coreutils os-prober

mkdir -p /target

mount -t ext4 /dev/sda3 /target

mkdir -p /target/boot

mount -t vfat /dev/sda1 /target/boot

mkdir -p /target/boot/efi

export BOOTLOADER=grub

export KERNELOPTS=" acpi_enforce_resources=lax iomem=relaxed vsyscall=emulated "

setup-disk -m sys /target

umount /target/boot

umount /target

NOTES: offline mode

If you cannot setup a internet connection you cannot install Alpine linux, unless you used 64bit intel/amd and “extended” iso install media. Most of the packages need to setup this procedure are not included in standard images, specially those for ARM devices like RasberryPi ones becouse WIFi setup.

Finishing the installation

After all of the scripts in the setup end, the “reboot” message will not happens and just type “reboot” and press enter, remove the boot media and newly installed system will be booted.

You cannot see a graphical window system? take it easy and get calmed down.. in Alpine all are made by the right way.. so if user need a desktop.. user can install a desktop

The wifi setup after install

Please follow the guide alpine-tutorial-wifi-routering.md, you will need to download the needed packages manually from another device and then but it on the installed Alpine computer using USBstorage external device.

Recommendations

How to use this guide

This guide is for install process, many parts will need you understand minimal knowledge of linux.

This guide assumed you have a serial port allowed in the targeted computer, also its important you shuold understand the way of the configuration in this guide.

Warning Some Linux or/and Mac terminals have security cut/paste locks, so if you paste, the first line will be preceded by garbage, check always the first char of your paste.

Each portion of monospaced text means you must run it on the console, those lines junted can be performed and paste as one command, separate lines canont be run in bach mode.. so eacho separate line must be run alonside and wait output!

Licensing clarifications

CC BY-NC-SA: the project allows reusers to distribute, remix, adapt, and build upon the material in any medium or format for noncommercial purposes only, and only so long as attribution is given to the creators involved. If you remix, adapt, or build upon the material, you must license the modified material under identical terms, includes the following elements:

https://codeberg.org/alpine/alpine-wiki/src/branch/main#license

See also