Acredito que você pode usar o /etc/rc.local para um script de inicialização raiz.
Primeiro, copie todos os comandos em um arquivo de texto e, em seguida, anexe esta linha no topo do arquivo:
#!/bin/bash
salve-o em algum lugar, talvez o diretório de sua casa. (/home/user/battery-script.sh)
Em seguida, torne-o executável, no terminal:
$ chmod +x /home/user/battery-script.sh
Agora no terminal:
$ gksudo gedit /etc/rc.local
Agora, antes da linha exit 0
, escreva o caminho para o seu script. (/home/user/battery-script.sh)
Certifique-se de que exit 0
é depois de todo o resto, senão ele sairá antes de executar os comandos.
Agora, apenas para ter certeza de quando o script é executado, você provavelmente desejará adicionar um comando xmessage para que uma mensagem seja exibida quando for executada.
xmessage -center "Battery script run in /etc/rc.local"
verifique se está antes do exit 0
.
Agora, reinicie para testar para garantir que ele seja executado na inicialização e, em seguida, você poderá remover a linha xmessage se ela for satisfatória.
Se isso não funcionar por algum motivo, você pode voltar ao gerenciador de início automático do GNOME. Isso envolve a edição do arquivo sudoers para permitir acesso root ao seu script sem uma senha. Vamos editar as permissões e propriedade do arquivo para não criar uma falha de segurança.
Primeiro, mova o script inteiro para a pasta / bin /:
$ sudo mv battery-script.sh /bin/
defina a propriedade de raiz e as permissões que impedem que um usuário comum insira código malicioso para ser executado como root:
$ sudo chown root /bin/battery-script.sh
$ sudo chgrp root /bin/battery-script.sh
$ sudo chmod 555 /bin/battery-script.sh
Agora, é hora de editar o arquivo sudoers:
$ gksudo gedit /etc/sudoers
Vá para o final e adicione essa linha. Substitua $ USER pelo seu nome de usuário
$USER ALL = NOPASSWD:/bin/battery-script.sh
Agora você pode executar o script sem uma senha ao usar o sudo.
Em seguida, abra Aplicativos de inicialização, clique em adicionar. Coloque qualquer coisa sob o nome, e sob o comando colocar:
sudo /bin/battery-script.sh
É isso! Seu script será executado como root quando você inicializar, você pode adicionar uma linha no arquivo battery-script.sh echo > /home/user/it_works.txt
(substitua por username) e esse arquivo será criado na próxima inicialização para que você possa ter certeza de que está funcionando, ou como mencionado anteriormente, você pode usar o xmessage.