Compare commits
4 Commits
d3ddd4e71a
...
38676789c7
Author | SHA1 | Date |
---|---|---|
mckaygerhard | 38676789c7 | |
mckaygerhard | d696c6c06c | |
mckaygerhard | 5c1ea50adb | |
mckaygerhard | 53049c6048 |
|
@ -0,0 +1,291 @@
|
|||
# UEFI and BIOS support on Alpine
|
||||
|
||||
UEFI replaces the BIOS firmware interface originally present in all IBM
|
||||
PC-compatible personal computers, early modern computer's UEFI firmware
|
||||
implementations provide legacy support for BIOS services.
|
||||
|
||||
This document is the most up to date, the oficial wiki page from Alpine
|
||||
is currently outdated, please check the [Licensing clarifications](#licensing-clarifications)
|
||||
section of this document for any copyright issue.
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [About BIOS and UEFI](#about-bios-and-uefi)
|
||||
- [The history so far](#the-history-so-far)
|
||||
- [Alpine UEFI support](#alpine-uefi-support)
|
||||
- [Minimum Alpine partition scheme](#minimum-alpine-partition-scheme)
|
||||
- [Notes about the boot flags and boot partition](#notes-about-the-boot-flags-and-boot-partition)
|
||||
- [Alpine disk layout for UEFI](#alpine-disk-layout-for-uefi)
|
||||
- [UEFI/GPT minimal layout](#uefigpt-minimal-layout)
|
||||
- [BIOS/MBR minimal layout](#biosmbr-minimal-layout)
|
||||
- [BIOS/GPT minimal layout](#biosgpt-minimal-layout)
|
||||
- [BIOS boot process for newbies](#bios-boot-process-for-newbies)
|
||||
- [UEFI boot process explained](#uefi-boot-process-explained)
|
||||
- [UEFI mandatory partition mechanics](#uefi-mandatory-partition-mechanics)
|
||||
- [What's this infamous "Secure Boot"?](#whats-this-infamous-secure-boot)
|
||||
- [How to boot unsigned code?](#how-to-boot-unsigned-code)
|
||||
- [Overall notes and conclusions](#overall-notes-and-conclusions)
|
||||
- [Licensing clarifications](#licensing-clarifications)
|
||||
- [See also](#see-also)
|
||||
|
||||
## About BIOS and UEFI
|
||||
|
||||
In the old days, **BIOS**(for **B**asic **I**nput **O**utput **S**ystem)
|
||||
was how computers booted from the 1980s onwards. But now in newer
|
||||
hardware for devices, servers, laptops and desktops computers the
|
||||
**UEFI**(for **U**nified **E**xtensible **F**irmware **I**nterface) defines a
|
||||
software interface between an operating system and platform firmware
|
||||
into the vendor hardware.
|
||||
|
||||
## The history so far
|
||||
|
||||
All this was driven by a problem in the most extensive and used
|
||||
architecture: x86 32-bit, inclusivelly a new 2020's Skylake i7-6700k
|
||||
still has an 80286 embedded in it **because all x86 BIOS strictly only
|
||||
supports 16-bit 8088-derivative processors**.
|
||||
|
||||
Due newer incoming 64-bit incoming processors the older computers boot
|
||||
process are not more possible. **It started life on Itanium (Intel's first
|
||||
64-bit processor) systems. Itanium had no support for 32-bit, and
|
||||
certainly no embedded 80286**, so they had to come up with a different
|
||||
system.
|
||||
|
||||
So then Intel developed the original Extensible Firmware Interface (EFI)
|
||||
specification. Some of the EFI's practices and data formats mirror those
|
||||
from M$ Redmon's OS. In 2005, UEFI deprecated EFI 1.10 (the final
|
||||
release of EFI). The Unified EFI Forum is the industry body that (seems)
|
||||
"manages" the UEFI specification.
|
||||
|
||||
# Alpine UEFI support
|
||||
|
||||
Currently are enought for boot most systems, not all the architectures are complete
|
||||
supported.
|
||||
|
||||
The **support for [EFI System Partition](https://en.wikipedia.org/wiki/EFI_system_partition) was
|
||||
started in the [Alpine 3.7.0 new mayor release](https://alpinelinux.org/posts/Alpine-3.7.0-released.html)**,
|
||||
preliminary support in that version does not create the [EFI Partition](https://en.wikipedia.org/wiki/EFI_system_partition),
|
||||
only was support for existing ones or manually created so you can integrate dual boot for Alpine.
|
||||
|
||||
Started **in the [Alpine 3.8.0 new mayor release](https://alpinelinux.org/posts/Alpine-3.8.0-released.html)
|
||||
support in the installer for the GRUB boot loader was added** so now
|
||||
Linux experimental users can play with combinations of solutions and
|
||||
proper [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface)
|
||||
complete installations. Please refer to [UEFI_and_BIOS section of this page](#UEFI_and_BIOS_definitions_and_introduction)
|
||||
first.
|
||||
|
||||
Started in [Alpine 3.15 is able to setup UEFI and Secure Boot](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.15.0#UEFI_Secure_Boot)
|
||||
only with grub install flavor, syslinux can able to install UEFI but only with few devices.
|
||||
Some users need to setup non grub to work.
|
||||
|
||||
**[EFI System Partition](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#EFI_system_partition)
|
||||
are not the complete overall of the [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface),
|
||||
it's just the need minimal infrastructure to property boot by and [UEFI modern machine](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#Implementation_and_adoption)..**
|
||||
|
||||
> **Warning** check at the [UEFI mandatory partition mechanics](#uefi-mandatory-partition-mechanics) section of this document.
|
||||
|
||||
## Minimum Alpine partition scheme
|
||||
|
||||
Alpine Linux requires a root partition, but on UEFI systems an EFI, a
|
||||
"System Partition" is also required. So a minimun of 3 partitions will be required.
|
||||
|
||||
The **EFI System Partition** will be the `/boot` one, it must contain a bootloader
|
||||
program in. The current status of that mechanics to boot **in Alpine Linux are still
|
||||
in development and has good basic support**. See [UEFI mandatory partition mechanics](#uefi-mandatory-partition-mechanics)
|
||||
and [UEFI/GPT minimal layout](#uefi-gpt-minimal-layout) for details.
|
||||
|
||||
## Notes about the boot flags and boot partition
|
||||
|
||||
**UEFI booting does not involve any "boot" flag, that's it's a need only
|
||||
for BIOS booting**. The UEFI booting relies solely on the boot entries in
|
||||
NVRAM. Parted and its front-ends use a "boot" flag on GPT to indicate
|
||||
that a partition is an "EFI system partition".
|
||||
|
||||
**A BIOS "boot partition for EFI" is only required when using GRUB for BIOS
|
||||
booting from a GPT disk**. The partition has nothing to do and it must not be
|
||||
formatted with a file system or mounted.
|
||||
|
||||
## Alpine disk layout for UEFI
|
||||
|
||||
You will need a disk layout that your system firmware is capable of
|
||||
booting, you **will need a boot partition and a root partition**. Other
|
||||
architectures may have different requirements and not all are supported,
|
||||
please read next sections for details.
|
||||
|
||||
If you don't already know what filesystem format you want your boot
|
||||
partition, choose **ext2**. The **root partition, and any additional
|
||||
partitions or LVM volume groups, may be in any format that the kernel is
|
||||
capable of reading**.
|
||||
|
||||
#### UEFI/GPT minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|---------------|-----------|-------------------------------|--------------------------|---------|
|
||||
| /boot or /efi | /dev/sda1 | GPT UEFI Boot partition | 260 MiB | ext2/3/4 |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
#### BIOS/MBR minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|-------------|-----------|--------------------------------|--------------------------|---------|
|
||||
| /boot | /dev/sda1 | Boot partition **(optional)** | 100 MiB | btreefs,ext2/3/4,xfs |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
#### BIOS/GPT minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|-------------|-----------|-----------------------------|--------------------------|---------|
|
||||
| None | /dev/sda1 | GPT BIOS boot partition | 20 MiB | ext2/ext3 |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
# BIOS boot process for newbies
|
||||
|
||||
BIOS mainly supports two methods of booting - loading approximately 448
|
||||
bytes of 8088 machine code from the start of a floppy disk, or the same
|
||||
from the start of a fixed IDE disk.
|
||||
|
||||
BIOS can only assume one boot loader occupying the start of hard drive.
|
||||
So each OS overwrites it with its own boot loader. This is very messy.
|
||||
There's also the 2 TiB issue with MBR.
|
||||
|
||||
In order to make your drive more useful, it's split up into partitions -
|
||||
chunks of disk space which can be treated as independent drives from
|
||||
inside your OS. Windows (following on from MS-DOS) only supports one
|
||||
method for partitioning its boot drive on BIOS systems, which is MBR.
|
||||
|
||||
MBR cannot handle disks larger than 2 TiB (2<sup>32</sup> × 512 bytes).
|
||||
Therefore, it is impossible to use any drive space beyond 2 TiB using
|
||||
MBR layout. So if you're booting from it and use BIOS, you MUST use
|
||||
MBR - and you simply can't use any space beyond that if your boot drive
|
||||
is 2TB or bigger.
|
||||
|
||||
Modern motherboards (since approximately 2011 onwards) are using UEFI
|
||||
natively, but most can emulate BIOS through the CSM (Compatibility
|
||||
Support Module) to maintain support for BIOS-style booting.
|
||||
|
||||
# UEFI boot process explained
|
||||
|
||||
Well, let's start with installers. It'll read a UDF or FAT32-formatted
|
||||
USB drive or DVD, and look for the file /efi/boot/bootx64.efi and run
|
||||
it. An app, written in the UEFI "OS". It can be anything! Here's classic
|
||||
text adventure Zork, as a UEFI app.
|
||||
|
||||
It's possible to make boot media which is valid for both UEFI and BIOS.
|
||||
Unfortunately, in a slightly user-unfriendly twist, you (the user) need
|
||||
to pick the right boot entry. For example, on the wife's PC, a USB stick
|
||||
gets listed as both "UEFI: Sandisk Cruzer Edge" and "USB: Sandisk Cruzer
|
||||
Edge". Just... make sure you pick the right entry. It's impossible to
|
||||
change mode after this point.
|
||||
|
||||
It uses a different partitioning system called GPT instead of MBR, and
|
||||
secondly it creates an extra \~100 meg partition called the "EFI System
|
||||
Partition" - a FAT32 partition where the boot loader apps get installed
|
||||
to (no more boot sectors).
|
||||
|
||||
Each OS will stick its boot loader somewhere in the ESP, then send a
|
||||
signal to the firmware to write this new loader's location into the
|
||||
CMOS. Each entry installed in this manner will get its own listing in
|
||||
your "boot devices" list on the firmware - so if you installed MACOSX,
|
||||
you'll have "MACOSX Boot Manager" as an entry next to your DVD drive and
|
||||
hard drive after you reboot. This is why you don't do the old "unplug
|
||||
drive A when installing a different OS to drive B" thing, or swap
|
||||
cables, or anything like that. You should only have one ESP, the one on
|
||||
drive A.
|
||||
|
||||
## UEFI mandatory partition mechanics
|
||||
|
||||
Regular UEFI boot has several lists of possible boot entries, stored in
|
||||
UEFI config variables (normally in NVRAM), and boot order config
|
||||
variables stored alongside them. Unfortunately, a lot of PC UEFI
|
||||
implementations have got this wrong and so don't work properly.
|
||||
|
||||
The correct way for this to work when booting off local disk is for a
|
||||
boot variable to point to a vendor-specific bootloader program in
|
||||
`\EFI\$bootloader.efi` on the EFI System Partition (ESP), a specially
|
||||
tagged partition (Some OS's formatted as Fat32.. that's are unnecessary
|
||||
due it's just to able to poor OS's to boot like M$ Redmond OS's). The
|
||||
current status of that mechanics to boot in Alpine Linux are still in
|
||||
development and only basic support to existing made are provided.
|
||||
|
||||
## What's this infamous "Secure Boot"?
|
||||
|
||||
It's a way for your motherboard to prevent tampering of your OS (seems
|
||||
stupidity of boot-sector viruses??? please!). The UEFI/BIOS provide a
|
||||
list of certificates to trust that signed the OS kernels, then the firmware
|
||||
enforces that everything involved with the boot process (not just the boot
|
||||
loader, but the OS kernel itself, and all your device firmware like your
|
||||
GPU BIOS) are signed with a trusted key.
|
||||
|
||||
It works using cryptographic checksums and signatures. It **stops your
|
||||
system from booting unsigned code**. You can sign your own, and trust
|
||||
the certificate you used to do that signing. Or you can get the boot
|
||||
code signed by Microsoft - every motherboard has a small list of
|
||||
pre-trusted certificates which almost (always) includes Microsoft's
|
||||
certificates, which they currently let anyone use for a small fee.
|
||||
|
||||
Most of the programs that are expected to run in the UEFI environment
|
||||
are boot loaders, but others exist too. There are also programs to deal
|
||||
with firmware updates before operating system startup (like fwupdate and
|
||||
fwupd), and other utilities may live here too.
|
||||
|
||||
Support **for [secure boot are since Alpine 3.15](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.15.0#UEFI_Secure_Boot)
|
||||
realized by package `secureboot-hook` and `efi-mkkeys`, this means
|
||||
that you must load a own signed kernel and put a own certificate** to the UEFI/BIOS.
|
||||
|
||||
Due the "Unsigned code curse", Alpine linux [EFI System Partition](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#EFI_system_partition)
|
||||
**are not the complete overall of the [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface),
|
||||
it's just the need minimal infrastructure to property boot** it!
|
||||
|
||||
## How to boot unsigned code?
|
||||
|
||||
**Alpine users have to first disable Secure Boot to be able to install
|
||||
Alpine Linux, cos since supported, it not handle their own certificate**
|
||||
and the methods for doing this vary massively from one system to another,
|
||||
making this potentially quite difficult for users.
|
||||
|
||||
This is due to Microsoft's actions as a Certification Authority (CA) for
|
||||
Secure Boot. They sign programs/bootloaders on behalf of other trusted
|
||||
organizations so that their programs will run, but at great cost.. and
|
||||
there's nothing related to free software but affects to.. There's no
|
||||
Alpine Linux Certification like are with other enterprise related Linux.
|
||||
|
||||
Support **for [secure boot are since Alpine 3.15](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.15.0#UEFI_Secure_Boot)
|
||||
realized by package `secureboot-hook` and `efi-mkkeys`, this means
|
||||
that you must load a own signed kernel and put a own certificate** to
|
||||
the UEFI/BIOS and **not a real direct boot from fresh UEFI/BIOS list.**.
|
||||
|
||||
# Overall notes and conclusions
|
||||
|
||||
Currently Alpine UEFI and Secure Boot are very basic and enought to work,
|
||||
but are just implementations and **not official UEFI listed so Secure Boot must be
|
||||
disabled at first install**.
|
||||
|
||||
BIOS computers or **UEFI computers with Compatibility Support BIOS are
|
||||
the easiest and most reliable way to install**, they do not need the
|
||||
new EFI partition to boot nor new special files.
|
||||
|
||||
## Licensing clarifications
|
||||
|
||||
This document were started at oficial Alpine wiki, but was over 22:22, 18 August 2019,
|
||||
so the wiki licence was pretty simple "are owned by creator" so cannot be redistribute
|
||||
without the following license:
|
||||
|
||||
**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:
|
||||
|
||||
* **BY** – Credit must be given to the creator of each content respectivelly, starting at the first contributor.
|
||||
* **NC** – Only noncommercial uses of the work are permitted, with exceptions if you fill an issue here!
|
||||
* **SA** – Adaptations must be shared under the same terms, you must obey this terms and do not change it.
|
||||
|
||||
Complete license at: https://codeberg.org/alpine/alpine-wiki/src/branch/main#license
|
||||
|
||||
Original started at: https://wiki.alpinelinux.org/w/index.php?title=Alpine_and_UEFI&oldid=16188
|
||||
|
||||
## See also
|
||||
|
||||
* [README.md](README.md)
|
||||
|
|
@ -114,7 +114,7 @@ Note that bluetooth adapter, while on the same card as your wifi will
|
|||
have a seperate hardware ID but both will be reconiced always as USB devices.
|
||||
|
||||
Mostly mayor of those are not well suported unless you use kernel 5.10 and up,
|
||||
so the recommendations for recent hybrits devices are Alpine v3.15 and up.
|
||||
so the recommendations for recent hybrits devices are Alpine v3.16 and up.
|
||||
the only problem are few modules like Broadcom (that some not matter if
|
||||
are older or newer will require compilation and firmware) and the
|
||||
Realtek Semiconductor only if your device are so so recent.
|
||||
|
@ -158,20 +158,28 @@ to do the same task as any recent version of same.
|
|||
|
||||
## Booting
|
||||
|
||||
**Means support for kind of BIOS setup of machine, and where can be
|
||||
media downloaded will be boot**, please for more info check [Alpine and UEFI](alpine-and-uefi.md)) wiki page
|
||||
**Means support for kind of BIOS/UEFI/OEM setup of machine, and where can be
|
||||
media downloaded will be boot**.
|
||||
|
||||
| Supported Arch | Supported BIOS | Supported Types | Media Boot Recommended |
|
||||
| -------------- | ---------------------- | --------------- | ---------------------------- |
|
||||
| x86\_64 | Coreboot, Vendor/OEM | BIOS, UEFI | **USB**, CD/DVD (ISO) |
|
||||
| x86 | Coreboot, Vendor/OEM | BIOS, UEFI | **USB**, CD/DVD (ISO) |
|
||||
| ppc64le | Coreboot, Vendor/OEM | BIOS, UEFI | **USB**, CD/DVD (ISO) |
|
||||
| armhf | Uboot, Vendor/OEM | BIOS, UEFI | **NET**, MINIROOTFS (TAR.GZ) |
|
||||
| armhf | Uboot, Vendor/OEM | BIOS | **NET**, MINIROOTFS (TAR.GZ) |
|
||||
| armv7 | Uboot, Vendor/OEM | BIOS, UEFI | **NET**, MINIROOTFS (TAR.GZ) |
|
||||
| aarch64 | ?Coreboot?, Vendor/OEM | BIOS, ?UEFI? | **USB**, CD/DVD (ISO) |
|
||||
| mips64 | Vendor/OEM | ? | v3.14.0 end of support |
|
||||
| s390x | Vendor/OEM | BIOS, ?UEFI? | **USB**, CD/DVD |
|
||||
|
||||
#### Boot process
|
||||
|
||||
The boot process for most common computer are described at
|
||||
the [alpine-boot-uefi-bios.md](alpine-boot-uefi-bios.md) document.
|
||||
|
||||
The Uboot process for most common devices are described at
|
||||
the [apine-boot-uboot.md](alpine-boot-uboot.md) except for Odroid-C2 devices..
|
||||
|
||||
If the computer does not automatically boot from the desired device, one
|
||||
needs to bring up the boot menu selection for choosing the media to boot
|
||||
from. Depending on the computer the menu may be accessed by quickly
|
||||
|
|
|
@ -8,6 +8,22 @@ The recommendation its to use apache2 behind a reverse proxy setup, such like
|
|||
lighttpd or hiawatta servers.
|
||||
Currently the most lazy and slow server .. just for windosers that wants to learn..
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Apache2](#apache2)
|
||||
- [Apache2 Installation](#apache2-installation)
|
||||
- [Controlling Apache2](#controlling-apache2)
|
||||
- [Apache2 Configuration](#apache2-configuration)
|
||||
- [Status special page](#status-special-page)
|
||||
- [CGI bin directory support](#cgi-bin-directory-support)
|
||||
- [Descriptive error or special pages](#descriptive-error-or-special-pages)
|
||||
- [Userdir public_html support](#userdir-public_html-support)
|
||||
- [Apache2 alpine proxy modules setup](#apache2-alpine-proxy-modules-setup)
|
||||
- [Apache2 SSL support](#apache2-ssl-support)
|
||||
- [Lest Encrypt](#lest-encrypt)
|
||||
- [see also](#see-also)
|
||||
- [LICENSE](#license)
|
||||
|
||||
### Apache2 Installation
|
||||
|
||||
1. run apk for need pacakges
|
||||
|
|
|
@ -3,6 +3,31 @@
|
|||
Gitea is a community managed lightweight code hosting solution written in Go.
|
||||
It is a fork of Gogs. For a more simple guide use the [alpine-howto-gitea-package.md](../tutorials/alpine-howto-gitea-package.md)
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [alpine server gitea](#alpine-server-gitea)
|
||||
- [Clarifications](#clarifications)
|
||||
- [Requirements](#requirements)
|
||||
- [Preparations](#preparations)
|
||||
- [Installation](#installation)
|
||||
- [Configurations](#configurations)
|
||||
- [Initialization](#initialization)
|
||||
- [Post install](#post-install)
|
||||
- [Post installation with sqlite](#post-installation-with-sqlite)
|
||||
- [Post installation with mysql](#post-installation-with-mysql)
|
||||
- [Post installation with postgresql](#post-installation-with-postgresql)
|
||||
- [Post install process](#post-install-process)
|
||||
- [Tunning instances](#tunning-instances)
|
||||
- [System running](#system-running)
|
||||
- [Standard running](#standard-running)
|
||||
- [Multiple instances](#multiple-instances)
|
||||
- [Serving web gui](#serving-web-gui)
|
||||
- [Root hijacking web server](#root-hijacking-web-server)
|
||||
- [Proxy [sub]domain web service](#proxy-subdomain-web-service)
|
||||
- [Proxy [sub]path web service](#proxy-subpath-web-service)
|
||||
- [see also](#see-also)
|
||||
- [LICENSE](#license)
|
||||
|
||||
## Clarifications
|
||||
|
||||
1. Gitea was created by a group of users and contributors of the self-hosted Git service Gogs,
|
||||
|
@ -186,6 +211,16 @@ After check that is "running" you must setup graphically using a web browser,
|
|||
poiting to `http://localhost:3000`, in the case of this document should be
|
||||
pointing to `http://giteahost.mydomain.com:3000` and a web landing will show.
|
||||
|
||||
- [Post install](#post-install)
|
||||
- [Post installation with sqlite](#post-installation-with-sqlite)
|
||||
- [Post installation with mysql](#post-installation-with-mysql)
|
||||
- [Post installation with postgresql](#post-installation-with-postgresql)
|
||||
- [Post install process](#post-install-process)
|
||||
- [Tunning instances](#tunning-instances)
|
||||
- [System running](#system-running)
|
||||
- [Standard running](#standard-running)
|
||||
- [Multiple instances](#multiple-instances)
|
||||
|
||||
## Post install
|
||||
|
||||
Using your web browser and pointing to the gitea url path, you will be
|
||||
|
|
|
@ -0,0 +1,121 @@
|
|||
# UEFI and BIOS support on Alpine
|
||||
|
||||
UEFI replaces the BIOS firmware interface originally present in all IBM
|
||||
PC-compatible personal computers, early modern computer's UEFI firmware
|
||||
implementations provide legacy support for BIOS services.
|
||||
|
||||
UBOOT are a boot process for embebed devices and minidevices, pretty
|
||||
mostly present at the single board computers and some phones.
|
||||
|
||||
The complete information is at the [alpine/requirementes.md booting](../alpine/requirementes.md#booting) section.
|
||||
|
||||
This document is the most up to date, the oficial wiki page from Alpine
|
||||
is currently outdated, please check the [Licensing clarifications](#licensing-clarifications)
|
||||
section of this document for any copyright issue.
|
||||
|
||||
## About BIOS and UEFI
|
||||
|
||||
In the old days, **BIOS**(for **B**asic **I**nput **O**utput **S**ystem)
|
||||
was how computers booted from the 1980s onwards. But now in newer
|
||||
hardware for devices, servers, laptops and desktops computers the
|
||||
**UEFI**(for **U**nified **E**xtensible **F**irmware **I**nterface) defines a
|
||||
software interface between an operating system and platform firmware
|
||||
into the vendor hardware.
|
||||
|
||||
> **Note** Consult more at [../alpine/alpine-boot-uefi-bios.md](../alpine/alpine-boot-uefi-bios.md)
|
||||
|
||||
# Alpine UEFI support
|
||||
|
||||
Currently are enought for boot most systems, not all the architectures are complete
|
||||
supported. Since 3.16 Alpine is able to setup UEFI only with grub install flavor, syslinux
|
||||
can able to install UEFI but only with few devices. Some users need to setup non grub to work.
|
||||
|
||||
> **Warning** Mayor information is at [alpine/requirementes.md booting](../alpine/requirementes.md#booting) section document.
|
||||
|
||||
## Minimum Alpine partition scheme
|
||||
|
||||
Alpine Linux requires a root partition, but on UEFI systems an EFI, a
|
||||
"System Partition" is also required. So a minimun of 3 partitions will be required.
|
||||
|
||||
**UEFI booting does not involve any "boot" flag, that's it's a need only
|
||||
for BIOS booting**.
|
||||
|
||||
**A BIOS "boot partition for EFI" is only required when using GRUB for BIOS
|
||||
booting from a GPT disk**. The partition has nothing to do and it must not be
|
||||
formatted with a file system or mounted.
|
||||
|
||||
#### UEFI/GPT minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|---------------|-----------|-------------------------------|--------------------------|---------|
|
||||
| /boot or /efi | /dev/sda1 | GPT UEFI Boot partition | 260 MiB | ext2/3/4 |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
#### BIOS/MBR minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|-------------|-----------|--------------------------------|--------------------------|---------|
|
||||
| /boot | /dev/sda1 | Boot partition **(optional)** | 100 MiB | btreefs,ext2/3/4,xfs |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
#### BIOS/GPT minimal layout
|
||||
|
||||
| Mount point | Partition | Partition type Purpose | Recommended minimum size | Formats |
|
||||
|-------------|-----------|-----------------------------|--------------------------|---------|
|
||||
| None | /dev/sda1 | GPT BIOS boot partition | 20 MiB | ext2/ext3 |
|
||||
| / | /dev/sda2 | Alpine Linux root system OS | 1–32 GiB | btreefs,ext2/3/4,xfs |
|
||||
| none | /dev/sda3 | Linux swap memory | 1-2Gb | swap |
|
||||
|
||||
## Secure Boot Support
|
||||
|
||||
Support **for [secure boot are since Alpine 3.15](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.15.0#UEFI_Secure_Boot)
|
||||
realized by package `secureboot-hook` and `efi-mkkeys`, this means
|
||||
that you must load a own signed kernel and put a own certificate** to the UEFI/BIOS.
|
||||
|
||||
Due the "Unsigned code curse", Alpine linux [EFI System Partition](#uefi-gpt-minimal-layout)
|
||||
**are not the complete overall of the [Secure Boot](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface),
|
||||
it's just the need minimal infrastructure to property boot** it!
|
||||
|
||||
Is **recommended to disable Secure Boot. Alpine has no own certificate,
|
||||
the process only permit to load your own certificate to your UEFI BIOS,
|
||||
it does not have a certificate** which some other Linux distributions
|
||||
(mostly enterprise-related) have.
|
||||
|
||||
> **Warning** for more information about please check [alpine/alpine-boot-uefi-bios.md Secure Boot](../alpine/alpine-boot-uefi-bios.md#secure-boot) section document.
|
||||
|
||||
# Overall notes and conclusions
|
||||
|
||||
Currently Alpine UEFI and Secure Boot are very basic and enought to work,
|
||||
but are just implementations and **not official UEFI listed so Secure Boot must be
|
||||
disabled at first install**.
|
||||
|
||||
BIOS computers or **UEFI computers with Compatibility Support BIOS are
|
||||
the easiest and most reliable way to install**, they do not need the
|
||||
new EFI partition to boot nor new special files.
|
||||
|
||||
## Licensing clarifications
|
||||
|
||||
This document were started at oficial Alpine wiki, but was over 22:22, 18 August 2019,
|
||||
so the wiki licence was pretty simple "are owned by creator" so cannot be redistribute
|
||||
without the following license:
|
||||
|
||||
**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:
|
||||
|
||||
* **BY** – Credit must be given to the creator of each content respectivelly, starting at the first contributor.
|
||||
* **NC** – Only noncommercial uses of the work are permitted, with exceptions if you fill an issue here!
|
||||
* **SA** – Adaptations must be shared under the same terms, you must obey this terms and do not change it.
|
||||
|
||||
Complete license at: https://codeberg.org/alpine/alpine-wiki/src/branch/main#license
|
||||
|
||||
Original started at: https://wiki.alpinelinux.org/w/index.php?title=Alpine_and_UEFI&oldid=16188
|
||||
|
||||
## See also
|
||||
|
||||
* [README.md](README.md)
|
||||
* [alpine-newbie-install.md](../../newbie/alpine-newbie-install.md)
|
||||
* [alpine/alpine-boot-uefi-bios.md](../alpine/alpine-boot-uefi-bios.md)
|
|
@ -21,7 +21,14 @@ with Alpine Linux, that expects a minimal knowledge from reader to perform actio
|
|||
|
||||
## INSTALL
|
||||
|
||||
TODO
|
||||
* Common methods for computers:
|
||||
* [Install from CD to HDD/SDD PC single boot only](alpine-install-from-cd-to-disk-pc-single-boot-only.md)
|
||||
* [Install from USB to HDD/SDD PC single boot only](alpine-install-from-usb-to-disk-pc-single-boot-only.md)
|
||||
* Serial console and sepcial devices:
|
||||
* [Install from USB to Serial PCENGINE APU single boot](alpine-install-from-cd-to-pcengine-apu-single-boot.md)
|
||||
* Networking setup, wifi or PXE boots:
|
||||
* [alpine-tutorial-wifi-routering.md](alpine-tutorial-wifi-routering.md)
|
||||
* [servers-howto-setup-PXE-service-for-others-linuxes-ES.md](servers-howto-setup-PXE-service-for-others-linuxes-ES.md)
|
||||
|
||||
## PHONES
|
||||
|
||||
|
|
|
@ -13,6 +13,8 @@ Linux into it.
|
|||
|
||||
> **Warning** This method is in disuse today in favor of [usbstiks and imgs](alpine-install-from-usb-to-disk-pc-single-boot-only.md).
|
||||
|
||||
Feels lost here? check [How to use this guide](#how-to-use-this-guide) section of this document
|
||||
|
||||
## Terminology
|
||||
|
||||
- **[UEFI](Alpine_and_UEFI.md)**: it\'s a new system included
|
||||
|
@ -57,7 +59,7 @@ download, like the arm and i386, but ISO CD/DVD images are only to
|
|||
PC/Laptops that are i386 and amd64, so by downloading the x86 (32bit)
|
||||
flavor will be same for both cases, but UEFI need 64bit, so change to
|
||||
the x86_64 (amd64) if your computer is the most modern and lasted
|
||||
hardware.
|
||||
hardware today.
|
||||
|
||||
The source medium to install for [UEFI or modern hardware](Alpine_and_UEFI.md)
|
||||
**are just 64-bit only**, the download URL will be as following format:
|
||||
|
@ -76,25 +78,25 @@ where `ARCH` and `VERSION` could be:
|
|||
- `<VERSION>` could be one of:
|
||||
- **latest-stable** for a more up to date without taking care of
|
||||
numbered
|
||||
- **3.10** the most recommended for machines between 2016 to 2018
|
||||
- **3.12** the most recommended for machines between 2016 to 2018
|
||||
|
||||
EXAMPLE if you plan **to using 3.10 version the available links to download will be:**
|
||||
EXAMPLE if you plan **to using 3.17 version the available links to download will be:**
|
||||
|
||||
- for **x86_64** computers:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/x86_64/alpine-standard-3.10.0-x86_64.iso`
|
||||
- for **s390x** servers:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/ppc64le/alpine-standard-3.10.1-ppc64le.iso`
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-standard-3.17.0-x86_64.iso`
|
||||
- for **x86** older BIOS computers we recommend:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.12/releases/ppc64le/alpine-standard-3.12.1-x86.iso`
|
||||
- for **ppc64le** machines
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/ppc64le/alpine-standard-3.10.1-ppc64le.iso`
|
||||
|
||||
**Usin Graphical download way**: Just point the web browser to that url and the
|
||||
download of the iso file will start. A file with **.iso** extension
|
||||
type, with name like `"alpine-standard-3.10.0-x86_64.iso"` (if amd64) or
|
||||
like `alpine-standard-3.10.1-s390x.iso` (if s390x); will be downloaded
|
||||
type, with name like `"alpine-standard-3.17.0-x86_64.iso"` (if amd64) or
|
||||
like `alpine-standard-3.12.1-x86.iso` (if i386); will be downloaded
|
||||
commonly into the Download directory of your home documents filesystem.
|
||||
|
||||
**Usin Command line method way**: in unix-like terminal execute:
|
||||
`wget -c -t8 --no-check-certificate http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/x86_64/alpine-standard-3.10.0-x86_64.iso`,
|
||||
`wget -c -t8 --no-check-certificate http://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-standard-3.17.0-x86_64.iso`,
|
||||
and where you run the command, in that place/dir will be downloaded the file.
|
||||
|
||||
## Burning the source medium to install
|
||||
|
@ -127,13 +129,84 @@ When the machine start, you must be sure to choose the optical drive
|
|||
(commonly named CD/DVD Rom drive), 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 CD/DVD drive, it must be configured in the BIOS, '''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}}
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/instalar-desde-virtualbox-a-discoreal-dualboot-screenshot-01.png)
|
||||
|
||||
TODO put the same foto here
|
||||
> **Warning** Tip: If your system is not configured to boot from a USB drive, it must be configured in the BIOS, '''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}}
|
||||
|
||||
TODO: restore the template about normal script steps for common pages
|
||||
(was inclusion here)
|
||||
#### after start to setup the script
|
||||
|
||||
For this use case, unlike other installation systems, Alpine's is automatic on the disk,
|
||||
and mounts several partitions depending on the case, as in this document the procedure
|
||||
is automatic, at least four partitons will be created by the installer and these will be
|
||||
configured as needed, if it is UEFI or BIOS, always the automatic setup will do that.
|
||||
|
||||
> **Warning** The drive will be assumed to be fully used since alpine setup in this guide
|
||||
will be on its own and single setup only, it will not be necessary to partition or format
|
||||
as the installer will do it. Assumes a minimum 4 gig disk where swap will be 2 gigs in sizes.
|
||||
|
||||
> **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:
|
||||
|
||||
* prepare disk sizes, boot partiton to 500 megs
|
||||
* perpare swap sices, swap partition to 2 Gigs
|
||||
* setup boot loader to grup (if wants lilo just change to lilo)
|
||||
* and run setup script to configure and process instalation:
|
||||
|
||||
```
|
||||
export BOOT_SIZE=500
|
||||
|
||||
export SWAP_SIZE=2048
|
||||
|
||||
export BOOTLOADER=grub
|
||||
|
||||
setup-alpine
|
||||
```
|
||||
|
||||
This will start some questions, these are in the following order:
|
||||
|
||||
* keyboard and variant, example for Latin is esand afteres-winkeys
|
||||
* hostname: just hit enter, it's the name of the computer.
|
||||
* Network options: select the `eth0` one that is the network cable and answer `dhcp`.
|
||||
* DNS Options: It is recommended to use `8.8.8.8 ` and `none` for the domain
|
||||
* Time zone options: Just use the suggested defaults.
|
||||
* Proxy Options: Use noneif you are connecting directly to the Internet.
|
||||
* SSH Options: Use opensshthe package that already comes in the middle.
|
||||
* NTP Options: Use chronythe packet already in the middle.
|
||||
* Mode: Select `sys` to install the system on disk.
|
||||
* Disk Options: Use `sda` as the entire hard drive present will be used.
|
||||
|
||||
After answering `sys` to the questions about the drive, and since there will only
|
||||
be one drive, answering `sda` on which drive to use, this will create and leave
|
||||
your hard drive as follows:
|
||||
|
||||
* `/dev/sda1` as BOOT in 500Mb in `/boot`
|
||||
* `/dev/sda2` as SWAP in 4Gb
|
||||
* `/dev/sda3` as ROOT in 200Gb in `/` (approximately or rest of space available)
|
||||
|
||||
In a few minutes everything will be ready to use ofering a console when boot new system.
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/install-alpine-alpine-setup-3-setup-scripts.png)
|
||||
|
||||
#### custom setup boot loader
|
||||
|
||||
If the new local system was configured to run in `diskless` or `data` mode, or if you
|
||||
choose do not install boot loader, and you do not want keep booting from the initial
|
||||
(and possibly read-only) installation media, the boot system needs to be copied to
|
||||
another device or partition or setup manually.
|
||||
|
||||
The target partition may be identified using lsblk (after installing it with apk add lsblk)
|
||||
and/or blkid, similar to previously identifying the initial installation media device.
|
||||
|
||||
The procedure to copy the boot system is using setup-bootable
|
||||
|
||||
Once everything is in place, but is you use `diskless` or `data` save your customized
|
||||
configuration with `lbu commit` before rebooting.
|
||||
|
||||
## Finishing the installation
|
||||
|
||||
|
@ -145,3 +218,39 @@ installed system will be booted.
|
|||
calmed down.. in Alpine all are made by the right way.. so **if user
|
||||
need a desktop.. user can install a desktop**
|
||||
|
||||
|
||||
## How to use this guide
|
||||
|
||||
This guide **structure all the commands in blocks, each block its separated by a line spaced**,
|
||||
so you must **type each line as is.. and hit enter**, so you noted that then you
|
||||
typed each separated clocks of commands, copy/type only blocks separated by an empty line,
|
||||
all new(next) lines are made by just enter. the terminal will detect if must execute or not.
|
||||
|
||||
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.
|
||||
|
||||
## 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:
|
||||
|
||||
* **BY** – Credit must be given to the creator of each content respectivelly, starting at the first contributor.
|
||||
* **NC** – Only noncommercial uses of the work are permitted, with exceptions if you fill an issue here!
|
||||
* **SA** – Adaptations must be shared under the same terms, you must obey this terms and do not change it.
|
||||
|
||||
https://codeberg.org/alpine/alpine-wiki/src/branch/main#license
|
||||
|
||||
## See also
|
||||
|
||||
* [README.md](README.md)
|
||||
* [alpine-newbie-install.md](../../newbie/alpine-newbie-install.md)
|
||||
* [alpine-tutorial-desktop-wayland-try.md](alpine-tutorial-desktop-wayland-try.md)
|
||||
* [alpine-tutorial-desktop-xfce4-fast-forward.md](alpine-tutorial-desktop-xfce4-fast-forward.md)
|
||||
|
|
|
@ -0,0 +1,183 @@
|
|||
# Alpine Install: from a disc to pc engine APU single only boot
|
||||
|
||||
**Overall description:** Alpine Installation from an official image tar
|
||||
file downloaded to a real second generation PC Engines APU systems
|
||||
(apu2, apu3, apu4), where it will be single OS only.
|
||||
|
||||
This document will guide you to **install Alpine into second generation
|
||||
PC Engines APU systems**, it was tested with an apu2d4 and Alpine 3.11.6..
|
||||
|
||||
Feels lost here? check [How to use this guide](#how-to-use-this-guide) section of this document
|
||||
|
||||
## Terminology
|
||||
|
||||
- **[UEFI](Alpine_and_UEFI.md)**: it\'s a new system included
|
||||
in every new hardware machine laptop or desktops, that will manage
|
||||
the early boot process as a little operating system, see more in the
|
||||
[Alpine and UEFI](Alpine_and_UEFI.md) page.
|
||||
- **New machine**: will be your real machine fresh and ready to
|
||||
install your new Alpine operating system, with an installed ISO
|
||||
image where to put the downloaded media installation.
|
||||
- **Bootable USB**: will be your hardware drive input to put the image
|
||||
downloaded iso media with the operating system Alpine to install as
|
||||
source media; this drive are commonly named
|
||||
[USB](https://en.wikipedia.org/wiki/USB) unit.
|
||||
- **Serial console:** is an input port on the device.. DB9 serial port
|
||||
for serial console, located at the board to use as char device, it's
|
||||
common in those devices.
|
||||
- **Source media**: will be the just burned / disc from the downloaded
|
||||
iso file of Alpine operating system. Will be Attach to the serial
|
||||
console to property boot the source disc as media installation.
|
||||
- **Target media**: will be the storage medium device into the new
|
||||
computer target where the Alpine files for operating system will be
|
||||
installed, its one partition from the
|
||||
[HardDisk](https://en.wikipedia.org/wiki/Hard_disk_drive) of the new
|
||||
computer.
|
||||
|
||||
## Requirements
|
||||
|
||||
- A USBstick to just burn/record/write the ISO image installer as
|
||||
the source media file downloaded
|
||||
- In the new machine we need serial device port allowed to attach
|
||||
- In the new machine we need at least 512Mb of RAM, but required 2Gb
|
||||
of RAM for desktop/graphical applications
|
||||
- In the new machine we need target media with at least 2G of hard
|
||||
disk, but required 10G for desktops
|
||||
- Will need to previously downloaded and write the Source media ISO
|
||||
file from <https://alpinelinux.org/downloads/>
|
||||
|
||||
## Preparing the source medium to install
|
||||
|
||||
Download the source medium to install and put into your home documents
|
||||
in a modern computer. The source medium to install in this case are
|
||||
**just 64-bit only**, the download URL will be as following format:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v<VERSION>/releases/<ARCH>/alpine-standard-<VERSION>.0-<ARCH>.iso`
|
||||
where `ARCH` and `VERSION` could be:
|
||||
|
||||
- `<ARCH>` could be one of:
|
||||
- **x86_64**: The popular AMD64 compatible 64-bit x86 based
|
||||
machines, i386 are not recommended for newer/lasted hardware.
|
||||
- `<VERSION>` could be one of:
|
||||
- **latest-stable** for a more up to date without taking care of
|
||||
numbered
|
||||
- **3.12** the most recommended for machines between 2016 to 2018
|
||||
|
||||
EXAMPLE if you plan **to using 3.12 version the available links to download will be:**
|
||||
|
||||
- for **x86_64** computers:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.12/releases/x86_64/alpine-standard-3.12.0-x86_64.iso`
|
||||
|
||||
**Usin Graphical download way**: Just point the web browser to that url and the
|
||||
download of the iso file will start. A file with **.iso** extension
|
||||
type, with name like `"alpine-standard-3.17.0-x86_64.iso"` (if amd64) or
|
||||
like `alpine-standard-3.12.1-x86.iso` (if i386); will be downloaded
|
||||
commonly into the Download directory of your home documents filesystem.
|
||||
|
||||
**Usin Command line method way**: in unix-like terminal execute:
|
||||
`wget -c -t8 --no-check-certificate http://dl-cdn.alpinelinux.org/alpine/v3.12/releases/x86_64/alpine-standard-3.12.0-x86_64.iso`,
|
||||
and where you run the command, in that place/dir will be downloaded the file.
|
||||
|
||||
## Booting the Alpine ISO disc
|
||||
|
||||
1. It's probably a good idea to ensure that the BIOS / Firmware is up
|
||||
to date.
|
||||
2. Create_a\_Bootable_USB thumb
|
||||
drive with the current standard x86_64 image from the downloads
|
||||
page.
|
||||
3. Attach to the serial console. Configure your terminal emulator for
|
||||
115200 8n1.
|
||||
4. Power on the APU.
|
||||
5. When BIOS prompted, hit F10 and select to boot from USB.
|
||||
6. At the boot prompt, **quickly** type a slash to interrupt the
|
||||
default boot, which has a short timeout.
|
||||
7. Continue entering the remainder of this command at your leisure. It
|
||||
should have only one slash at the start, to be clear:
|
||||
`/boot/vmlinuz-lts modules=loop,squashfs,sd-mod,usb-storage nomodeset console=ttyS0,115200 initrd=/boot/initramfs-lts`
|
||||
8. Alpine should come up as normal.
|
||||
|
||||
When the machine start, you must be sure to choose the optical drive
|
||||
(commonly named CD/DVD Rom drive), 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:
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/instalar-desde-virtualbox-a-discoreal-dualboot-screenshot-01.png)
|
||||
|
||||
#### runing the setup script
|
||||
|
||||
After entering the root environment and gets the console prompt installation media,
|
||||
you must perform these commands, that will:
|
||||
|
||||
This will start some questions, these are in the following order:
|
||||
|
||||
* keyboard and variant, example for Latin is esand afteres-winkeys
|
||||
* hostname: just hit enter, it's the name of the computer.
|
||||
* Network options: select the `eth0` one that is the network cable and answer `dhcp`.
|
||||
* DNS Options: It is recommended to use `8.8.8.8 ` and `none` for the domain
|
||||
* Time zone options: Just use the suggested defaults.
|
||||
* Proxy Options: Use noneif you are connecting directly to the Internet.
|
||||
* SSH Options: Use opensshthe package that already comes in the middle.
|
||||
* NTP Options: Use chronythe packet already in the middle.
|
||||
* Mode: Select `sys` to install the system on disk.
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/install-alpine-alpine-setup-3-setup-scripts.png)
|
||||
|
||||
## After reboot
|
||||
|
||||
1. **Before** rebooting, edit /boot/extlinux.conf.
|
||||
- Add `SERIAL 0 115200` as the first line in the file.
|
||||
- In the `APPEND` line, replace `quiet` with
|
||||
`console=ttyS0,115200`
|
||||
2. Remove the thumb drive.
|
||||
3. Cross your fingers and reboot. The system should boot properly with
|
||||
console on serial.
|
||||
4. Edit `/etc/update-extlinux.conf` so that if extlinux.conf is
|
||||
regenerated it will retain these settings:
|
||||
- Update the line with `serial_port` to read `serial_port=0`
|
||||
- Update the `serial_baud` line to read `serial_baud=115200`
|
||||
- Update the `default_kernel_opts` line to replace `quiet` with
|
||||
`console=ttyS0,115200`
|
||||
5. Run `update-extlinux`
|
||||
6. Examine `/boot/extlinux.conf`.
|
||||
- Make sure it looks OK. Compare with /boot/extlinux.conf-old.
|
||||
- If something looks wrong,
|
||||
`mv /boot/extlinux.conf-old /boot/extlinux.conf` to roll back
|
||||
the changes and try to figure out what went wrong
|
||||
7. Cross your fingers and reboot. The system should boot properly with
|
||||
console on serial.
|
||||
|
||||
## How to use this guide
|
||||
|
||||
This guide **structure all the commands in blocks, each block its separated by a line spaced**,
|
||||
so you must **type each line as is.. and hit enter**, so you noted that then you
|
||||
typed each separated clocks of commands, copy/type only blocks separated by an empty line,
|
||||
all new(next) lines are made by just enter. the terminal will detect if must execute or not.
|
||||
|
||||
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.
|
||||
|
||||
## 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:
|
||||
|
||||
* **BY** – Credit must be given to the creator of each content respectivelly, starting at the first contributor.
|
||||
* **NC** – Only noncommercial uses of the work are permitted, with exceptions if you fill an issue here!
|
||||
* **SA** – Adaptations must be shared under the same terms, you must obey this terms and do not change it.
|
||||
|
||||
https://codeberg.org/alpine/alpine-wiki/src/branch/main#license
|
||||
|
||||
## See also
|
||||
|
||||
* [README.md](README.md)
|
||||
* [alpine-newbie-install.md](../../newbie/alpine-newbie-install.md)
|
||||
* [alpine-tutorial-desktop-wayland-try.md](alpine-tutorial-desktop-wayland-try.md)
|
||||
* [alpine-tutorial-desktop-xfce4-fast-forward.md](alpine-tutorial-desktop-xfce4-fast-forward.md)
|
|
@ -0,0 +1,263 @@
|
|||
# Alpine Install: from a disc to any computer single only boot
|
||||
|
||||
**Overall description:** Alpine Installation from a official iso(usb)
|
||||
write to USBstick to a new computer with or without
|
||||
[UEFI](Alpine_and_UEFI.md) and will be single only boot,
|
||||
means that any thing in the computer and their disc will be erased to
|
||||
put Alpine Linux as main system
|
||||
|
||||
This document will guide you to **install Alpine into a new empty or
|
||||
just fresh PC or Laptop hardware computer, use if you have a [BIOS or
|
||||
UEFI based hardware](Alpine_and_UEFI.md) and only wants Alpine**
|
||||
Linux into it.
|
||||
|
||||
> **Warning** This method only works for most modern pc since 2013 and recents, mostly 64bit only.
|
||||
|
||||
## Terminology
|
||||
|
||||
- **[UEFI and BIOS](Alpine_and_UEFI.md)**: it\'s the default boot for cp,
|
||||
in every new hardware machine laptop or desktops, that will manage
|
||||
the early boot process as a little operating system, see more in the
|
||||
[Alpine and UEFI](Alpine_and_UEFI.md) page.
|
||||
- **New machine**: will be your real machine fresh and ready to
|
||||
install your new Alpine operating system, with a installed CD/DVD
|
||||
Rom optical drive where to put the burned downloaded disc media
|
||||
installation.
|
||||
- **USB ports**: will be your hardware input source to boot, where
|
||||
you wirte downloaded iso media with the operating system Alpine to
|
||||
install as source media; this drive are commonly named Pend-Drive.
|
||||
- **Source media**: will be the just burned/ disc from the downloaded
|
||||
iso file of Alpine operating system. Will be put into the optical
|
||||
drive or named [DVD/CD Rom](https://en.wikipedia.org/wiki/CD-ROM) to
|
||||
property boot the source disc as media installation.
|
||||
- **Target media**: will be the storage medium device into the new
|
||||
computer target where the Alpine files for operating system will be
|
||||
installed, its one partition from the
|
||||
[HardDisk](https://en.wikipedia.org/wiki/Hard_disk_drive) of the new
|
||||
computer.
|
||||
|
||||
## Requirements
|
||||
|
||||
- A usb stick to write the ISO source media file downloaded
|
||||
- In the new machine we need an USB port free and able to boot
|
||||
- In the new machine we need and BIOS or UEFI able to boot USBsticks
|
||||
- In the new machine we need at least 512Mb of RAM, but required 2Gb
|
||||
of RAM for desktop/graphical applications
|
||||
- In the new machine we need target media with at least 2G of hard
|
||||
disk, but required 10G for desktops
|
||||
- Will need to previously downloaded and burned the Source media ISO
|
||||
file from <https://alpinelinux.org/downloads/>
|
||||
|
||||
## Preparing the source medium to install
|
||||
|
||||
Download the source medium to install and put into your home documents
|
||||
in a modern computer. There are more hardware medium sources to
|
||||
download, like the arm and i386, but ISO CD/DVD images are only to
|
||||
PC/Laptops that are i386 and amd64, so by downloading the x86 (32bit)
|
||||
flavor will be same for both cases, but UEFI need 64bit, so change to
|
||||
the x86_64 (amd64) if your computer is the most modern and lasted
|
||||
hardware today.
|
||||
|
||||
The source medium to install for [UEFI or modern hardware](Alpine_and_UEFI.md)
|
||||
**are just 64-bit only**, the download URL will be as following format:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v<VERSION>/releases/<ARCH>/alpine-standard-<VERSION>.0-<ARCH>.iso`
|
||||
where `ARCH` and `VERSION` could be:
|
||||
|
||||
- `<ARCH>` could be one of:
|
||||
- **x86**: the most used i386 32-bit x86 based machines, if your
|
||||
computer are too older use this only.
|
||||
- **x86_64**: The popular AMD64 compatible 64-bit x86 based
|
||||
machines, i386 are not recommended for newer/lasted hardware.
|
||||
- `<VERSION>` could be one of:
|
||||
- **latest-stable** for a more up to date without taking care of
|
||||
numbered
|
||||
- **3.12** the most recommended for machines between 2016 to 2018
|
||||
|
||||
EXAMPLE if you plan **to using 3.17 version the available links to download will be:**
|
||||
|
||||
- for **x86_64** computers:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-standard-3.17.0-x86_64.iso`
|
||||
- for **x86** older BIOS computers we recommend:
|
||||
`http://dl-cdn.alpinelinux.org/alpine/v3.12/releases/ppc64le/alpine-standard-3.12.1-x86.iso`
|
||||
|
||||
**Usin Graphical download way**: Just point the web browser to that url and the
|
||||
download of the iso file will start. A file with **.iso** extension
|
||||
type, with name like `"alpine-standard-3.17.0-x86_64.iso"` (if amd64) or
|
||||
like `alpine-standard-3.12.1-x86.iso` (if i386); will be downloaded
|
||||
commonly into the Download directory of your home documents filesystem.
|
||||
|
||||
**Usin Command line method way**: in unix-like terminal execute:
|
||||
`wget -c -t8 --no-check-certificate http://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-standard-3.17.0-x86_64.iso`,
|
||||
and where you run the command, in that place/dir will be downloaded the file.
|
||||
|
||||
## Writing the source medium to install
|
||||
|
||||
After downloading the source media file from [Alpine download page](https://alpinelinux.org/downloads/)
|
||||
**put the USB stick into the input USB port** named and **open your terminal program,
|
||||
move to the place directory where ISO downloaded fiel are and `cp` to the USB device"** and wait the
|
||||
process will end.
|
||||
|
||||
In detail if you downloaded with **Graphical download** (using a web
|
||||
browser), the source media file will be into the Download directory. If
|
||||
you downloaded with **Command line method** your source file probably
|
||||
will be in your root document home (or just `$HOME` of your Linux
|
||||
install or MAC install filesystem).
|
||||
|
||||
In Linux, assuming the USB stick is in the only free USB port (as `/dev/sdb`), the command
|
||||
to record/burn the downloaded source media file is :
|
||||
|
||||
`$ umount /dev/sdb*;cp alpine-standard-3.17.0-x86_64.iso /dev/sdb`
|
||||
|
||||
> **Note** this method only works on recent MacOs 10.12+ or recent Linux 4.9+ installations
|
||||
|
||||
## Writing the source medium using ValenaEtcher
|
||||
|
||||
For all users, no matter the OS or architecture, We recommend using
|
||||
[balena-etcher-electron](https://www.balena.io/etcher/) to flash the USB drive
|
||||
from any system, of course it must be run as or from root user or administrator
|
||||
of your operating system.
|
||||
|
||||
* download the iso file of the multimedia image, for UEFI 3.11 minimum
|
||||
* download the program balena-etcher-electronyou may need to install..
|
||||
* Run the program balena-etcher-electronas root in the graphical session
|
||||
* Click “select image” icon, open the downloaded image file
|
||||
* Plug the USB drive into the computer, it will automatically show as sdb or similar
|
||||
* After it balena-etcher-electronshows the USB as “sdb”, clickflash
|
||||
* Wait a while and when finished, close the program
|
||||
* Take out the USB and place it on the installation target computer in a port
|
||||
|
||||
> **Warning** It is recommended that you only have a single unique usb stick connected.
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/instalar-desde-usb-a-discoreal-alpinesolo-computadora-00.png)
|
||||
|
||||
## 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:
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/instalar-desde-virtualbox-a-discoreal-dualboot-screenshot-01.png)
|
||||
|
||||
> **Warning** Tip: If your system is not configured to boot from a USB drive, it must be configured in the BIOS, '''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}}
|
||||
|
||||
#### after start to setup the script
|
||||
|
||||
For this use case, unlike other installation systems, Alpine's is automatic on the disk,
|
||||
and mounts several partitions depending on the case, as in this document the procedure
|
||||
is automatic, at least four partitons will be created by the installer and these will be
|
||||
configured as needed, if it is UEFI or BIOS, always the automatic setup will do that.
|
||||
|
||||
> **Warning** The drive will be assumed to be fully used since alpine setup in this guide
|
||||
will be on its own and single setup only, it will not be necessary to partition or format
|
||||
as the installer will do it. Assumes a minimum 4 gig disk where swap will be 2 gigs in sizes.
|
||||
|
||||
> **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:
|
||||
|
||||
* prepare disk sizes, boot partiton to 500 megs
|
||||
* perpare swap sices, swap partition to 2 Gigs
|
||||
* setup boot loader to grup (if wants lilo just change to lilo)
|
||||
* and run setup script to configure and process instalation:
|
||||
|
||||
```
|
||||
export BOOT_SIZE=500
|
||||
|
||||
export SWAP_SIZE=2048
|
||||
|
||||
export BOOTLOADER=grub
|
||||
|
||||
setup-alpine
|
||||
```
|
||||
|
||||
This will start some questions, these are in the following order:
|
||||
|
||||
* keyboard and variant, example for Latin is esand afteres-winkeys
|
||||
* hostname: just hit enter, it's the name of the computer.
|
||||
* Network options: select the `eth0` one that is the network cable and answer `dhcp`.
|
||||
* DNS Options: It is recommended to use `8.8.8.8 ` and `none` for the domain
|
||||
* Time zone options: Just use the suggested defaults.
|
||||
* Proxy Options: Use noneif you are connecting directly to the Internet.
|
||||
* SSH Options: Use opensshthe package that already comes in the middle.
|
||||
* NTP Options: Use chronythe packet already in the middle.
|
||||
* Mode: Select `sys` to install the system on disk.
|
||||
* Disk Options: Use `sda` as the entire hard drive present will be used.
|
||||
|
||||
After answering `sys` to the questions about the drive, and since there will only
|
||||
be one drive, answering `sda` on which drive to use, this will create and leave
|
||||
your hard drive as follows:
|
||||
|
||||
* `/dev/sda1` as BOOT in 500Mb in `/boot`
|
||||
* `/dev/sda2` as SWAP in 4Gb
|
||||
* `/dev/sda3` as ROOT in 200Gb in `/` (approximately or rest of space available)
|
||||
|
||||
In a few minutes everything will be ready to use ofering a console when boot new system.
|
||||
|
||||
![](https://venenux.github.io/alpine-espanol/instalar/install-alpine-alpine-setup-3-setup-scripts.png)
|
||||
|
||||
#### custom setup boot loader
|
||||
|
||||
If the new local system was configured to run in `diskless` or `data` mode, or if you
|
||||
choose do not install boot loader, and you do not want keep booting from the initial
|
||||
(and possibly read-only) installation media, the boot system needs to be copied to
|
||||
another device or partition or setup manually.
|
||||
|
||||
The target partition may be identified using lsblk (after installing it with apk add lsblk)
|
||||
and/or blkid, similar to previously identifying the initial installation media device.
|
||||
|
||||
The procedure to copy the boot system is using setup-bootable
|
||||
|
||||
Once everything is in place, but is you use `diskless` or `data` save your customized
|
||||
configuration with `lbu commit` before rebooting.
|
||||
|
||||
## Finishing the installation
|
||||
|
||||
After all of the scripts in the setup end, a "reboot" will be offered,
|
||||
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**
|
||||
|
||||
|
||||
## How to use this guide
|
||||
|
||||
This guide **structure all the commands in blocks, each block its separated by a line spaced**,
|
||||
so you must **type each line as is.. and hit enter**, so you noted that then you
|
||||
typed each separated clocks of commands, copy/type only blocks separated by an empty line,
|
||||
all new(next) lines are made by just enter. the terminal will detect if must execute or not.
|
||||
|
||||
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.
|
||||
|
||||
## 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:
|
||||
|
||||
* **BY** – Credit must be given to the creator of each content respectivelly, starting at the first contributor.
|
||||
* **NC** – Only noncommercial uses of the work are permitted, with exceptions if you fill an issue here!
|
||||
* **SA** – Adaptations must be shared under the same terms, you must obey this terms and do not change it.
|
||||
|
||||
https://codeberg.org/alpine/alpine-wiki/src/branch/main#license
|
||||
|
||||
## See also
|
||||
|
||||
* [README.md](README.md)
|
||||
* [alpine-newbie-install.md](../../newbie/alpine-newbie-install.md)
|
||||
* [alpine-tutorial-desktop-wayland-try.md](alpine-tutorial-desktop-wayland-try.md)
|
||||
* [alpine-tutorial-desktop-xfce4-fast-forward.md](alpine-tutorial-desktop-xfce4-fast-forward.md)
|
Loading…
Reference in New Issue