Título do tutorial
Tecla Upgrade Total sem Senha
Autor
Shaba Piffer, versão 25.06.04
Resumo
Atualização de todo o sistema com o acionamento de uma única tecla do teclado e sem a necessidade de digitar a senha do usuário.
Sistema utilizado
- Ubuntu Like
- Gnome
- Notebook Thinkpad
Esse tutorial pode ser facilmente adaptado para qualquer outro Linux, Desktop, notebook ou máquina com os seus devidos ajustes.
Procedimentos
- Cries o seguinte script abaixo e salve-o em algum lugar da tua
/home/seu_usuario/
com o nome que quiseres. No caso, utilizarei o nomeupgrade
e o arquivo estará localizado em/home/seu_usuario/upgrade
:
#!/bin/bash
echo "Updating all apt, snap and flatpak packages..."
apt update
apt upgrade -y
apt autoremove -y
apt autoclean -y
snap refresh
flatpak upgrade -y
- Torne o script executável:
$chmod +x /home/seu_usuario/upgrade
- Mude as permissões do arquivo para que só tu e o root possam acessá-lo (para melhorar a segurança):
$chmod 700 /home/seu_usuario/upgrade
- Edite o arquivo
sudoers
com segurança:
$sudo visudo
- Adicione a seguinte linha ao final do arquivo
sudoers
que será aberto com o comando$sudo visudo
:
#Upgrade Total
seu_usuario ALL=(ALL) NOPASSWD: /home/seu_usuario/upgrade
Isso fará com que esse arquivo específico seja executado sem a necessidade de digitar a senha do usuário. Há quem diga que isso possa gerar uma brecha na segurança do sistema. Assumindo os riscos, para amenizar a situação, tu podes deixar o arquivo upgrade
em algum lugar menos inseguro (mais escondido) e que teu sistema (no caso o teu usuário) seja acessado apenas por ti. Utilizes essa solução por tua conta e risco.
Tu também podes utilizar a mesma solução sem incluir o comando (script) no arquivo sudoers
. Isso fará com que o sistema solicite a senha toda vez que o arquivo for executado. Neste caso, é importante trocar a terceira linha do script para sudo apt update
(só é necessário incluir o sudo
apenas uma vez, pois os comandos seguintes já considerarão o sudo
anterior).
- Verifiques se o script está funcionando sem a necessidade de digitar a senha:
$sudo /home/seu_usuario/upgrade
Importante: É necessário executar o comando exatamente como descrito. O comando $./upgrade
quando executado em /home/seu_usuario/
solicitará a senha.
- Vá em
Gnome Settings > Keyboard > View and Customize Shortcuts > Custom Shortcuts
. Cliques no botão"+"
. No campoName
podes escreverUpgrade
, no campoCommand
incluas o comandognome-terminal -- bash -c "sudo /home/seu_usuario/upgrade"
(tem que incluir as aspas duplas " " no comando sudo). Cliques no botãoSet Shortcut...
. Será aberta uma pequena janela que aguardarás que tu pressiones alguma tecla. Toda vez que essa tecla for pressionada, ela acionará o comando indicado no campoCommand
, ou seja, executará o script viagnome-terminal
sem pedir a senha, pois isso foi configurado anteriormente no arquivosudoers
(passo 4 e 5). Neste caso, ognome-terminal
será aberto para executar o script e no final do processo (atualização de todos os pacotes) será fechado automaticamente. Caso queiras que ognome-terminal
continue aberto após a execução do script (isso pode ser útil para verificar quais pacotes foram atualizados), basta utilizar o comandognome-terminal -- bash -c "sudo /home/seu_usuario/upgrade; exec bash"
no lugar do comando anterior.
Pronto. Agora tu podes atualizar todo o sistema com o acionamento de uma única tecla do teclado e sem a necessidade de digitar a senha do usuário.
No meu caso, utilizo um Thinkpad em que as teclas F9
, F10
, F11
e F12
não estão associadas a algum função e que estão disponíveis para uso no Linux. Com isso, configurei a tecla F9
para executar o nautilus
, a tecla F10
para executar o script upgrade
, a tecla F11
para acionar o gnome-system-monitor
e a tecla F12
para acionar a função Fullscreen
na janela ativa em que eu estiver utilizando (procures por Toggle fullscreen mode
na janela Keyboard Shortcuts
).
Espero que esse pequeno tutorial seja útil para ti. Qualquer sugestão de melhoria é bem vinda.