X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=cirros-testvm%2Fsrc-cirros%2Ffixup-fs;fp=cirros-testvm%2Fsrc-cirros%2Ffixup-fs;h=82e2a764aaca5e3f1b6e2928a4baac3a31b8ce4a;hb=b0a0f15dfaa205161a7fcb20cf1b8cd4948c2ef3;hp=0000000000000000000000000000000000000000;hpb=c6ac3cd55ee2da956195eee393b0882105dfad4e;p=packages%2Ftrusty%2Fcirros-testvm.git diff --git a/cirros-testvm/src-cirros/fixup-fs b/cirros-testvm/src-cirros/fixup-fs new file mode 100755 index 0000000..82e2a76 --- /dev/null +++ b/cirros-testvm/src-cirros/fixup-fs @@ -0,0 +1,42 @@ +#!/bin/sh +error() { echo "$@" 1>&2; } +fail() { [ $# -eq 0 ] || error "$@"; exit 1; } + +rootd=${1} +[ -n "${rootd}" -a -d "${rootd}" ] || exit 1 + +rm -Rf "$rootd/home/default" + +# no need for visudo +rm -f "$rootd/usr/sbin/visudo" + +# buildroot symlinks stuff in /var to /tmp +links="lib/pcmcia pcmcia lock cache log spool pcmcia" +for f in $links; do + p="/var/$f" + if [ -L "$rootd/$p" ]; then + rm "$rootd/$p" || + fail "failed to remove file $p" + elif [ -d "$rootd/$p" ]; then + rmdir "$rootd/$p" || + fail "rmdir $p failed" + else + [ -e "$rootd/$p" ] && + fail "don't know what to do with $p. not dir or link" + fi +done +mkdir -p $rootd/var +( cd "$rootd/var" && mkdir -p $links ) || + fail "failed to create directories in /var" + +( cd "$rootd/var" && rm -Rf tmp run && + ln -s ../run run && ln -s ../run/var.tmp tmp ) || + fail "failed to make var/run and var/tmp" + +rm -f $rootd/etc/resolv.conf && + ln -sf ../run/resolv.conf "$rootd/etc/resolv.conf" || + fail "failed to create resolv.conf symlink" + +if [ -L "$rootd/sbin/blkid" -a -x "$rootd/usr/sbin/blkid" ]; then + rm -f "$rootd/sbin/blkid" +fi