A execução do binário provavelmente está sendo bloqueada pelo SELinux. Você pode confirmar isso nos logs de diário ou talvez nos logs de auditoria (em /var/log/audit/audit.log
) procurando por erros "avc".
Para resolver esse problema, recomendo que você hospede esse script em um diretório em que geralmente há scripts e binários, como /usr/local/bin
, em vez de estar no diretório inicial do usuário raiz.
Depois de mover este script, execute restorecon
para obtê-lo no tipo adequado de SELinux (que deve ser system_u:object_r:bin_t:s0
ou similar.)
Então:
mv /root/module-signing/sign-vbox-modules.sh /usr/local/bin/
restorecon /usr/local/bin/sign-vbox-modules.sh
Edite seu arquivo de serviço systemd para atualizar o caminho.
E se você quiser inspecionar que possui um tipo SELinux apropriado:
ls -lZ /usr/local/bin/sign-vbox-modules.sh