May 27, 2011

บริหาร VM บน VirtualBox ด้วย command line

VirtualBox

   เหตุที่ต้องหัดใช้ Command line ของ VirtualBox ก็เพราะว่า อยู่ดีๆ ไหง remote desktop เข้าไปไม่ได้ก็ไม่รู้ ได้แต่ remote shell เข้าไปแล้วจะจัดการ VM ของเรายังงัยดีเนี่ยะ


จากที่ดูๆแล้ว มันมีคำสั่ง VBoxManage ให้ใช้ สามารถทำได้ทุกอย่าง ลองพิมพ์ดูได้ Help ยาวเหยียดเลย

รวมๆแล้วสิ่งที่ต้องทำผ่าน Command line เพื่อให้ได้ VM ซักตัว มีประมาณนี้
  • Register ชื่อ VM ที่เราจะสร้างให้ VBox รู้จักก่อน
  • กำหนด Hardware ให้ VM เช่น CPU, MEM, Boot sequence, Network Interface
  • สร้างไฟล์ Harddisk
  • สร้าง IDE Controller
  • เสียบ Harddisk เข้าไปที่ IDE Controller
  • เสียบ DVD Drive เข้าไปที่ IDE Controller แล้ว mount ไปที่ iso ที่เป็นแผ่นติดตั้ง
  • ถ้าให้สามารถ Remote Desktop ด้วย VRDP ได้ ก็ทำขั้นตอนนี้
  • Start โลด
ตามขั้นตอนที่ว่ามานี้ เราก็สามารถสร้าง VM ด้วย Command line ได้แล้วโดยมีรายละเอียดดังต่อไปนี้

1. Register ชื่อ VM ของเราให้ VBox รู้จัก เพื่อให้ VBox สร้างไฟล์ config ที่เป็น XML สำหรับ VM นี้ขึ้นมาให้เรา
VBoxManage createvm --name "FC13" --ostype Fedora --register
Note: ถ้าไม่ใส่ --register ก็ได้ สามารถ register ทีหลังก็ได้ด้วยคำสั่ง
VBoxManage registervm --name "FC13"
Note: ถ้าไม่รู้ว่ามี ostype อะไรบ้าง ลองให้มัน list ให้ดู
VBoxManage list ostypes
2. กำหนด Hardware ให้ VM โดยใช้ modifyvm
เมื่อเรา createvm แล้ว เราจะได้ config มา เราจะปรับแต่ง หรือว่า config มันด้วย modifyvm
VBoxManage modifyvm "FC13" --memory 725 --acpi on --boot1 dvd --boot2 disk --boot3 none --nic1 nat --nic2 intnet --intnet2 vboxnet0
หรือว่ามันยาวไป ค่อยๆรันก็ได้ครับ
VBoxManage modifyvm "FC13" --memory 725 --acpi on
VBoxManage modifyvm "FC13" --boot1 dvd --boot2 disk --boot3 none
VBoxManage modifyvm "FC13" --nic1 nat
VBoxManage modifyvm "FC13" --nic2 intnet
VBoxManage modifyvm "FC13" --intnet2 vboxnet0
หรือถ้าใช้เป็น Hostonly
VBoxManage modifyvm "FC13" --nic2 hostonly
VBoxManage modifyvm "FC13" --hostonlyadapter2 vboxnet0
3. สร้างไฟล์ Hard disk
VBoxManage createhd --filename "FC13.vdi" --size 10000 --remember
จากคำสั่งนี้ ให้สร้างไฟล์ harddisk ชื่อ FC13.vdi หรือ ใช้ชื่ออะไรก็ได้ .vdi ตอนนี้ ไฟล์นี้ยังไม่รู้จักกันกับ VM ของเรา เหมือนเราไปซื้อ Hard disk มาจากพันทิพย์ แต่ยังไม่ได้เสียบบนเครื่องเรานี่เอง Hard disk ลูกนี้มี ขนาด 10GB ครับ

4. สร้าง IDE Controller เราต้องทำหน้าที่เป็นผู้ผลิด chip ด้วย ว่าเราอยากให้เครื่องของเราใช้ Haddisk แบบไหน
VBoxManage storagectl "FC13" --name "IDE Controller" --add ide --controller PIIX4
PIIX4 ก็ PIIX4 ตามเขาไปละกันนะ รายละเอียดลองอ่าน Help หรือ manual ดูได้ครับ

5. Attach ตัว Harddisk 10G ของเราเข้ากับ IDE Controller เหมือนเราเอา Harddisk ที่ซื้อมาจากพันทิพย์มาเสียบเข้ากับ IDE  port Primary Master น่ะครับ
VBoxManage storageattach "FC13" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium "FC13-testinstall.vdi"
6. เสียบ DVD Drive เข้าไปที่เครื่องเรา ที่ IDE Secondary Master (ประมาณนั้น) โดยให้ DVD Drive เราเสียบแผ่นติดตั้ง Fedora Core 13 คาไว้เลย
VBoxManage storageattach "FC13" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /home/yuttana/iso/Fedora-13-i386-DVD.iso
7. Enable  VRDP Support (VBox Remote Desktop Protocol) Default port จะอยู่ที่ 3390 หรือเราสามารถกำหนดใหม่เองก็ได้ ให้เข้ากับ VM ตัวนี้ FC13 ของเรา
VBoxManage modifyvm  "FC13"  --vrdp on
VBoxManage modifyvm "FC13"   --vrdpport 3391
8. Start VM โลด
VBoxManage startvm FC13
เราสามารถดูได้ว่าเรามี VM อะไรใน Config บ้างโดยสั่งว่า
VBoxManage list vms
ถ้าจะดูว่าตอนนี้มี VM อะไรรันอยู่บ้าง
VBoxManage list runningvms
หลักๆก็ประมาณนี้ เมื่อรันแล้ว เราสามารถใช้ Windows Remote Desktop โดยกำหนด port ตามที่เราตั้งไว้ เพื่อ Remote เข้าไปติดตั้งและใช้งานได้เลยครับ

คำสั่งอื่นๆสามารถอ่านได้จาก Help โดยการพิมพ์ VBoxManage (เดียวมันก็ขึ้นมายาวพรืด) หรือ VirtualBox User Manual ได้

No comments:

Post a Comment