alpine linux bootstrapping

This commit is contained in:
WSJ 2022-11-22 18:05:21 -04:00
parent 852c0ca651
commit 4e383c0626

View File

@ -79,9 +79,39 @@ _subheader(`Distributions')
Linux is usually obtained as part of a software distribution put together to form a useable operating system.
</P>
<H4>Alpine</H4>
<P>
Alpine Linux is a small Linux distribution based on musl libc.
Its main purpose is to serve as a server distribution, however many have found use for it as a desktop distribution.
</P>
<UL>
<LI><A HREF="https://pkgs.alpinelinux.org/contents">Alpine repositories content search</A></LI>
</UL>
<H5>Bootstrapping</H5>
<P>
Alpine's bootstrapping procedure is quite manual; you should probably use _code(`setup-alpine').
However, it is possible and quite easy to perform the steps manually.
</P>
<UL>
<LI>Copy over the contents of _code(`/etc/apk/keys') to _code(`/mnt/etc/apk/keys')</LI>
<LI>
Add newline-delimited mirrors to _code(`/mnt/etc/apk/repositories'), such as these if you wish to use the _code(`edge') branch:
<PRE>
http://dl-cdn.alpinelinux.org/alpine/edge/main
http://dl-cdn.alpinelinux.org/alpine/edge/community
http://dl-cdn.alpinelinux.org/alpine/edge/testing
</PRE>
_code(`edge') may be replaced with a stable branch, the latest being _code(`v3.17') as of writing.
</LI>
<LI>Run _code(`apk --root /mnt add --initdb alpine-base'). This is an ordinary _man(`apk-add(8)') call; you may wish to install necessities such as a kernel, firmware, and a bootloader at the same time.</LI>
</UL>
<P>
Alpine does not have a _man(`chroot(1)') helper; you must manually do that with a one-liner such as
_code(`for i in dev proc sys; do mount -o bind "/$i" "/mnt/$i"; done; cp /etc/resolv.conf /mnt/etc/resolv.conf')
which you can chroot into.
</P>
<P>
After chrooting in, you must configure basics such as users, passwords, _man(`fstab(5)'), and the bootloader yourself.
</P>
<H5>Always install manual pages</H5>
<P>
Alpine doesn't include man pages in program packages to save on space, instead keeping them in _code(`[<I>package</I>]-doc') sibling packages.