Installation
Please do help with sorting out the current wiki documentation, as soon as exploring around gives you a grasp good enough to sort out further things.
Typical Hardware Requirements
- At least 100 MB of RAM (A graphical desktop system may require up to 1 GB minimum.)
- A writable storage device. (Required for the "sys" or "data" runtime modes (see below). Optional for making backups in "diskless" mode.)
Install Procedure
Similar to many other distributions, the first installation steps usually consist of
- Downloading one of the latest stable-release ISOs, and comparing the downloaded image's
sha265sum
checksum to the one in the corresponding*.sha256
checksum file, and to verify its GPG signature. - Either burning the ISO onto a blank CD with your favorite CD burning software, or creating a bootable USB drive.
- Booting from the CD or USB drive, and logging in to the command line as user
root
with its initally empty password.
(For installing on ARM systems, see Alpine on ARM.)
However, contrary to most other distributions, this initially booted Alpinelinux system (command line environment) is first copied entirely into RAM, and runs completely independent from the (slow) initial boot media.
And then, the setup-alpine
script, and other tools, are used to configure the initial Alpinelinux system, install further packages, and prepare the system for the next boot.
The system can boot into three general Alpinelinux runtime modes:
diskless mode This is the default boot mode of the .iso images. With the setup-alpine
selection "disk=none" the whole system runs from RAM. Customized configuration and package selections may still be preserved on permanent storage media by using lbu
, the "local backup utility", and a local package cache. The boot device may, for example, be some read-only CD, a USB drive, a Compact Flash or SD card.
data mode This mode also runs mostly from RAM, with the exception of a selected writable data partition that gets mounted as /var. This mode is better-suited when some larger amount of data needs to be preserved between reboots, e.g. mailspools, databases, or log files.
sys mode This is a traditional hard-disk install. The setup-alpine
script defaults to creating three partitions on the selected disk, for /boot, swap and / (filesystem root). This mode may, for example, be used for generic desktop, and development machines.
Additional Hints
Booting from external devices
Insert the boot media to a proper drive or port of the computer and turn the machine on. But depending on the computer it may be necessary, e.g. to press the `F12` key to get a selection to choose the media to boot from.
Questions asked by setup-alpine
The setup-alpine
script will ask to configure several things, including:
- Keyboard map (e.g. us and variant of us-nodeadkeys)
- Hostname (The name for the computer.)
- Network options
- DNS options: For privacy reasons, it is NOT recommended to use 8.8.8.8 (google servers).
- Timezone
- Proxy ("None" to connect directly to the internet.)
- SSH (Openssh is part of the default images.)
- NTP (Chrony is part of the default images.)
- Mode (Select between "diskless", "data" or "sys" as described above.)
Booting and using the new system
After the installation is completed, depending on the run mode, the initial installation media may be removed and the system may be rebooted from the newly installed device, to confirm that everything works.
The commands needed are poweroff
or reboot
.
Further Documentation
A way, and an example, to make the stock ISO images load a local backup (apkovl and packages) when booting, can be found in How_to_make_a_custom_ISO_image. (Debian's grub-imageboot package is another way to boot .iso files directly.)
Post-Install
- Alpine post install packages and setup configurations for new users
- Setting up Networking
- Package Management (apk) (How to add/remove packages on your Alpine)
- Alpine local backup (lbu) (Permanently store your modifications in case your box needs reboot)
- Init System (OpenRC) (Configure a service to automatically boot at next reboot)
- Setting up Xorg
- Setting up a ssh-server (Using ssh is a good way to administer your box remotely)
- setup-acf (Configures ACF (webconfiguration) so you can manage your box through https)
- Hosting services on Alpine(Links to several mail/web/ssh server setup pages)
- Changing passwords
- Setting the timezone (Not needed for the default musl- or uClibc-based installs)