]> rtime.felk.cvut.cz Git - pisa/qemu-utils.git/blobdiff - qemu-run-trick/qemu-setup-and-run
qemu-run-trick: do not deep_copy if only target permissions cannot be set.
[pisa/qemu-utils.git] / qemu-run-trick / qemu-setup-and-run
index 1dbca92ed15a2f4ed00f29e3d17aecb56ce31e18..6847fd2cd96d29c03acf5a691e82a0c0a41250f3 100755 (executable)
@@ -48,7 +48,9 @@ function deep_copy()
 
   while true ; do
     mkdir -p ${tgt_dir}/$(dirname ${src}) || return 1
-    cp -av ${src} ${tgt_dir}/${src#/} || return 1
+    cp -av ${src} ${tgt_dir}/${src#/} || \
+    cp -v ${src} ${tgt_dir}/${src#/} || return 1
+
 
     l=$(readlink ${src})
     if [ -z "$l" ] ; then
@@ -127,13 +129,17 @@ if [ -e /bin/resize ] ; then
   rm -f /dev/tty
   mv /dev/tty-backup /dev/tty
 fi
-mount -t 9p -o ro,trans=virtio root /mnt/rootbase
+mount -t 9p -o ro,trans=virtio,version=9p2000.u root /mnt/rootbase
 mount -t tmpfs overlay /mnt/overlay
 mkdir -p /mnt/overlay/data
 
+echo "Ready to setup overlay"
+#sleep 5
+#/bin/sh
+
 if grep -q aufs /proc/filesystems ; then
   echo "Using aufs to remap root"
-  mount -n -t aufs -o dirs=/mnt/overlay/data=rw:/mnt/rootbase=ro aufs-root ${rootmnt}
+  mount -n -t aufs -o noxino,noatime,dirs=/mnt/overlay/data=rw:/mnt/rootbase=ro aufs-root ${rootmnt}
 else
   echo "Using overlay to remap root"
   mkdir -p /mnt/overlay/work
@@ -143,7 +149,7 @@ fi
 mount -n -o move /dev ${rootmnt}/dev
 mount -n -o move /sys ${rootmnt}/sys
 mount -n -o move /proc ${rootmnt}/proc
-mount -t 9p -o trans=virtio home ${rootmnt}/home
+mount -t 9p -o trans=virtio,version=9p2000.u home ${rootmnt}/home
 mount -t tmpfs none ${rootmnt}/root
 mount -t tmpfs none ${rootmnt}/tmp
 mount -t tmpfs none ${rootmnt}/run
@@ -185,6 +191,14 @@ echo "1:2345:respawn:/sbin/agetty -n -l \${shell} -o '-l' tty1 38400 linux" >>${
 echo "2:23:respawn:/sbin/agetty -n -l \${shell} -o '-l' tty2 38400 linux" >>${rootmnt}/etc/inittab
 echo "T0:23:respawn:/sbin/agetty -n -l \${shell} -o '-l' -L ttyS0 9600 xterm" >>${rootmnt}/etc/inittab
 
+cd ${rootmnt}
+echo "Ready to proceed by pivot_root"
+#sleep 5
+#/bin/sh
+
+#mkdir -p ${rootmnt}/overlay/pivot
+#pivot_root . overlay/pivot
+#exec chroot . sbin/init
 exec switch_root ${rootmnt} /sbin/init
 EOF
 
@@ -231,13 +245,14 @@ function build_initrd_cpio()
 
 function run_virt_system()
 {
-  $QEMU -enable-kvm -kernel ${KERNEL_IMAGE} \
+  $QEMU ${QEMU_KVM_ENABLE} \
+        -kernel ${KERNEL_IMAGE} \
         -initrd ${RAMDISK_ARCHIVE} ${QEMU_MEMORY} \
         -virtfs local,path=/,security_model=none,mount_tag=root \
         -virtfs local,path=/home,security_model=none,mount_tag=home \
         -net nic,macaddr=be:be:be:10:00:01,model=virtio,vlan=0 \
         -net user,vlan=0 \
-        ${QEMU_KVM_ENABLE} ${QEMU_OUTPUT}
+        ${QEMU_OUTPUT}
 
 #     -chardev can,id=canbus0,port=can0
 #     -device pci-can,chardev=canbus0,model=SJA1000