No meu sistema, criei o seguinte alias do bash:
alias updt='apt update -y && apt upgrade -y && apt autoremove -y'
Eu executo isso quase toda vez que uso o sistema. Minha pergunta é:
É possível fazer o sistema executar este comando sempre que eu desligar o computador?
Como bônus: posso fazer isso como fizemos no Windows para fazer com que o sistema seja atualizado automaticamente quando uso a opção de desligamento diretamente no canto superior direito do ambiente de área de trabalho?
Responder1
Sim. É um cenário.
Aptojáfaz atualizações e atualizações do apt em segundo plano ...
/lib/systemd/system/apt-daily.timer // update
/lib/systemd/system/apt-daily-upgrade.timer // upgrade
... tudo o que você realmente precisa fazer é ficar fora do caminho e ajustar as configurações conforme mostrado abaixo.
Edite o arquivo de configuração
/etc/apt/apt.conf.d/50unattended-upgrades
:
Comando de exemplo:$ sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
Etapa 1: edite suas fontes. As configurações padrão incluem apenas o repositório -security. Você pode atualizar isso para incluir todas as suas fontes. A melhor prática é adicionar fontes estáveis e confiáveis como -updates e -security (essas duas devem ser a grande maioria de suas atualizações!) Isso NÃO é recomendado para -proposed ou outras fontes de teste/instáveis.
// Automatically upgrade packages from these (origin:archive) pairs
//
// Note that in Ubuntu security updates may pull in new dependencies
// from non-security sources (e.g. chromium). By allowing the release
// pocket these get automatically pulled in.
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
// Extended Security Maintenance; does not necessarily exist for
// every release and this system may not have it installed, but if
// available, the policy for updates is such that unattended-upgrades
// should also install from here by default.
"${distro_id}ESM:${distro_codename}";
"${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
Etapa 2: ativar a remoção automática. Basta descomentar a linha final:
// Do automatic removal of unused packages after the upgrade
// (equivalent to apt-get autoremove)
//Unattended-Upgrade::Remove-Unused-Dependencies "true";
Etapa 3: faça atualizações no desligamentoem vez de em segundo plano. Basta descomentar a linha final:
// Install all unattended-upgrades when the machine is shutting down
// instead of doing it in the background while the machine is running
// This will (obviously) make shutdown slower
//Unattended-Upgrade::InstallOnShutdown "true";