mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-23 02:05:57 +01:00
TODO document minimal init
This commit is contained in:
30
rootfs_overlay/init_lkmc.sh
Executable file
30
rootfs_overlay/init_lkmc.sh
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This is an attempt to replace /etc/inittab with a single shell file,
|
||||
# in order to to make everything explicit and sane.
|
||||
#
|
||||
# The rationale is that it will make it easier to port our setup to any image
|
||||
# if our minimal init is contained in a single portable file.
|
||||
#
|
||||
# Of course, packages that rely on extra init may start failing at any
|
||||
# point with this minimized setup, but this is a risk worth taking, especially
|
||||
# because gem5 is slow and basically mandates a minimal init.
|
||||
#
|
||||
# Here we try to some basic common init tasks that will cover what the large
|
||||
# majority of software will need.
|
||||
#
|
||||
# We don't care about shutdown commands since we focus on stateless disks.
|
||||
|
||||
export PATH=/bin:/sbin:/usr/bin:/usr/sbin
|
||||
mount -t proc proc /proc
|
||||
mkdir -p /dev/pts
|
||||
mkdir -p /dev/shm
|
||||
# TODO do mounts direclty here. fstab only adds the fschk as extra functionality,
|
||||
# but we don't care since our disks are stateless.
|
||||
mount -a
|
||||
login=/tmp/login
|
||||
printf '#!/bin/sh
|
||||
exec /bin/login root
|
||||
' > "$login"
|
||||
chmod +x "$login"
|
||||
exec /sbin/getty -n -L -l "$login" console 0 vt100
|
||||
Reference in New Issue
Block a user