Ho molte macchine Virtual Box nella mia Ubuntu12.04, ogni volta che spengo o riavvio devo avviarle una per una.
Voglio un aiuto nella scrittura di uno script per l'avvio automatico delle macchine VBox all'avvio.
Migliore risposta
Puoi utilizzare il servizio di avvio automatico di VirtualBox. Un buon tutorial che descrive come farlo è pubblicato sul blog "Life of a Geek Admin".
I seguenti passaggi sono adattati dal post del blog collegato:
-
Per prima cosa devi creare il file
/etc/default/virtualbox
e aggiungi alcune variabili.VBOXAUTOSTART_DB che contiene un percorso assoluto alla directory del database di avvio automatico e
VBOXAUTOSTART_CONFIG che contiene la posizione delle impostazioni di configurazione di avvio automatico. Il file dovrebbe essere simile a questo:# virtualbox defaults file VBOXAUTOSTART_DB=/etc/vbox VBOXAUTOSTART_CONFIG=/etc/vbox/vbox.cfg
-
Ora dobbiamo creare il
/etc/vbox/vbox.cfg
file e aggiungi# Default policy is to deny starting a VM, the other option is "allow". default_policy = deny # Create an entry for each user allowed to run autostart myuserid = { allow = true }
Nota: Se il nome del file
vbox.cfg
non funziona sopra, prova a nominarloautostart.cfg
.Se sei l'unico utente puoi semplicemente aggiungere la riga
default_policy = allow
nelvbox.cfg
file. -
Imposta le autorizzazioni sulla directory per il gruppo vboxuser e assicurati che gli utenti possano scrivere nella directory così come sticky bit.
sudo chgrp vboxusers /etc/vbox sudo chmod 1775 /etc/vbox
-
Aggiungi ciascuno degli utenti a
vboxusers
gruppo.sudo usermod -a -G vboxusers USERNAME
(sostituisci
USERNAME
con il nome utente)
NOTA :Se hai modificato le autorizzazioni di gruppo per l'utente corrente, disconnettiti e riconnettiti per aggiornare le autorizzazioni. (credito @kR105)
-
Ogni utente che desidera abilitare l'avvio automatico per singole macchine deve impostare il percorso della directory del database di avvio automatico con
VBoxManage setproperty autostartdbpath /etc/vbox
e abilita l'avvio automatico per una singola macchina virtuale con
VBoxManage modifyvm <uuid|vmname> --autostart-enabled on
Questo creerà un
myuserid.start
file in/etc/vbox
directory -
Ora riavvia il servizio vboxautostart per leggere le modifiche.
sudo service vboxautostart-service restart
-
Riavvia il sistema e la tua VM dovrebbe avviarsi