debian: บันทึก VirtualBox

หลังจากทดลอง Xen แล้ว พบว่ายังมีปัญหาเกี่ยวกับคีย์บอร์ดที่ค่อนข้างเอาแน่เอานอนไม่ได้ และปัญหาความไม่คุ้นเคยในการใช้เมาส์ผ่าน VNC
จึงได้มาทดลองใช้ VirtualBox
ซีพียูอินเทล E6300 หน่วยความจำ 1G
พบว่า

  • ถ้าใช้กับวินโดวส์ 9x ติดตั้งยาก มีปัญหากับ VGA และถ้าสามารถติดตั้งผ่านแล้ว ความเร็วสู้ qemu -no-kqemu ไม่ได้
  • ถ้าใช้กับวินโดวส์ Xp ความเร็วดีมาก สงสัยว่าจะเร็วกว่า Xen เสียอีก และเสถียรดีมาก ดีกว่า qemu สรุปว่าถ้าเป็น Windows Xp น่าใช้ VirtualBox มาก ๆ

จึงบันทึกการปรับตั้งค่าไว้ดังนี้

มีปัญหาว่าบางครั้ง แม้จะแก้ไขให้เราอยู่ในกลุ่ม vboxusers แล้วก็ตาม แต่บางครั้งก็ยังไม่สามารถรันได้ จึงแก้ไขให้ /dev/vboxdrv เป็นโหมด 666 ผ่าน udev
$ sudo vi /etc/udev/rules.d/60-vboxdrv.rules
แก้จาก KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"
แก้เป็น

KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0666"

แก้ไขค่าเน็ตเวิร์ก tun ให้เป็น 666 เหมือนกัน
$ sudo vi /etc/udev/rules.d/020_permissions.rules
แก้เป็น

...
KERNEL=="tun",          MODE="0666"
...

สร้างสคริปต์สำหรับเน็ตเวิร์กแบบกำหนดเอง
$ vi ~/ifup-tap0

sudo iptables -t nat -D POSTROUTING -j MASQUERADE -o eth0
sudo iptables -t nat -A POSTROUTING -j MASQUERADE -o eth0
UNAME=$USER
sudo tunctl -u $UNAME -t tap0
sudo ifconfig tap0 192.168.4.254 up

$ sudo chmod 755 ~/ifup-tap0

ตั้งค่าให้ VirtualBox ใช้เน็ตเวิร์กแบบ Host Interface
Setting -> Network -&gt Host Interface
Interface name : tap0
Setup application : ~/ifup-tap0

สำหรับ Windows XP เขาให้หน่วยความจำปริยายมาเป็น 128M แต่เรากำหนดเป็น 384M

ใน Windows XP ตั้งค่าให้ไอพีเป็น 192.168.1.4 และเกตเวย์เป็น 192.168.4.254

การเมานต์ไฟล์ vdi

ntfs
$ sudo mount -o loop,offset=0x$(hd -h 100000 IMAGE.vdi | grep "eb 52 90 4e 54 46 53" | cut -c 1-8) IMAGE.vdi /MOUNT/POINT
vfat
$ sudo mount -o loop,offset=0x$(hd -h 100000 IMAGE.vdi | grep "eb 3C 90" | cut -c 1-8) IMAGE.vdi /MOUNT/POINT

ที่มา: forums.virtualbox.org: Mounting .vdi file on host