Como obter o número de atualizações disponíveis em um sistema Ubuntu como um usuário normal


8

Eu preciso disso para um script de monitoramento simples que eu não quero executar como root ...


1
há sempre sudo NOPASSWD restrição de comando
Michael Lowman

Obrigado a todos pelas muitas respostas. Depois de tentar algumas de suas sugestões e pesquisar um pouco mais, parece-me que a solução que exige menos dependências e é a mais segura é simplesmente analisar o / etc / motd - no entanto, isso não me parece muito elegante :)
Joe Kandaba 7/07

Respostas:


10

O número de atualizações de segurança pendentes pode ser encontrado usando:

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 1

e o número de atualizações regulares pendentes pode ser encontrado usando:

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 2

/superuser/199869/check-number-of-pending-security-updates-in-ubuntu


muito mais elegante do que a minha :)
anthonysomerset

Obrigado pela resposta, no entanto, como apontado pelo jldugger, é um servidor (sem cabeça), portanto, instalar> 240 pacotes, incluindo muitas coisas da GUI, apenas para obter o número de atualizações do apt realmente não é uma opção.
Joe Kandaba 7/07

É fornecido pelo pacote update-notifier-common. Eu não acho que tenha nenhuma dependência de GUI.
sourcejedi

1

Usando sudo é sua resposta, você provavelmente precisará adicionar o usuário no qual deseja executar o script no arquivo sudoers e provavelmente com o sinalizador nopasswd, para que não solicite sua senha sempre que o script for executado, para obter mais informações sobre o sudo, tente dando uma olhada aqui: https://help.ubuntu.com/community/Sudoers


Eu realmente prefiro que nada seja executado como root em um servidor que não é absolutamente necessário.
Joe Kandaba 7/07

ele só é executado como root o tempo suficiente para executar o comando, e você pode limitá-lo com o comando específico necessário para obter atualizações, neutralizando assim qualquer possível ameaça de segurança
anthonysomerset

1

O Ubuntu possui muitos plugins nagios, incluindo o prático check_apt, um programa em C personalizado. É um pouco melhor que o notificador de atualização, pois suas dependências são menores; se você estiver interessado em monitorar servidores, provavelmente já o instalou! A saída é assim (se você não gostar, parece trivial dividir o programa para imprimir o que você precisa):

APT OK: 0 packages available for upgrade (0 critical updates).

Se o nagios alerting não for sua preferência, você pode fazer o que eu faço e instalar o apticron, que enviará notificações por e-mail sobre as atualizações disponíveis em um sistema.


Obrigado! Apticron não é uma opção, pois preciso das informações para o meu próprio script, para que um e-mail não funcione. Pela mesma razão, não estou usando o nagios, mas a resposta parece implicar que "check_apt" pode ser usado independentemente?
Joe Kandaba 7/07

@ Joe todos os plugins Nagios pode ser executado independently-- que da maioria do que nagios faz :)
Michael Lowman

Sim. É apenas um programa instalado em / usr / lib / nagios / check_apt. Funciona bem como qualquer usuário antigo.
11111 jjugugger
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.