Mercurial > hg > aboriginal
view more/chroot-splice.sh @ 1550:866adfa9c63c
Tweak chroot-splice a bit more: back to hardlinks, plus read only bind mounts.
author | Rob Landley <rob@landley.net> |
---|---|
date | Fri, 05 Oct 2012 21:32:24 -0500 |
parents | 90da269bc09c |
children | a91fb1944247 |
line wrap: on
line source
#!/bin/bash # Combine a root filesystem directory and a control image into an $ARCH-specific # chroot containing native build control files, suitable for chrooting into. if [ $# -ne 2 ] then echo "usage: $0 "'$ARCH $CONTROL_IMAGE' >&2 exit 1 fi # Make sure prerequisites exist for i in "build/root-filesystem-$1" "$2" do if [ ! -e "$i" ] then echo "No $i" >&2 exit 1 fi done if [ `id -u` -ne 0 ] then echo "Not root">&2 exit 1 fi # Zap old stuff (if any) [ -z "$CHROOT" ] && CHROOT="build/chroot-$1" trap 'more/zapchroot.sh "$CHROOT"' EXIT if [ -e "$CHROOT" ] then more/zapchroot.sh "$CHROOT" || exit 1 fi # Copy root filesystem and splice in control image cp -la "build/root-filesystem-$1" "$CHROOT" || exit 1 if [ -d "$2" ] then mount -o bind,ro "$2" "$CHROOT/mnt" || exit 1 else mount -o loop "$2" "$CHROOT/mnt" || exit 1 fi # Output some usage hints CPUS=1 HOST="$1" chroot "$CHROOT" /sbin/init.sh