From 5b17683a268d33a05076f7336bb86a1c5e31d098 Mon Sep 17 00:00:00 2001 From: Bastian Bittorf Date: Tue, 12 Jan 2021 13:04:13 +0100 Subject: [PATCH] add chroot-mode, so it works without qemu/kernel --- rootfs.sh | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/rootfs.sh b/rootfs.sh index c88d264b..8d7addc1 100755 --- a/rootfs.sh +++ b/rootfs.sh @@ -1,14 +1,15 @@ #!/bin/bash set -ex -QEMU_CMD=$1 -RAM=$2 +QEMU_CMD="${1:-qemu-system-x86_64}" # or 'chroot' +QEMU_RAM="${2:-8G}" pushd sysa # SYSTEM A # Setup tmp +echo "trying to mount ramdisk/tmpfs: size 8G" mkdir -p tmp/ sudo mount -t tmpfs -o size=8G tmpfs tmp @@ -119,13 +120,18 @@ cd tmp find . | cpio -H newc -o | gzip > initramfs.igz # Run -${QEMU_CMD:-qemu-system-x86_64} -enable-kvm \ - -m "${RAM:-8G}" \ - -nographic \ - -no-reboot \ - -kernel ../../kernel -initrd initramfs.igz -append console=ttyS0 +if [ "${QEMU_CMD}" = 'chroot' ]; then + sudo PATH="/after/bin:${PATH}" chroot . /init +else + ${QEMU_CMD} -enable-kvm \ + -m "${QEMU_RAM:-8G}" \ + -nographic \ + -no-reboot \ + -kernel ../../kernel -initrd initramfs.igz -append console=ttyS0 +fi cd ../.. # Cleanup +echo "trying to unmount ramdisk/tmpfs, abort with CTRL+C" sudo umount sysa/tmp