#!/bin/bash # Init script for build2 buildos. # # Loosely based on the one that comes in Debian initrd.img (since we are # using its kernel image as is). # trap "exit 1" ERR set -o errtrace # Trap in functions. # Note: diagnostics goes to stdout. # function info () { echo "$*"; } function error () { info "$*"; exit 1; } export PATH=/sbin:/usr/sbin:/bin:/usr/bin # One would expect rootflags=size=1g to work but it doesn't (perhaps init # is expected to interpret it)? # mount -o remount,size=1G / mkdir -p /sys /proc mount -t sysfs -o nodev,noexec,nosuid sysfs /sys mount -t proc -o nodev,noexec,nosuid proc /proc info "init starting up..." mount -t devtmpfs -o nosuid,mode=0755 udev /dev mkdir -p /dev/pts mount -t devpts -o noexec,nosuid,gid=5,mode=0620 devpts /dev/pts || true mkdir -p /run mount -t tmpfs -o "noexec,nosuid,size=10%,mode=0755" tmpfs /run mkdir -p /tmp mount -t tmpfs -o "nodev,nosuid,size=10%,mode=1777" tmpfs /tmp cmdline="$(cat /proc/cmdline)" info "boot cmdline: $cmdline" sleep 2 # --machine-id # #exec /lib/systemd/systemd #/dev/console 2>&1 exec /bin/bash