QemuKvm

26th January 2016 at 9:14pm

  • C:\Windows\System32\sysprep\sysprep.exe /oobe /generalize /shutdown
  • qemu-img create -f qcow2 disk.img 30G
  • alias mac="perl -e \"print(join(':', 'f6', map { sprintf '%02x', rand(256) } (1..5)), qq(\n));\""

qemu-img create -f qcow2 -o size=30G,preallocation=metadata disk.img

ls -lash disk.img
ls -las disk.img
qemu-img info disk.img

fallocate -l 30G disk.img

ls -lash disk.img
ls -las disk.img
qemu-img info disk.img
sudo kvm -vnc :1 -vga std -m 8G -drive file=disk.img,if=virtio,cache=writeback -boot c -net nic,model=virtio,name=br0,macaddr=f6:74:de:42:ea:28 -net tap -cpu host --usbdevice tablet -balloon virtio -enable-kvm -daemonize
qemu-system-x86_64 \
        -enable-kvm \
        -m 4096 \
        -drive file=win7-x64-virtio.qcow,if=virtio \
        -balloon virtio \
        -net nic,model=virtio -net user  \
        -usbdevice tablet \
        -soundhw ac97 \
        -smp cores=2,threads=4 \
        -cpu host \
        -rtc base=localtime,clock=host \
        -vga qxl \
        -device virtio-serial-pci \
        -spice port=5900,password=password_here \
        -device virtserialport,chardev=spicechannel0,name=com.redhat.spice.0 \
        -chardev spicevmc,id=spicechannel0,name=vdagent
test -e hwaddr.eth0 || mac > hwaddr.eth0
kvm_id=$(next-kvm-id)
test -e vnc-display.* || printf "%02d" $kvm_id > vnc-display.$kvm_id
test -e monitor-port.* || printf "90%02d" $kvm_id > monitor-port.$kvm_id
sudo kvm \
    -vnc :$(cat vnc-display.*) \
    -vga std \
    -smp 2 \
    -m 6G \
    -drive file=disk.img,if=virtio,cache=writeback \
    -drive file=data.img,if=virtio,cache=writeback \
    -boot c \
    -balloon virtio \
    -serial mon:telnet::$(cat monitor-port.*),server,nowait \
    -option-rom /usr/share/kvm/pxe-rtl8139.bin \
    -net nic,model=virtio,name=eth0,macaddr=$(cat hwaddr.eth0) \
    -net tap \
    -usbdevice tablet \
    -daemonize
test -e hwaddr.eth0 || mac > hwaddr.eth0
test -e vnc-display.?? || (vnc=$(next-kvm-vnc-display); echo $vnc > vnc-display.$vnc)
sudo kvm \
    -vnc :$(cat vnc-display.??) \
    -vga std \
    -m 4G \
    -cdrom /images/Win_7_SP1_64BIT_English.ISO \
    -drive file=/images/virtio-win-0.1-100.iso,media=cdrom,index=3 \
    -drive file=disk.img,if=virtio,cache=writeback \
    -boot c \
    -net nic,model=virtio,name=eth0,macaddr=$(cat hwaddr.eth0) \
    -net tap