Unattended Boot and Install: Difference between revisions

From Alpine Linux
(Delete content. Consolidated into existing install wiki pages and files now hosted on github.)
Tag: Replaced
 
(39 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Draft}}
{{Delete|See the latest version on [https://github.com/macmpi/alpine-linux-headless-bootstrap github] .}}
{{TOC right}}
= Introduction =
This wiki describes a modified version of the original method I posted for [https://wiki.alpinelinux.org/wiki/Raspberry_Pi_-_Headless_Installation Headless installation on a Raspberry Pi.] While the original version worked for other architectures, like x86_64, it was targeted at and posted in the Raspberry Pi section since that was my primary focus at the time. Revisions to that page by other authors removed the mention of x86_64 altogether so this version will be more generally written in the hopes that it will be easier to find and that it's applicability will be clearer.
 
Additionally, this version improves upon the original (in my opinion) by automatically logging in the root user and optionally running a shell script. This provides a means to perform unattended installations or other scripted tasks and does not require modification of the stock Alpine installation media / files.
 
The following functionality is provided:
* Automatic DHCP configuration of a network interface, either wired or wireless
* Automatic configuration of sshd with password-less root login enabled
* Automatic login of the root user on tty7
* Automatic script execution (optional)
 
[http://www.sodface.com/repo/headless.apkovl.tar.gz Download a pre-built overlay file here.]
 
= Basic Use =
For Alpine supported Raspberry Pi models:
* Download the applicable [https://alpinelinux.org/downloads/ Alpine installation tarball] and extract it to an SD card formatted with a single FAT partition.
* Copy the [http://www.sodface.com/repo/headless.apkovl.tar.gz headless.apkovl.tar.gz] file to the root of the SD card.
* Optionally, create a file named `wifi.txt` in the root of the SD card. See below for file format.
* Optionally, create a file named `unattended.sh` in the root of the SD card. See below for an example.
* Boot the Pi with the SD card.
 
For other architectures (tested on various x86_64 hardware and a Qemu VM)
* Download the applicable [https://alpinelinux.org/downloads/ Alpine installation tarball] and extract it to an SD card formatted with a single FAT partition.
* Copy the [http://www.sodface.com/repo/headless.apkovl.tar.gz headless.apkovl.tar.gz] file to the root of the SD card.
* Optionally, create a file named `wifi.txt` in the root of the SD card. See below for file format.
* Optionally, create a file named `unattended.sh` in the root of the SD card. See below for an example.
* Boot the Pi with the SD card.
 
{{Cat|/etc/network/interfaces|
auto lo
iface lo inet loopback
 
auto wlan0
iface wlan0 inet dhcp
hostname wyse3030-3
 
auto eth0
iface eth0 inet manual
pre-up ifconfig $IFACE up
pre-down ifconfig $IFACE down
 
}}
 
Notice that the wireless interface (wlan0) uses dhcp from the home network as usual and that an IP address is not used at all on the wired interface (eth0).
 
Enable and create a local start-up script to add route entries at boot:
 
{{Cmd| # rc-update add local default
# touch /etc/local.d/RouteAdd.start
# chmod +x /etc/local.d/RouteAdd.start
}}

Latest revision as of 22:23, 12 July 2022

This material is proposed for deletion ...

See the latest version on github . (Discuss)
Make sure no other pages link here and check the page's history before deleting.