summaryrefslogtreecommitdiffstats
path: root/tools/nova-debug
diff options
context:
space:
mode:
authorEd Leafe <ed@leafe.com>2011-08-01 23:38:26 +0000
committerEd Leafe <ed@leafe.com>2011-08-01 23:38:26 +0000
commita2551ad2a2c7fcb6ed36c0e77301fe1e23982e81 (patch)
tree60906c1cafc9bb396db7f8af17a66e06b7fb0b11 /tools/nova-debug
parent60a9763382ccd77735a75b6047c821477eab684e (diff)
parentbdcfaa5b927a096f507fb0f7e2d81989173957f8 (diff)
Merged trunk
Diffstat (limited to 'tools/nova-debug')
-rwxr-xr-xtools/nova-debug21
1 files changed, 13 insertions, 8 deletions
diff --git a/tools/nova-debug b/tools/nova-debug
index 3ff68ca35..0a78af16a 100755
--- a/tools/nova-debug
+++ b/tools/nova-debug
@@ -30,13 +30,15 @@ cd $INSTANCES_PATH/$1
if [ $CMD != "umount" ] && [ $CMD != "launch" ]; then
# destroy the instance
virsh destroy $1
+virsh undefine $1
# mount the filesystem
mkdir t
-DEVICE=`losetup --show -f disk`
+DEVICE=/dev/nbd0
echo $DEVICE
-kpartx -a $DEVICE
-mount /dev/mapper/${DEVICE:4}p1 t
+qemu-nbd -c $DEVICE disk
+sleep 3
+mount $DEVICE t
fi
if [ $CMD != "mount" ] && [ $CMD != "umount" ]; then
@@ -66,11 +68,13 @@ sed -i "s/<serial type=\"file\">.*<\/serial>/<serial type=\"pty\"><source path=\
umount t
-virsh create debug.xml
+virsh define debug.xml
+virsh start $1
virsh console $1
virsh destroy $1
+virsh undefine $1
-mount /dev/mapper/${DEVICE:4}p1 t
+mount $DEVICE t
# clear debug root password
chroot t passwd -l root
@@ -83,10 +87,11 @@ if [ $CMD != "mount" ] && [ $CMD != "launch" ]; then
# unmount the filesystem
umount t
-kpartx -d $DEVICE
-losetup -d $DEVICE
+qemu-nbd -d $DEVICE
rmdir t
# recreate the instance
-virsh create libvirt.xml
+virsh define libvirt.xml
+virsh start $1
fi
+