Acho que os módulos do vbox não estão disponíveis no momento da execução. Por que você não cria um serviço? Consulte a documentação correspondente do seu sistema init.
Por isso, estou tentando executar um script como um usuário específico @boot.
Eu já vi o @reboot em conjunto com o crontab.
Eu descobri que o @reboot é suportado tanto pelo usuário quanto pelo root via
@reboot echo "hello" > /root/hello.sh
e o mesmo para um usuário comum e o arquivo hello.sh apareceu após a reinicialização
Mas se eu tentar (tentei ambos com crontab de raízes e usuários crontab)
@reboot ~/.reboot.sh
ou
@reboot /home/user/.reboot.sh
ou
@reboot user /home/user/.reboot.sh
Nada!
Além disso, o script funciona via
~/.reboot.sh
e
/home/user/.reboot.sh
no ambiente CLI. Novamente, isso não pode ser executado como root, precisa ser executado pelo usuário!
[Atualização]
O comando específico que eu quero executar é
VBoxHeadless --startvm VMNAME
E via crontab isso funciona
*/1 * * * * VBoxHeadless --startvm VMNAME
Mas isso não acontece?!
@reboot VBoxHeadless --startvm VMNAME
[update2]
Isso funciona
@reboot /home/user/.reboot.sh
quando o arquivo .reboot.sh contém
echo "hello" > /home/user/hello.sh
Portanto, este é um problema com o comando VboxManage especificamente. Talvez fique na inicialização? Quaisquer pensamentos são apreciados, mas eu acho que preciso olhar especificamente para o comando VboxManage, embora eu tenha masterizado executando o comando @ boot como um usuário hoje! Achei que este comando não funcionou!
Acho que os módulos do vbox não estão disponíveis no momento da execução. Por que você não cria um serviço? Consulte a documentação correspondente do seu sistema init.