Virtualbox oprește mașina din linia de comandă. Gestionarea VirtualBox folosind consola. Puterea liniei de comandă

Uneori este nevoie să rulați o mașină virtuală pe o gazdă fără X. Vă voi spune cum să faceți acest lucru, având acces la sistemul gazdă doar prin ssh + rdp (Remote Desktop Protocol). Voi descrie procesul pentru OC Ubuntu 9.10 ca gazdă.

Să începem prin a instala VirtualBox.

Mai întâi trebuie să instalați pachetul dkms (Dynamic Kernel Module Support Framework):

Sudo apt-get install dkms

Site-ul oferă 2 opțiuni: înregistrați sursa pachetului (deb download.virtualbox.org/virtualbox/debian karmic non-free) în /etc/apt/sources.list sau descărcați și instalați pachetul deb. Când am înregistrat sursa și am făcut sudo apt-get install virtualbox-3.1, am primit o grămadă de pachete de dependență (inclusiv unele pentru interfața GUI). Prin urmare, este mai bine să descărcați pachetul deb. Descărcați și instalați:

Sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb

Poate că aici vor fi necesare și dependențe (unele biblioteci pentru analiza xml, în care sunt stocate configurații, dar sunt semnificativ mai puține decât în ​​primul caz). Dacă instalarea nu s-a finalizat din cauza dependențelor, puteți face pur și simplu

Sudo apt-get -f install

Acest lucru va instala dependențe și VirtualBox

BINE. VirtualBox instalat. Să începem să creăm mașini invitate.

Să creăm mașina în sine:

VBoxManage createvm --name ubuntu --ostype Ubuntu --register
(nume - nume mașină, ostype - tip sistem. lista completa toate tipurile pot fi găsite folosind comanda VBoxManage list ostypes)

Configurarea

VBoxManage modifyvm ubuntu --memory 512 --floppy disabled --audio none --nic1 bridged --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp pe --vrdpport 3390

Totul este clar aici. De asemenea, puteți specifica NAT ca tip de rețea (--nic1 nat). activați și rdp

Noi creăm disc hdd Pentru mașină virtuală:

VBoxManage createhd --filename /home/user/vbox/ubuntu.vdi --size 20000 --register

Adăugarea unui controler IDE la mașina noastră

VBoxManage storagectl ubuntu --name "IDE Controller" --add ide

Atașăm hdd-ul creat anterior la IDE0

VBoxManage storageattach ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

Pe IDE1 atașăm imaginea de instalare

VBoxManage storageattach ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

Spuneți mașinii să pornească de pe disc

VBoxManage modifyvm ubuntu --boot1 dvd

Să pornim mașina

Pentru a pune sistem de bază Să folosim un client rdp (am KDE, KRDC este inclus în pachetul standard). conectați-vă la mașina gazdă pe portul specificat în setări (--vrdpport 3390), instalați sistemul, faceți sudo apt-get install openssh-server . Acum puteți accesa mașina virtuală prin ssh

Oprirea mașinii virtuale

VBoxManage controlvm ubuntu acpipowerbutton
prin acpi

Sau mai aspru

VBoxManage controlvm ubuntu oprire

Noi spunem că pornește de pe hdd

VBoxManage modifyvm ubuntu --boot1 disc

De asemenea, puteți declipsa discul de instalare

VBoxManage storageattach ubuntu --storagectl "Controler IDE" --port 1 --dispozitiv 0 --mediu nici unul

Și începem din nou

Nohup VBoxHeadless --startvm ubuntu &

Mai multe comenzi utile:

VBoxManage listă runvms
vizualizați toate mașinile care rulează

VBoxManage showvminfo ubuntu
vizualizarea informațiilor despre o mașină virtuală

Astfel, pe o singură mașină cu minim sistem instalat puteți ridica mai multe virtuale pentru diverse scopuri și experimente

Virtualizare... virtualizare...
În zilele noastre, toată lumea încearcă să stoarce cât mai mult posibil din resursele lor hardware. A avea mai multe computere separate cu sisteme de operare diferite este puțin costisitoare și nu toate organizațiile o vor face. Dar există o cale de ieșire, puteți folosi mașini virtuale. Și este posibil ca mulți oameni să folosească minunatul produs de la Sun „VirtualBox” în aceste scopuri. Sunt sigur că majoritatea oamenilor folosesc interfața GUI pentru configurare, deoarece... este foarte clar și convenabil. Dar câți oameni s-au gândit la posibilitatea de a gestiona VirtualBox prin consolă?
Sarcina a fost stabilită: instalarea a două sisteme de operare (Ubuntu și Windows) pe un server. În același timp, exista un server care rulează Ubuntu 9.04 Server Edition. Prin urmare, s-a decis instalarea Windows XP ca sistem invitat.
Dar a apărut o problemă pe Ubuntu: nu a fost instalat niciun mediu grafic, adică. există doar o consolă goală.

Deci ce avem:

  • Sistem gazdă: Ubuntu 9.04 Server Edition
  • VirtualBox 2.2.2
  • Sistem invitat: Windows XP

Instalarea VirtualBox

Descărcați pachetul pentru Ubuntu 9.04 de pe site-ul oficial VirtualBox
După descărcare, rulați comanda:
dpkg -i virtualbox-2.2_2.2.2-46594_Ubuntu_jaunty_i386.deb
VirtualBox ar trebui să se instaleze. Dacă aveți probleme la instalarea pachetului, verificați mesajele de eroare. Este posibil să nu aveți instalate pachetele necesare. În cazul meu, nu aveam pachetul instalat libxslt1.1, care a fost remediat imediat prin comanda sudo apt-get install libxslt1.1 .
Adaugă-te în grup vboxusers
sudo usermod -a -G nume de utilizator vboxusers

Crearea unei mașini virtuale

Pentru început, merită remarcat faptul că pentru a controla mașini virtuale O comandă VBoxManage este utilizată prin consolă (deși are o mulțime de parametri).
Să începem.
  1. Mai întâi, să creăm o mașină și să o înregistrăm imediat
    VBoxManage createvm -name virtual_machine_name -register
  2. Apoi, trebuie să creați un disc pentru mașină
    VBoxManage createhd --filename disk_name --size disk_size in_megabytes
    Este posibil să selectați tipul de disc VDI ​​(VirtualBox), VMDK (VMWare), VHD ( Microsoft Virtual PC). Implicit, desigur, VDI :).
  3. Să facem setări suplimentare mașina noastră virtuală. Să indicăm:
    • Tip de sistem de operare invitat. Pentru a obține o listă de sisteme de operare acceptate, rulați comanda VBoxManage list ostypes
    • Dimensiunea de alocare a memoriei
    • Numele discului principal
    • Abilitatea de a utiliza VRDP (VirtualBox Remote Desktop Protocol)
    VBoxManage modifyvm virtual_machine_name --ostype OS_type --memory memory_size in megabytes --hda disk_name --vrdp on
  4. Să conectăm imaginea de disc de pe care vom instala Windows XP
    • Să înregistrăm un DVD cu imaginea de distribuție a sistemului
      VBoxManage openmedium calea_la_imagine
    • Să introducem discul în unitate virtuală
      VBoxManage modifyvm WindowsXP --dvd path_to_image
  5. Să ne uităm la setările mașinii noastre. Ne asigurăm că totul ni se potrivește și...
    VBoxManage showvminfo nume_mașină

... Lansează... Să mergem

Pentru a porni o mașină virtuală, trebuie să rulați
VBoxManage startvm nume_mașină --type vrdp
Parametru --type vrdp necesare pentru a vă conecta la aparat utilizând VRDP
Gata, acum nu mai rămâne decât să ne conectăm la mașina noastră folosind un desktop de la distanță. Acest lucru se poate face folosind utilitare standard: pentru Windows este mstsc, pentru sistemele bazate pe x este rdesktop. Deoarece avem doar o consolă, trebuie să folosim un computer care are un desktop grafic.
Pentru a vă conecta, trebuie să specificați gazda IP a mașinii și portul pentru această mașină virtuală. În cazul meu, nu am schimbat nimic și am folosit portul implicit (3389). Pentru a schimba portul, rulați VBoxManage --vrdpport port. Dacă aveți mai multe mașini virtuale instalate, atunci pentru a vă conecta la fiecare dintre ele, trebuie să specificați diferite porturi în setări, de exemplu, pentru prima mașină 3389, pentru a doua 3390 etc.

În loc de epilog

Acum avem o mașină virtuală în funcțiune și ne putem conecta cu ușurință la ea folosind protocolul VRDP. Am instalat în liniște Windows XP în timp ce eram la computerul meu de serviciu.

P.S. Windows XP a fost necesar dintr-un singur motiv. Proiectul trebuia să folosească MS SQL Server.

Uneori este nevoie să rulați o mașină virtuală pe o gazdă fără X. Vă voi spune cum să faceți acest lucru, având acces la sistemul gazdă doar prin ssh + rdp (Remote Desktop Protocol). Voi descrie procesul pentru OC Ubuntu 9.10 ca gazdă.

Să începem prin a instala VirtualBox.

Mai întâi trebuie să instalați pachetul dkms (Dynamic Kernel Module Support Framework):

Sudo apt-get install dkms

Site-ul oferă 2 opțiuni: înregistrați sursa pachetului (deb download.virtualbox.org/virtualbox/debian karmic non-free) în /etc/apt/sources.list sau descărcați și instalați pachetul deb. Când am înregistrat sursa și am făcut sudo apt-get install virtualbox-3.1, am primit o grămadă de pachete de dependență (inclusiv unele pentru interfața GUI). Prin urmare, este mai bine să descărcați pachetul deb. Descărcați și instalați:

Sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb

Poate că aici vor fi necesare și dependențe (unele biblioteci pentru analiza xml, în care sunt stocate configurații, dar sunt semnificativ mai puține decât în ​​primul caz). Dacă instalarea nu s-a finalizat din cauza dependențelor, puteți face pur și simplu

Sudo apt-get -f install

Acest lucru va instala dependențe și VirtualBox

BINE. VirtualBox instalat. Să începem să creăm mașini invitate.

Să creăm mașina în sine:

VBoxManage createvm --name ubuntu --ostype Ubuntu --register
(nume - nume mașină, ostype - tip sistem. O listă completă a tuturor tipurilor poate fi găsită cu comanda VBoxManage list ostypes)

Configurarea

VBoxManage modifyvm ubuntu --memory 512 --floppy disabled --audio none --nic1 bridged --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp pe --vrdpport 3390

Totul este clar aici. De asemenea, puteți specifica NAT ca tip de rețea (--nic1 nat). activați și rdp

Creați un disc HDD pentru o mașină virtuală:

VBoxManage createhd --filename /home/user/vbox/ubuntu.vdi --size 20000 --register

Adăugarea unui controler IDE la mașina noastră

VBoxManage storagectl ubuntu --name "IDE Controller" --add ide

Atașăm hdd-ul creat anterior la IDE0

VBoxManage storageattach ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

Pe IDE1 atașăm imaginea de instalare

VBoxManage storageattach ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

Spuneți mașinii să pornească de pe disc

VBoxManage modifyvm ubuntu --boot1 dvd

Să pornim mașina

Pentru a instala sistemul de bază, vom folosi un client rdp (eu am KDE, KRDC este inclus în pachetul standard). conectați-vă la mașina gazdă pe portul specificat în setări (--vrdpport 3390), instalați sistemul, faceți sudo apt-get install openssh-server . Acum puteți accesa mașina virtuală prin ssh

Oprirea mașinii virtuale

VBoxManage controlvm ubuntu acpipowerbutton
prin acpi

Sau mai aspru

VBoxManage controlvm ubuntu oprire

Noi spunem că pornește de pe hdd

VBoxManage modifyvm ubuntu --boot1 disc

De asemenea, puteți declipsa discul de instalare

VBoxManage storageattach ubuntu --storagectl "Controler IDE" --port 1 --dispozitiv 0 --mediu nici unul

Și începem din nou

Nohup VBoxHeadless --startvm ubuntu &

Mai multe comenzi utile:

VBoxManage listă runvms
vizualizați toate mașinile care rulează

VBoxManage showvminfo ubuntu
vizualizarea informațiilor despre o mașină virtuală

Astfel, pe o singură mașină cu un sistem instalat minim, puteți ridica mai multe virtuale pentru diverse scopuri și experimente

1.Creați o mașină virtuală numită windows_xp
VBoxManage createvm --name windows_xp --regist er
Mașina virtuală creată este fișier XML, care se află în directorul principal /root/VirtualBox\ VMs/windows_xp/windows_xp.vbox
2. În continuare trebuie să creați un disc de mașină virtuală
VBoxManage createhd --filename /date/VirtualBox/windows_xp.vdi --size 15000 --variant Fixe d
În mod implicit, discul este creat în folderul de acasă utilizator, am creat un disc windows_xp.vdi în directorul /date/VirtualBox/ cu o dimensiune de 15 gigaocteți; dimensiunea este fixă, adică nu crește dinamic.
3.Creați un controler de disc virtual
VBoxManage storagectl windows_xp --name "IDE Controller" --add ide --controller PIIX4
Folosind această comandă, se creează un controler IDE cu numele „Controler IDE”, tipul de controler este PIIX4.
4. Conectați-vă disc virtual la mașina virtuală:
VBoxManage storageattach windows_xp --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /date/VirtualBox/windows_xp.vdi

5.Conectează-te imagine virtuală Sistemul de operare pe care vrem să îl instalăm
VBoxManage storageattach windows_xp --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /date/public/winxp_pro_eng_sp3.iso

6. Setați dimensiunea RAM pentru mașina virtuală 512MB
vboxmanage modifyvm windows_xp --memory 512

7. Setați tipul de sistem VBoxManage modifyvm windows_xp --ostype WindowsX P
vezi toate tipurile posibile: VBoxManage listează ostipurile

8. Permite conectarea la consolă prin RDP
vboxmanage modifyvm windows_xp --vrde activat
Pentru a face mai convenabil gestionarea mașinilor virtuale, aveți nevoie de un set de suplimente care să includă USB 2.0 și un server RDP încorporat. Descărcați suplimente și instalați: wget http://dlc.sun.com.edgesuite.net/virtualbox/4.2.12/Oracle_VM_VirtualBox_Extension_Pack-4.2.12-84980.vbox-extpack

VBoxManage extpack instalează Oracle_VM_VirtualBox_Extension_Pack-4.2.12-84980.vbox-extpack

9. Lansați mașina virtuală
vboxheadless -s windows_xp sau în fundal:
VBoxManage startvm windows_xp --type headless
pentru a rula un sistem de operare invitat pe computerul gazdă cu care lucrați prin ssh, trebuie să utilizați cheia –type=headless:

10. Conectați-vă prin RDP ip_servera și instalați win_xp ca de obicei

11. Puteți opri mașina astfel: VBoxManage controlvm windows_xp poweroff

12.Montați discul VboxGuestAdditions
VBoxManage storageattach windows_xp --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /usr/share/virtualbox/VBoxGuestAdditions.iso

Pornim mașina și instalăm VboxGuestAdditions
13. Informații detaliate informații despre un anumit sistem de operare virtual pot fi obținute folosind comanda VBoxManage showvminfo windows_xp

14. Această comandă creează o interfață de rețea NIC cu punte
VBoxManage modifyvm windows_xp --nic1 bridged --bridgeadapter1 eth0

15. Dacă discul mașinii virtuale trebuie să fie clonat, acest lucru se face folosind utilitarul VBoxManage:
VBoxManage clonehd /path/from/copying/image1.vdi /path/where/copying/image2.vdi
După aceasta, totul se conectează minunat la noua mașină virtuală.

16.Creați un folder partajat cu serverul
vboxmanage sharedfolder adauga "windows_xp" --name share-name --hostpath /mnt
Conectați folderul partajat din windows_xp execute
\\vboxsvr\share-name