Een bash-script maken voor het starten van VirtualBox VM's

Afbeelding: Jack Wallen

Er is een handige functie die wordt geleverd met VirtualBox waarmee u een snelkoppeling op het bureaublad voor virtuele machines kunt maken. Dit doet u echter niet veel goed als u VirtualBox uitvoert op een GUI-server. Als dat het geval is, wilt u niet altijd het commando geven om een ​​VM te starten telkens als dat nodig is. Wat doe je daarvoor? Als u Linux gebruikt om VirtualBox VM's te hosten, is het echt vrij eenvoudig - u maakt bash-scripts om het starten, stoppen en hervatten van die virtuele machines te beheren.

Ik ga je laten zien hoe je dat precies kunt doen. Ik neem aan dat VirtualBox al is geïnstalleerd, samen met alle virtuele machines die u nodig hebt. Dat gezegd hebbende, laten we kijken hoe dit wordt gedaan.

Een lijst van uw VM's

Het eerste dat u moet weten, is de naam van uw virtuele machines. Als dit een GUI was, zou je VirtualBox eenvoudig kunnen openen en ze in de lijst kunnen zien. Maar omdat de server geen GUI heeft, moet u een handige opdracht gebruiken om uw VM's weer te geven. Dat commando is:

 VBoxManage-lijst vms 

De uitvoer van de opdracht ( Afbeelding A ) toont u de naam en UID van elk van uw virtuele machines. U wilt de naam van uw VM.

Figuur A

Lijst van al uw VirtualBox VM's.


Het bash-script maken

Laten we zeggen dat ik een script wil maken om de VM "UbuntuSERVER Clone" te starten. Maak het bestand met de opdracht nano ubuntuserverclone.start . De inhoud van dat bestand zal zijn:

 #! / bin / bash VBoxManage startvm "UbuntuSERVER Clone" - type headless 

Bewaar en sluit dat bestand.

Voor elke taak moet u een ander bestand maken. U kunt een bestand ubuntuserverclone.stop maken met de volgende inhoud:

 #! / bin / bash VBoxManage controlvm "UbuntuSERVER Clone" poweroff - type headless 

Om diezelfde virtuele machine te pauzeren, maakt u een bestand met de naam ubuntuserverclone.pause met de volgende inhoud:

 #! / bin / bash VBoxManage controlvm "UbuntuSERVER Clone" pauze - type headless 

Om de gepauzeerde virtuele machine te hervatten, maakt u een bestand met de naam ubuntuserverclone.resume met de inhoud:

 #! / bin / bash VBoxManage controlvm "UbuntuSERVER Clone" CV - type headless 

Zorg ervoor dat u na het maken van elk bestand uitvoerbare rechten geeft met de opdracht:

 chmod u + x ubunserverclone.start 

Doe dat voor elk bestand dat je maakt en vervang elke keer de naam van het bestand, zodat je nieuwe bash-scripts de juiste actie uitvoeren.

Het script uitvoeren

U hebt twee opties: u kunt die scripts vanuit een bepaalde map uitvoeren, of u kunt ze naar een map in uw $ PATH kopiëren, zodat ze wereldwijd kunnen worden uitgevoerd. Als u ervoor kiest om ze niet globaal te laten draaien, opent u eenvoudig een terminal, gaat u naar de map waarin de scripts zich bevinden en geeft u de opdracht ./ubuntuserverclone.start .

Als u ervoor kiest om de globale route te volgen, kunt u de bestanden kopiëren met de opdracht sudo cp ubuntuserverclone * / usr / local / bin . Geef het vervolgens de juiste toestemming met het commando sudo chmod o + x /usr/local/bin/ubuntuserverclone.* . Nu kunt u elk script vanuit elke map uitvoeren door eenvoudig de opdracht ubuntuserverclone.start te geven (of .stop, .pause, .resume).

Eenvoudige bediening van uw headless VM's

En dat is alles om de besturing van uw virtuele virtuele machines zonder hoofd ongelooflijk eenvoudig te maken. Maak controlerende bash-scripts voor elk van uw VM's, zodat u ze kunt starten, stoppen, pauzeren en hervatten zonder telkens het volledige commando te hoeven geven.

Cloud en Everything as a Service-nieuwsbrief

Dit is uw favoriete bron voor het laatste nieuws over AWS, Microsoft Azure, Google Cloud Platform, XaaS, cloudbeveiliging en nog veel meer. Maandagen bezorgd

Schrijf je vandaag in

© Copyright 2020 | mobilegn.com