A questão
Como inicio esta VM Wiki na inicialização do servidor OSX?
Estou executando o OSX Server 10.6.8 e VirtualBox 4.1.8 r75467 e uma VM Debian Linux (chamada "wiki").
.
O que eu tentei até agora
Seguindo este artigo:http://mikkel.hoegh.org/blog/2010/12/23/run-virtualbox-boot-mac-os-x/, eu escrevi este plist e coloquei-o em/Library/LaunchDaemons/bar.foo.WikiVirtualBox.plist:
<plist version="1.0">
<dict>
<key>Label</key>
<string>bar.foo.WikiVirtualBox</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/VBoxHeadless</string>
<string>-s</string>
<string>wiki</string>
</array>
<key>RunAtLoad</key>
<true></true>
<key>UserName</key>
<string>root</string>
<key>WorkingDirectory</key>
<string>/var/root</string>
<key>StandardErrorPath</key>
<string>/var/log/bar.foo.WikiVirtualBox.stderr.log</string>
<key>StandardOutPath</key>
<string>/var/log/bar.foo.WikiVirtualBox.stdout.log</string>
</dict>
</plist>
e disse ao launchd para iniciá-lo:
sudo launchctl load -w /Library/LaunchDaemons/bar.foo.WikiVirtualBox.plist
.
O arquivo de log
Mas a VM não inicia. Uma olhada
tail -f /var/log/system.log
mostra:
sudo[1909]: administrator : TTY=ttys000 ; PWD=/Users/administrator ; USER=root ; COMMAND=/bin/launchctl load -w /Library/LaunchDaemons/bar.foo.WikiVirtualBox.plist
VBoxSVC[1914]: 3891612: (connectAndCheck) Untrusted apps are not allowed to connect to or launch Window Server before login.
VBoxSVC[1914]: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
com.apple.launchd[1] (bar.foo.WikiVirtualBox[1910]): Exited with exit code: 1
Quando eu faço login no servidor via ssh (nenhuma janela de login é aberta), posso executar:
/usr/bin/VBoxHeadless -s wiki
e funciona. Então não entendo o erro acima.
Responder1
Acho que as VMs são criadas pelo usuário normal e não pelo root.
Tente configurar lunchd
para iniciar o comando com seus privilégios normais de usuário.
Responder2
Outra ideia é fazer isso:
Enquanto você tiver o Virtualbox no dock, clique com o botão direito nele, vá em Opções e clique em "Abrir na inicialização". Claro, isso não iniciará a máquina virtual real automaticamente, mas iniciará o Virtualbox.