From 140666b0971089ef34fb910313d0e42811dc0603 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Thu, 8 Feb 2018 20:28:28 +0100 Subject: added the qemu-img build script --- create_hdd.sh | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100755 create_hdd.sh (limited to 'create_hdd.sh') diff --git a/create_hdd.sh b/create_hdd.sh new file mode 100755 index 0000000..d35f6bc --- /dev/null +++ b/create_hdd.sh @@ -0,0 +1,103 @@ +#!/bin/sh + +. "./default.conf" + +# builds a hard disk image for a stage 1 system: +# no ramdisk, no modules, no fancy startup, just a shell script + +cd $CROSS_HOME + +umount mnt +sudo /sbin/losetup -d /dev/loop2 +rmdir mnt +sudo rm -f arch486.img + +# prepare a plain image + +qemu-img create arch486.img 4g +chmod 666 arch486.img +sudo /sbin/losetup /dev/loop2 arch486.img +sudo dd if=/dev/zero of=/dev/loop2 bs=512 count=32130 +echo ';' | sudo /sbin/sfdisk --no-reread /dev/loop2 +sudo sfdisk -A /dev/loop2 1 +sudo partx --show /dev/loop2 +sudo partx -v --add /dev/loop2 +sudo mkfs.ext4 -O ^64bit /dev/loop2p1 +mkdir mnt +sudo mount /dev/loop2p1 mnt +sudo cp -a i486-root/* mnt/. + +sudo chown -R cross:cross mnt/. +cd mnt +mkdir boot/syslinux +echo 'default /boot/vmlinuz-linux root=/dev/hda1 init=/sbin/init console=ttyS0 console=tty0' \ + > boot/syslinux/syslinux.cfg +sudo dd bs=440 count=1 if=/usr/lib/syslinux/bios/mbr.bin of=/dev/loop2 +cp /usr/lib/syslinux/bios/*.c32 boot/syslinux/. +sudo extlinux --install boot/syslinux/ +mkdir -p etc/init +cat >etc/init/boot < etc/resolv.conf <> etc/group <> etc/passwd <> etc/ssh/sshd_config < mnt/test.c < +#include +#include + +int main( int argc, char *argv[] ) +{ + puts( "hello" ); + exit( EXIT_SUCCESS ); +} +EOF + +cat > mnt/test.cpp < +#include + +int main( void ) +{ + std::cout << "hello" << std::endl; + std::exit( EXIT_FAILURE ); +} +EOF + -- cgit v1.2.3-54-g00ecf