Contacte

Virtualbox este consolă. Rularea unei mașini virtuale în VirtualBox fără GUI. Instalare și componente principale


Autor: Ken Hess
Data publicării: 18 ianuarie 2010
Traducere: N. Romodanov
Data transferului: februarie 2010

Este posibil ca utilizatorii obișnuiți de VirtualBox să nu fie conștienți de puterea extraordinară care se află în interfața liniei de comandă.

De obicei, oamenii se întreabă „De ce să folosiți linia de comandă atunci când aveți o interfață grafică destul de bună?” Răspunsul este puterea extraordinară a liniei de comandă. O generație întreagă a existat din 1995 utilizatorii de computere care cred că un computer este o colecție de ferestre și grafică, dar în realitate acest lucru este foarte departe de adevăr. De ce, 1995, întrebi? Introducerea Windows 95 în 1995 a inaugurat o nouă eră de calcul - era interfețelor grafice. La scurt timp după acel august fatidic, FVWM95 a fost lansat, răspuns la Linux Interfața Windows 95 Explorer. Mi se pare că în acele vremuri bune, linia de comandă a dispărut pentru totdeauna. Nimeni nu mai voia să folosească DOS și nu mai era frică de Linux. Dar linia de comandă este încă vie și bine în mediul Linux. Este încă destul de vie pe Windows. Și acum, când Mac-urile sunt bazate pe Unix, au și multe care nu necesită o interfață grafică.

S-ar putea să vă surprindă că, sub interfața grafică destul de bună a VirtuaBox, cu grafica sa strălucitoare, pagina de setări clară și cantitate mare liste derulante, lumea ocultă a liniei de comandă pândea. Adevărata putere a acestei lumi întunecate va fi dezvăluită numai celor care îndrăznesc să intre în aceste catacombe mucegăite. Odată ce obțineți un control pe linia de comandă VirtualBox, ați putea decide că interfața grafică este puțin mai mult decât o draperie frumoasă, concepută pentru cei care altfel ar ignora doar dreptunghiul negru plictisitor al unei aplicații din lumea reală.

Puterea liniei de comandă

Dreptunghiul negru despre care vorbeam este fereastra terminalului. Linie de comanda vă permite să profitați de puterea maximă a executării automate a comenzilor. Singura metodă de automatizare pe care o cunosc pe sistemele * nix este de a folosi scripturi scrise în Perl, scripturi shell sau scripturi în alte limbi. Și demonul de planificare a sistemului (cron) vă va ajuta să rulați scriptul la momentul potrivit. Aceasta este puterea liniei de comandă care, datorită abilității pornire automată ceea ce impune administratorilor de sistem să poată scrie și scripturi este bagajul lor de calificare. În fiecare post vacant care necesită Administrator de sistem, se va indica faptul că solicitantul trebuie să fie capabil să scrie scripturi în cel puțin una dintre limbile interpretate enumerate în postul vacant.

În ceea ce privește virtualizarea, linia de comandă vă va permite să creați rapid discuri virtuale, să adăugați o nouă interfață de rețea, să porniți mașini virtuale și să creați mașini virtuale noi, toate fără a utiliza o interfață grafică. Execuția automată scriptabilă vă va permite, de asemenea, să programați mașinile virtuale pentru a porni și opri fără intervenția dvs. directă. Și, dacă sunteți un expert în scripturi foarte interesant, puteți scrie un script care, cu ajutorul solicitărilor, vă va ajuta să creați o mașină virtuală, să o porniți sau să o instalați și să o modificați cu cea mai mică intervenție din partea dvs. Dacă nu vă place să faceți totul manual, veți face o listă de mașini virtuale care sunt utilizate în mod constant, apoi configurați scripturi (șabloane) pentru fiecare tip de mașini virtuale utilizate și, dacă este necesar, creați o mașină virtuală în câteva secunde.

Să ne uităm la simplu și elegant funcționalitate linie de comandă în VirtualBox.

Instalare și componente principale

Din link-ul VirtualBox Linux Downloads, descărcați distribuția binară pentru sistemul dvs. Dacă doriți, puteți descărca sursă... Pentru opțiunea pe care am ales-o (pentru RHEL5 / CentOS5 în format rpm), au fost create următoarele directoare:

  • Pentru binare - / usr / lib / virtualbox cu linkuri din / usr / bin
  • Pentru biblioteci - / usr / lib / virtualbox
  • Pentru coduri sursă - / usr / share / virtualbox
  • Pentru componentele invitate (ISO) - / usr / share / virtualbox

Dacă distribuția dvs. nu are ultima versiune VirtualBox (versiunea 3.1.2 în momentul scrierii acestui articol), apoi utilizați unul dintre pachetele pe care le puteți descărca sau descărcați codul sursă.

Crearea și configurarea unei mașini virtuale

Cea mai grea parte a utilizării liniei de comandă este să știi de unde să începi. ÎN interfață grafică trebuie să utilizați butonul Nou. Linia de comandă este puțin mai dificilă pentru a-i dezvălui secretele. Pentru a crea și configura o nouă mașină virtuală, trebuie să deschideți o fereastră de terminal sau să utilizați o sesiune ssh pentru a accesa sistemul Linux pe care este instalat VirtualBox și să rulați următoarea comandă:

$ / usr / bin / VBoxManage createvm --name Debian5 –register

Această comandă creează o nouă mașină virtuală numită Debian5 și se înregistrează la VirtualBox. Mașina virtuală creată este Fișier XML care se află în directorul principal ~ / .VirtualBox / Machines / Debian5 / Debian5.xml.

Noi creăm disc virtual pentru tine mașină virtuală:

$ / usr / bin / VBoxManage createhd --filename Debian5.vdi --size 4000 --variant Fixed

Ați creat un disc virtual de 4 GB (4000 MB) numit Debian5.vdi; dimensiunea este fixă, adică nu crește dinamic.

Discul virtual este creat ca fișier ~ / .VirtualBox / HardDisks / Debian.vdi

Creați un controler dispozitive disc la care veți conecta discul virtual și dispozitivul CD / DVD virtual

$ / usr / bin / VBoxManage storeagectl Debian5 --name "IDE Controller" --add ide --controller PIIX4

Această comandă creează un controler IDE numit „Controler IDE” cu un tip de controler PIIX4.

Acum să conectăm discul virtual la mașina dvs. virtuală:

$ / usr / bin / VBoxManage storeageattach Debian5 --storagectl "IDE Controller" --port 0 --device 0 --tyd hdd --median Debian5.vdi

Conectați Imagine ISO acea sistem de operare doriți să instalați:

$ / usr / bin / VBoxManage storeageattach Debian5 --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /ISO/debian-40r3-i386-netinst.iso

Configurarea rețelei:

$ / usr / bin / VBoxManage modificavm Debian5 --nic1 bridged --cableconnected1 on --bridgeadapter1 eth0

Această comandă creează un NIC bridge: cablul este conectat la pornire Sisteme Linux, adaptorul este eth0.

Pornim mașina virtuală:

$ / usr / bin / VBoxManage startvm Debian5

Dacă totul merge așa cum a fost planificat, veți vedea următorul mesaj și apoi veți vedea o fereastră de mașină virtuală gata de instalare:

Se așteaptă deschiderea sesiunii la distanță ... Sesiunea la distanță a fost deschisă cu succes.

Puteți vedea că crearea și configurarea unei mașini virtuale pe linia de comandă vă eliberează de clicuri nesfârșite de mouse și se extinde intreaga lume noi capacități pentru automatizarea mașinilor virtuale. Și nu ne-am adâncit aici, dar sper că cele de mai sus îți vor stârni curiozitatea și te vor încuraja să stăpânești puterea enormă pe care o are linia de comandă.

Dacă ți-a plăcut articolul, distribuie-l prietenilor tăi:

1. Creați o mașină virtuală numită windows_xp
VBoxManage createvm --name windows_xp --regist er
Mașina virtuală creată este un fișier XML situat în directorul principal / root / VirtualBox \ VMs / windows_xp / windows_xp.vbox
2. Apoi, 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 start al utilizatorului, am creat un disc windows_xp.vdi în directorul / data / VirtualBox / cu o dimensiune de 15 gigabytes; dimensiunea este fixă, adică nu crește dinamic.
3 creați un controler discuri virtuale
VBoxManage storeagectl windows_xp --name "IDE Controller" --add ide --controller PIIX4
Această comandă creează un controler IDE numit „Controler IDE” cu un tip de controler PIIX4.
4. Conectați discul virtual la mașina virtuală:
VBoxManage stochează atașarea windows_xp --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /date/VirtualBox/windows_xp.vdi

5. Conectați-vă imagine virtuală sistemul de operare pe care dorim să îl instalăm
Magazinul VBoxManage atașați windows_xp --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /date/public/winxp_pro_eng_sp3.iso

6. Setați dimensiunea memorie cu acces aleator pentru mașina virtuală de 512 MB
vboxmanage modifica vm windows_xp --memory 512

7. Setați tipul de sistem VBoxManage modifyvm windows_xp --ostype WindowsX P
vezi toate ostype-urile posibile: lista VBoxManage ostypes

8. Permiteți conectarea la consolă prin protocolul RDP
vboxmanage modifyvm windows_xp --vrde activat
Pentru a face mai comodă gestionarea mașinilor virtuale, aveți nevoie de un set de programe de completare care să includă USB 2.0 și un server RDP încorporat. Descărcați programe de completare ș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. Porniți mașina virtuală
vboxheadless -s windows_xp sau în fundal:
VBoxManage startvm windows_xp - tip fără cap
pentru a porni sistemul de operare invitat pe mașina gazdă cu care lucrați prin ssh, trebuie să utilizați comutatorul –type = fără cap:

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

11. Puteți opri aparatul utilizând controlul VBoxManage controlvm windows_xp poweroff

12. Montați discul VboxGuestAdditions
VBoxManage stochează atașarea 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. Informatii detaliate despre un anumit sistem de operare virtual se poate obține cu comanda VBoxManage showvminfo windows_xp

14. Această comandă creează un NIC bridge
VBoxManage modificavm windows_xp --nic1 bridged --bridgeadapter1 eth0

15. Dacă discul mașinii virtuale trebuie clonat, atunci acest lucru se face folosind utilitarul VBoxManage:
VBoxManage clonehd /path/from/copy/image1.vdi /path/to/copy/image2.vdi
După aceea, totul se conectează perfect la noua mașină virtuală.

16. Creați un folder partajat cu serverul
vboxmanage sharedfolder adăugați "windows_xp" --name share-name --hostpath / mnt
Conectați folderul partajat de la executarea windows_xp
\\ vboxsvr \ share-name

Uneori devine necesar să rulați o mașină virtuală pe o gazdă fără xx. Vă voi spune cum să faceți acest lucru, având acces la sistemul gazdă numai prin ssh + rdp (Remote Desktop Protocol). procesul pe care îl voi descrie pentru OC Ubuntu 9.10 ca gazdă.

Să începem prin instalarea 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 din dependențe (inclusiv unele pentru interfața GUI). Prin urmare, este mai bine să descărcați pachetul deb. Descărcați, instalați:

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

Poate că aici sunt necesare dependențe (un fel de biblioteci pentru analiza xml, în care sunt stocate configuri, dar sunt mult mai puține decât în ​​primul caz). Dacă instalarea eșuează din cauza dependențelor, puteți face pur și simplu

Sudo apt-get -f install

Aceasta va instala dependențele și VirtualBox

O.K. VirtualBox a fost livrat. Să începem să creăm mașini invitate.

Creăm mașina în sine:

VBoxManage createvm --name ubuntu --ostype Ubuntu --register
(numele este numele mașinii, ostype este tipul de sistem. lista plina toate tipurile pot fi găsite cu comanda VBoxManage list ostypes)

Configurarea

VBoxManage modifica vm ubuntu --memory 512 --floppy dezactivat - audio none --nic1 bridge --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp pe --vrdpport 3390

Totul este clar aici. NAT poate fi specificat și ca tip de rețea (--nic1 nat). activați și rdp

Noi creăm disc HDD pentru o mașină virtuală:

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

Adăugarea unui controler IDE la aparatul nostru

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

Ne agățăm de HDD-ul creat anterior pe IDE0

VBoxManage stochează atașa ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

Pe IDE1, atașăm imaginea de instalare

VBoxManage stochează atașarea ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

Spunând mașinii să pornească de pe disc

VBoxManage modificavm ubuntu --boot1 dvd

Pornim mașina

Pentru a livra sistemul de bază Să folosim clientul rdp (am KDE, livrarea standard include KRDC). conectați-vă la mașina gazdă la portul specificat în setări (--vrdpport 3390), instalați sistemul, faceți sudo apt-get install openssh-server. acum mașina virtuală poate fi accesată prin ssh

Opriți mașina virtuală

VBoxManage control vb ubuntu acpipowerbutton
prin acpi

Sau mai greu

VBoxManage control vm ubuntu poweroff

Vorbim încărcat cu hdd

VBoxManage modificavm ubuntu --boot1 disc

De asemenea, puteți deconecta discul de instalare

VBoxManage stochează atașează ubuntu --storagectl "IDE Controller" --port 1 --device 0 --medium none

Și fugi din nou

Nohup VBoxHeadless --startvm ubuntu &

Comenzi mai utile:

Lista VBoxManage rulează vms
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 minimum sistemul instalat puteți crește mai multe virtuale pentru diferite scopuri și experimente

Uneori devine necesar să rulați o mașină virtuală pe o gazdă fără xx. Vă voi spune cum să faceți acest lucru, având acces la sistemul gazdă numai prin ssh + rdp (Remote Desktop Protocol). procesul pe care îl voi descrie pentru OC Ubuntu 9.10 ca gazdă.

Să începem prin instalarea 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 din dependențe (inclusiv unele pentru interfața GUI). Prin urmare, este mai bine să descărcați pachetul deb. Descărcați, instalați:

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

Poate că aici sunt necesare dependențe (un fel de biblioteci pentru analiza xml, în care sunt stocate configuri, dar sunt mult mai puține decât în ​​primul caz). Dacă instalarea eșuează din cauza dependențelor, puteți face pur și simplu

Sudo apt-get -f install

Aceasta va instala dependențele și VirtualBox

O.K. VirtualBox a fost livrat. Să începem să creăm mașini invitate.

Creăm mașina în sine:

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

Configurarea

VBoxManage modifica vm ubuntu --memory 512 --floppy dezactivat - audio none --nic1 bridge --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp pe --vrdpport 3390

Totul este clar aici. NAT poate fi specificat și ca tip de rețea (--nic1 nat). activați și rdp

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

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

Adăugarea unui controler IDE la aparatul nostru

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

Ne agățăm de HDD-ul creat anterior pe IDE0

VBoxManage stochează atașa ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

Pe IDE1, atașăm imaginea de instalare

VBoxManage stochează atașarea ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

Spunând mașinii să pornească de pe disc

VBoxManage modificavm ubuntu --boot1 dvd

Pornim mașina

Pentru a instala sistemul de bază, vom folosi clientul rdp (am KDE, livrarea standard include KRDC). conectați-vă la mașina gazdă la portul specificat în setări (--vrdpport 3390), instalați sistemul, faceți sudo apt-get install openssh-server. acum mașina virtuală poate fi accesată prin ssh

Opriți mașina virtuală

VBoxManage control vb ubuntu acpipowerbutton
prin acpi

Sau mai greu

VBoxManage control vm ubuntu poweroff

Vorbim încărcat cu hdd

VBoxManage modificavm ubuntu --boot1 disc

De asemenea, puteți deconecta discul de instalare

VBoxManage stochează atașează ubuntu --storagectl "IDE Controller" --port 1 --device 0 --medium none

Și fugi din nou

Nohup VBoxHeadless --startvm ubuntu &

Comenzi mai utile:

Lista VBoxManage rulează vms
vizualizați toate mașinile care rulează

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

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



Ți-a plăcut articolul? Împărtășește-l