grub attend la saisie de l'user lors du démarrage en tant qu'invité dans virtualbox

J'ai plusieurs invités ubuntu dans un hôte de virtualbox Mac OS X. Quand je les démarre, environ la moitié du time, ils démarrent correctement et accèdent à leurs écrans de connection / démarrent tous leurs services. L'autre moitié du time, ils s'assoient pour m'attendre à choisir un operating system. C'est bien quand je suis assis devant eux, mais j'aimerais que les machines virtuelles démarrent automatiquement quand la machine démarre.

Il est à noter que le même problème ne semble pas se produire si je fais un redémarrage depuis l'OS invité.

Ce que j'ai essayé:

J'ai essayé de décommenter GRUB_HIDDEN_TIMEOUT et d'exécuter update-grub , cela amène le operating system à démarrer correctement plus souvent, mais ne résout pas le problème. Les amorcer sans aide ne les aide pas non plus.

Où ils sont coincés:

ce que je vois environ la moitié du temps

/etc/default/grub :

 # If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=2 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="" GRUB_CMDLINE_LINUX="" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu ensortinges #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start #GRUB_INIT_TUNE="480 440 1" 

Versions:

 Grub 1.99-21ubuntu3.9 Ubuntu Server LTS Virtualbox 4.2.10 

Pour développer la réponse de @ nick, c'est en effet la fonctionnalité d'échec de l'logging.

Cependant, plutôt que de modifier /etc/grub.d/00_header , vous pouvez append la ligne suivante à /etc/default/grub

 GRUB_RECORDFAIL_TIMEOUT=2 

(Ou si long que vous voulez que le timeout soit), puis exécutez sudo update-grub

Donc, il s'avère que c'est une caractéristique documentée de Grub . Si votre ordinateur s'arrête anormalement, il ne démarrera pas automatiquement dans un operating system. C'est pourquoi le problème ne s'est jamais produit lorsque j'ai redémarré depuis l'OS.

Comment désactiver

Juste au cas où ce lien serait mort:

Désactiver la fonctionnalité de sauvegarde de files de Grub2

Pour la plupart des gens, cette nouvelle fonctionnalité de Grub 2 est certainement une bonne chose. Mais pour ceux qui sont en proie à l'un des bugs ou qui voudraient le désactiver pour d'autres raisons:

Ouvrez le file /etc/grub.d/00_header via

 sudo nano /etc/grub.d/00_header 

Chercher

 if [ ${recordfail} = 1 ]; then set timeout=-1 else set timeout=${GRUB_TIMEOUT} fi 

Changez-le en

 set timeout=5 

Enregistrez le file et exécutez

 sudo update-grub 

Avez-vous essayé de modifier /boot/grub/menu.lst et de définir timeout sur 0?

Ce dont vous avez besoin est de mettre à zéro GRUB_TIMEOUT dans / etc / default / grub. Pour plus d'informations, lancez: info -f grub -n "Simple configuration"

 vi /etc/default/grub 

définir GRUB_TIMEOUT = 0

 sudo update-grub 

et maintenant redémarrez