Native Harddisk Install 1.9

From Alpine Linux
This material is retained only for historical reasons ...

This document covers the ancient 1.9 versions of Alpine.

Native Harddisk Install on Alpine 1.9.x

Installation

Run setup-alpine to configure the keyboard, hostname and networking.

Create partitions with fdisk.

fdisk /dev/sda

You should have 2 partitions: /dev/sda1 as "Linux" (type 83) and /dev/sda2 as "linux swap" (type 82). The /dev/sda1 should be bootable.

Install needed programs for the setup

apk_add e2fsprogs syslinux mkinitfs

Create filesystem and swap

mkfs.ext3 /dev/sda1
mkswap /dev/sda2

Mount file-system

mount -t ext3 /dev/sda1 /mnt

Clone the current running config created by setup-alpine (hostname, networking root password)

lbu package - | tar -C /mnt -zx

Install base packages on harddisk

apk add --root=/mnt --initdb apk-tools alpine-baselayout alpine-conf linux-grsec linux-grsec-mod acct mkinitfs

Generate new initramfs image:

chroot /mnt /sbin/mkinitfs

Create the repositories list. In this example we use the cdrom as repository:

mkdir -p /mnt/etc/apk
echo "/media/cdrom/packages/core" >> /mnt/etc/apk/repositories
echo "/media/cdrom/packages/extra" >> /mnt/etc/apk/repositories

Append the / and swap to fstab:

echo -e "/dev/sda1 /    ext3  defaults 1 1" >> /mnt/etc/fstab
echo -e "/dev/sda2 none swap  sw       0 0" >> /mnt/etc/fstab

Configure the boot loader, extlinux. We use sthe provided syslinux as base.

cp /media/cdrom/syslinux.cf /mnt/boot/extlinux.conf
vi /mnt/boot/extlinux.conf

It should contain something like:

timeout 20
prompt 1
default grsec
label grsec
    kernel /boot/grsec
    append initrd=/boot/grsec.gz root=/dev/sda1 modules=ext3 quiet

Install the bootloader:

extlinux -i /mnt/boot

Fix the MBR so its bootable (note that its sda and not sda1)

dd if=/usr/share/syslinux/mbr.bin of=/dev/sda

Unmount, remove cdrom and reboot. (If you can't eject, just remove it manually as the machine reboots)

umount /mnt
umount /.modloop
eject 
reboot

After reboot, you should be able to log in as roto with the password you created in setup-alpine.