1 #!/bin/sh 2 3 # Configuration: 4 if [ -e userinstall-defaults-uml ]; then 5 . "$PWD/userinstall-defaults-uml" 6 elif [ -e /etc/default/userinstall-uml ]; then 7 . /etc/default/userinstall-uml 8 else 9 echo "No defaults found for userinstall (UML)." 1>&2 10 exit 1 11 fi 12 13 if [ ! -e "$PACKAGEROOT" ]; then 14 echo "A package root must first be made using user-setup." 1>&2 15 exit 1 16 fi 17 18 if [ ! "$IMAGEDIR" ]; then 19 echo "An image directory must be defined." 1>&2 20 exit 1 21 fi 22 23 THISDIR=`dirname "$0"` 24 25 echo "Installing the package root..." 1>&2 26 cp -a "$PACKAGEROOT/"* "$IMAGEDIR"/ 27 28 echo "Removing any linked /dev entry..." 1>&2 29 if [ -h "$IMAGEDIR/dev" ]; then 30 rm "$IMAGEDIR/dev" 31 fi 32 33 if [ ! -e "$IMAGEDIR/dev" ]; then 34 mkdir "$IMAGEDIR/dev" 35 fi 36 37 cp "/dev/MAKEDEV" "$IMAGEDIR/dev" 38 39 echo "Removing any linked /proc entry..." 1>&2 40 if [ -h "$IMAGEDIR/proc" ]; then 41 rm "$IMAGEDIR/proc" 42 fi 43 44 if [ ! -e "$IMAGEDIR/proc" ]; then 45 mkdir "$IMAGEDIR/proc" 46 fi 47 48 echo "Using a special fstab..." 1>&2 49 if [ -e "$IMAGEDIR/etc/fstab" ]; then 50 if [ ! -e "$IMAGEDIR/etc/fstab.orig" ]; then 51 mv "$IMAGEDIR/etc/fstab" "$IMAGEDIR/etc/fstab.orig" 52 fi 53 fi 54 cp "$THISDIR/UML/fstab" "$IMAGEDIR/etc/fstab" 55 56 # Tweak the inittab to only use tty0 and add it to securetty. 57 echo "Reconfiguring the console settings..." 1>&2 58 if [ ! -e "$IMAGEDIR/etc/inittab.orig" ]; then 59 if [ -e "$IMAGEDIR/etc/inittab" ]; then 60 cp "$IMAGEDIR/etc/inittab" "$IMAGEDIR/etc/inittab.orig" 61 grep -v "getty" "$IMAGEDIR/etc/inittab.orig" > "$IMAGEDIR/etc/inittab" 62 fi 63 echo "# We launch just one console for UML:" >> "$IMAGEDIR/etc/inittab" 64 echo "c0:1235:respawn:/sbin/getty 38400 tty0 linux" >> "$IMAGEDIR/etc/inittab" 65 66 echo "# UML modification: use tty0 or vc/0" >> "$IMAGEDIR/etc/securetty" 67 echo "tty0" >> "$IMAGEDIR/etc/securetty" 68 echo "vc/0" >> "$IMAGEDIR/etc/securetty" 69 fi 70 71 sudo "$THISDIR/uml-make-devices" "$IMAGEDIR"