bitkeeper revision 1.122.1.15 (3e71afadv9l-u2tI8SHy7dEiub2gNg)

added "mynewdom" script. Horribly CL site specific, but damn useful.
This commit is contained in:
iap10@labyrinth.cl.cam.ac.uk committed 2003-03-14 10:32:13 +00:00
1 parent f9e443afb8
commit 87dee5fbcc
2 files changed
+53

No files matched your search

+1
View File
@@ -187,6 +187,7 @@
3e4d0046EKs06fY0CWDEgZQcn7DYUg tools/domain_builder/dom_kill.c
3e4d0046aPbGiRTtdWxqY5b3ytWurA tools/domain_builder/hypervisor_defs.h
3e4d00468aE86IfyjfrJwYoxzM7pAw tools/domain_builder/mem_defs.h
3e71afadoAI0VvAGKebLpToVQxUKfQ tools/domain_builder/mynewdom
3e4d0046VHhXwFuG5FK34AVxqd5A_A tools/domain_builder/newdom
3e4d0046IBzDIeaMbQB-e2QB2ahbig tools/domain_builder/vifinit
3ddb79bcbOVHh38VJzc97-JEGD4dJQ xen/Makefile
+52
View File
@@ -0,0 +1,52 @@
#!/bin/sh
# mynewdom <size> <extra args>
SIZE=${1:?"size missing"}
shift;
ARGS="$*"
IMAGE=../../../xenolinux-2.4.21-pre4/arch/xeno/boot/image
LASTDOM=`/bin/ls /proc/xeno/ | grep -v cmd | cut -c4- | sort -rn | head -1`
DOM=$[LASTDOM+1]
echo Domain ${DOM} looks free
ADDR=`/sbin/ifconfig eth0 | grep inet.addr | sed -e 's/.*inet addr:\([0-9.]*\) .*/\1/'`
LO=`echo $ADDR | sed -e 's/[0-9]\+\.[0-9]\+\.[0-9]\+\.\([0-9]\+\)/\1/'`
HI=`echo $ADDR | sed -e 's/\([0-9]\+\.[0-9]\+\.[0-9]\+\)\.[0-9]\+/\1/'`
NEWADDR=$HI.$[LO+DOM]
echo New IP address : ${NEWADDR}
CMDLINE=`cat /proc/cmdline`
case $CMDLINE in
*root=/dev/nfs*)
ROOT_DIR=`echo $CMDLINE | sed -e 's,.*nfsroot=\([^ ]*\).*,\1,'`
ROOT_PATH=`echo $ROOT_DIR | sed -e 's!^\(.*\)[0-9]\+$!\1!'`
ROOT_NUM=`echo $ROOT_DIR | sed -e 's!^.*\([0-9]\+\)$!\1!'`
NEWROOT_DEV="root=/dev/nfs nfsroot=${ROOT_PATH}$[ROOT_NUM+DOM]"
;;
*root=/dev/[hs]d[abcd][0-9]*|*root=/dev/x[hs]d[abcd][0-9]*)
ROOT_DEV=`echo $CMDLINE | sed -e 's!^.*root=\(/dev/[x]*[hs]da[0-9]\+\).*$!\1!'`
ROOT_DISK=`echo $ROOT_DEV | sed -e 's!\(/dev/[x]\?[hs]d[a-z]\)[0-9]\+!\1!'`
ROOT_PART=`echo $ROOT_DEV | sed -e 's!/dev/[x]\?[hs]d[a-z]\([0-9]\+\)!\1!'`
NEWROOT_DEV="root=${ROOT_DISK}$[ROOT_PART+DOM] ro"
;;
*)
echo Could not determine root from /proc/cmdline
exit
;;
esac
echo New root arguments : ${NEWROOT_DEV}
echo ./newdom ${SIZE} ${IMAGE} ${NEWADDR} ${NEWROOT_DEV} ${ARGS}
./newdom ${SIZE} ${IMAGE} ${NEWADDR} ${NEWROOT_DEV} ${ARGS}
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.