From b8f3927e48467ecf196e91a95dd29c4f409709d8 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 23 Mar 2017 10:29:27 +0200 Subject: Initial bootstrap script --- init | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 init (limited to 'init') diff --git a/init b/init new file mode 100755 index 0000000..fdcb318 --- /dev/null +++ b/init @@ -0,0 +1,49 @@ +#!/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 -- cgit v1.1