grub2-reboot sem root

grub2-reboot sem root

Eu uso o seguinte script (baseado no códigoaqui) para reiniciar o Windows, para que eu possa parar de me culpar toda vez que começo a sonhar acordado e perco o menu de inicialização.

#!/bin/bash
ENTRY=$( grep Windows /boot/grub2/grub.cfg | head -n 1 | cut -d"'" -f2 )
echo Rebooting to \"$ENTRY\"
sudo grub2-reboot "$ENTRY" && reboot

No entanto, preciso sudoe devo digitar uma senha ou recebo o seguinte:

/usr/bin/grub2-editenv: error: cannot open ‘/boot/grub2/grubenv’: Permission denied.

É um link simbólico /boot/grub2/grubenv -> /boot/efi/EFI/fedora/grubenve de propriedade de root.

O comando rebootfunciona bem como um usuário normal no Fedora 23. Como posso fazer grub2-rebootfuncionar também, mas de forma segura?

Eu estava pensando em algo parecido com um pedaço de pau grub2-editenv, mas isso não parece bom. Um pedaço pegajoso no meu script não funcionará (uma coisa boa). Alterar as permissões no arquivo /boot/efi/EFI/fedora/grubenvfuncionaria, mas poderia abrir mais possibilidades do que o pretendido.

Responder1

Vejo duas possibilidades:

  • Use sudo, mas configure-o para que este comando não peça senha (usando NOPASSWDa opção)

  • Defina root como o proprietário do script e configure o script:chown root.root script ; chmod u+s script

informação relacionada