Gnuty blog-ul caracteristici de utilizare VirtualBox în ubuntu

Atitudinea mea de a VirtualBox pe Ubuntu dublu. Prezența componentei non-free și faptul că este acum Oracle proprietate, deoarece acestea au recent, peste podtrudlis sale reputație spală-kopirastov mă face să mă îndoiesc de viitorul luminos al acestui produs. Pe de altă parte, alternativa de Qemu, sincer, mult în urmă: nu există nici o integrare cu desktop-ul, ca o clasă, și retezate în versiunea 0.12 kqemu, făcându-l nepotrivit pentru utilizarea pe mașinile mai vechi, care nu funcționează KVM.

Deci, ca o glumă: „aricii s-au plâns, injectat, dar a continuat să mănânce un cactus.“. Apoi, voi încerca să descrie experiența de modul de a face mai convenabil. Poate cineva va veni la îndemână.

Instalarea Linux-antete

În Ubuntu, puteți obține o situație în care versiunea instalată a Linux-antete nu este același lucru ca și versiunea instalată a linux-image. Ca rezultat, VirtualBox se oprește de lucru și blestemele lipsa vboxdrv modul.

În principiu, nu s-ar putea întâlni această problemă, am fugit personal în ea pe cont propriu „zaum“. Nu-mi amintesc incepand cu o versiune (în 10.04, această „facilitate“ a fost deja), Ubuntu persistent sugerează să utilizeze caracteristici de securitate încorporate în procesor. În primul rând, acest lucru se referă la posibilitatea de a interzice executarea de cod în unele zone ale memoriei (neexecutabilă memorie). În acest scop, el a propus pentru a înlocui kernel linux-image - * - generic implicit utilizat pe Linux-image - * - generic-PAE.

Înlocuirea nucleului în sine funcționează fără probleme, dar VirtualBox magic nu mai funcționează. Acest lucru se întâmplă pentru că VirtualBox aveți nevoie pentru a colecta dvs. de bază unitate vboxdrv. Acest lucru se ocupă cu pachetul dkms. care necesită versiunea corectă a linux-headers. În mod specific, ansamblul de module pentru linux-image - * - generic-PAE necesită linux-headers - * - generic-PAE. Din păcate, dependențele de pachete sunt înregistrate, astfel încât pachetele nu sunt instalate în mod automat (LP # 673349).

Cel mai simplu mod de a rezolva problema (pentru actualizări ulterioare vor fi plasate automat):

Lucrul cu discurile fizice

Capitolul manual de configurare avansată de depozitare descrie modul de a lucra cu discuri fizice într-o mașină virtuală VirtualBox. Pentru mine, această caracteristică face parte din categoria de esențiale: Experimentele cu incarcatorul si virtualizarea multi-boot, fără este aproape imposibil.

Comenzi pentru a adăuga un disc fizic și a alerga VirtualBox ca rezultat arată astfel:

Apropo, înainte de a începe VirtualBox inofensive asigura lipsa încărcate module KVM, în caz contrar porni mașina virtuală nu va funcționa.

Reducerea utilizarea procesorului

Dacă credeți că problema este rău. Simptomatic este că VirtualBox 100% sarcini unul dintre nuclee ale procesorului, chiar și atunci când OS oaspete prezinta doar 1-2% încărcare. Am prins această problemă în Ubuntu cu Windows XP ca sistem de operare oaspete.

Care este motivul pentru acest comportament, nu am înțeles. Zvonurile spun că în mod constant procesul de transfer de VirtualBox de la un procesor la altul. Dacă așa ar trebui să lucreze alte soluții, cum ar fi legarea la un anumit VM procesor / core via taskset. dar ei nu au lucrat. De ce? Cu toate acestea, nu am înțeles.

Configurarea tastaturii

În cele din urmă, este logic să acorde o atenție pentru a configura hotkeys. În general, un fleac, dar pe comoditate a afectat în mod semnificativ.

Primul lucru de făcut este înlocui cheia pentru ceva mai sănătos decât Ctrl dreapta. Mai multe nebunie să cred că valoarea greu în mod implicit, este prevăzut un conflict cu plavishami fierbinte în interiorul unei mașini de oaspeți.

Eu de obicei ton gazdă cheie = Lwin. Se poate face acest lucru din meniul: Fișier → Setări → Input.

Ei bine, totuși, să personalizați filtrul, care combinație de taste pentru a trece la mașina virtuală, și care nu sunt. (Să zicem, de exemplu, de ce transfer la comanda consola de oaspeți OS blocare (Win + L)? Pentru a introduce încă o dată parola?)

Fiecare ansamblu în nucleul Ubuntu are propria versiune a versiunii de antete. De exemplu, dacă aveți un linux-image-2.6.35-31-generic este necesar pentru acest kernel linux-headers-2.6.35-31-generic. Dacă aveți un linux-image-2.6.35-31-generic-PAE ceea ce ai nevoie linux-image-2.6.35-31-generic-PAE. coada coincidență după linux-- trebuie să fie corecte, deoarece depind de această cale, în cazul în care sunt instalate fișierele. Toate pachetele, cum ar fi Linux-headery-server, linux-headers, și așa mai departe - este un ciot, care trage versiunea cerută a anteturile, dacă nu ești norocos.

Prezența „extra“ antetele pachetelor, în măsura în care știu, nu afectează funcționarea sistemului, cu excepția faptului că locul îi aparține. Cu toate acestea, pentru asamblarea modulului prin dkms, aveți nevoie de antete care corespund exact la versiunea kernel-ului. Orice altă pentru că nu va funcționa, dacă nu luați un modul de a colecta arme, dar apoi veți avea nevoie de mai mult și tamburină.

Dacă punctul de instalare VirtualBox, nu sunt necesare opțiune pachet linux-antete a fost instalat, se va observa rapid. Mașinile virtuale nu sunt pornite.

Verificați modul kernel disponibilitatea cu comanda:

find / lib / module / `uname -r` -name 'vbox *'

În cazul în care echipa nu găsește fișierele pe care trebuie să instalați lipsă pachet linux-headers, și apoi efectuați un pachet de-VirtualBox dkms reconfigurare.

sudo dkpg-reconfigure VirtualBox-dkms

În timpul reconfigurare, modulele necesare sunt compilate și încărcate în kernel. Comanda anterioară (find) trebuie să găsească apoi un modul kernel fișierele de pe sistemul de fișiere.

Oare toate antetele dreapta c cozile nu trebuie să fie trase pe relațiile stabilite de meta pachetului de nucleu la instalarea sistemului?
Cum se poate întâmpla ca sistemul va fi o nepotrivire?

Teoretic și practic nu funcționează nifiga.

Iată un exemplu de la 11.10:

VirtualBox-dkms Depinde: dkms (> = 2.1.0.0)

dkms recomandă: linux-headers-686-PAE | linux-headers-amd64 | linux-headers-generice | linux-headers

linux-headers-3.0.0-14-generic-PAE Oferă: linux-headers

Este suficient pentru a instala oricare dintre pachetele linux-headers- * și dpkg va presupune că relația este îndeplinită. Dkms faptul că acesta nu colectează modulele necesare, aceasta nu este absolut de îngrijire.

Dacă îmi amintesc corect, bug-uri sootvestvtuyuschie au primit în timpul lui 10.04, ci pentru că problema există în 11.10 pentru a le corecta, aparent, nimeni nu.

Ar trebui să fie ceva de genul condiționale. Bănuiesc că se poate face prin adăugarea pe pachetul virtual pentru fiecare dintre opțiunile de kernel și prescrie dependențele dkms, ceva de genul: recomandă: (linux-image-PAE linux-headers-PAE) | (Linux-image-amd64 linux-headers-amd64). Dar toate acestea speculații. Pentru a verifica acest lucru va trebui să omoare o mulțime de timp. Strângeți dezvoltatorii de două pachete de Linux și dkms. Podzrevayu, care va avea o lungă perioadă de timp să-și petreacă toate chelie lor, astfel încât acestea să acorde o atenție la problema de cel puțin o anumită atenție. Apoi, ei spun că nu există nici o problemă, sau nu joacă, sau altceva va veni. Apoi, va fi necesar să se scrie un caz test care va demonstra problema pe un sistem proaspăt instalat. El, probabil, nu ar crede. Prin urmare, vă decideți să scrie un patch Cel puțin pentru tine și trimite-l la dezvoltatori. Patch-ul se va soluționa în coada de așteptare pentru fuziune. Un cuplu de ori, probabil, se va cere să-l convertească pentru a elimina unele neajunsuri, dar atunci există o nouă versiune si uita de patch-uri. În final, versiunea revizuită a pachetului se va soluționa în PPA dvs., de unde vei și sprijinul lor eliberarea de eliberare.

În acest moment, războiul cu morile de vânt în fața comunității Ubuntu au unele obosit, așa că am face cu ea acum nehochu. Poate mai târziu, atunci când se îndepărteze de sărbători. ;)

Și astfel, de asemenea, va lucra mai mult și o duzină de alte moduri. Cauza glitches le-am menționat la tine: dpkg sau apt să îndeplinească în mod corespunzător dependențe între pachete, sau în funcție de curbele, nu este pe deplin înțeles. Cum de a vindeca de mână este, de asemenea, cunoscut.

Eu, probabil, nu înțeleg scopul antrenamentului. Dacă doriți să rulați doar Dev este pentru timpul pe care le scrie, puteți avea ceva timp pentru a reinstala totul de la zero. În cazul unei defecțiuni după actualizare, corecție manuală durează 5-10 minute.