Execute um comando antes e depois do ubuntu apt upgrade & unattended-upgrades

3

Em um servidor LTS do Ubuntu 16.04.3 eu executo alguns monitores de processo, mas também executo o apt manualmente, bem como atualizações autônomas para atualizações de segurança.

Isso às vezes faz com que os monitores relatem e ajam em programas que foram interrompidos pelo apt durante o upgrade do apt.

Existe uma maneira de executar um comando quando atualizações automáticas / apt iniciam os upgrades (para parar os monitores) e novamente quando atualizações autônomas / apt são concluídas (para reiniciar os monitores)?

Eu encontrei APT::Update::Pre-Invoke e APT::Update::Post-Invoke hooks, mas a etapa update do apt não é o problema, e o próprio apt não parece ter nenhum upgrade anterior / posterior ganchos.

    
por simpleuser 28.10.2017 / 22:49

1 resposta

4

Existem três ganchos que você pode usar para isso:

  • DPkg::Pre-Invoke é executado uma vez, antes de todas as seqüências de manipulação de pacotes em uma invocação apt ;
  • DPkg::Pre-Install-Pkgs também é executado uma vez, antes das seqüências de manipulação do pacote, após o gancho Pre-Invoke e com uma lista de todos os pacotes que serão instalados;
  • DPkg::Post-Invoke é executado uma vez, após as seqüências de manipulação do pacote.

A documentação não é tão clara assim (leia man apt.conf embora, mas lendo o código-fonte suporta o acima. A especificação de ganchos também confirma isso (por exemplo, é assim que apt-listbugs funciona).

    
por 28.10.2017 / 23:03

Tags