O Ubuntu me diz que tenho pacotes para atualizar quando não

17

Eu tenho uma máquina de servidor que eu nunca logar na tela do X, apenas via ssh. Recentemente eu entrei e ele me disse que eu tinha

12 packages can be updated.
6 updates are security updates.

Na verdade, eu já sabia disso porque eu uso munin nele e em todos os meus outros servidores. De qualquer forma, eu fiz "sudo aptitude" e instalei todas as atualizações, então reiniciei. Alguns dias depois, munin me disse que eu precisava atualizar outro pacote, então eu entrei, mas a mensagem de login dizia:

12 packages can be updated.
6 updates are security updates.

Eu entrei no aptitude e instalei a atualização. O Ubuntu ainda está me dizendo que eu tenho 12 pacotes para atualizar. Munin diz que eu não tenho nenhum. Eu tentei aptitude -d -y dist-upgrade e apt-get -d -y dist-upgrade e ambos me disseram que não há nada para instalar. Então, por que as informações de login ainda me dizem que tenho 12 pacotes para atualizar?

    
por Paul Tomblin 23.04.2011 / 00:00

7 respostas

9

É um bug em initscripts , corrigido no Natty, que copia o estado atual de motd a /etc/motd.tail . motd é gerado dinamicamente sempre que você inicializa, mas motd.tail é estático (permitindo que um sysadmin coloque algumas informações fixas lá para todos os usuários).

A exclusão de motd.tail corrigirá o problema temporariamente, mas uma solução melhor é criar um motd.tail vazio. Se o arquivo não existir, ele poderá ser criado novamente (incorretamente) quando initscripts for atualizado.

Crie um motd.tail vazio com

sudo touch /etc/motd.tail
    
por Dave Jennings 20.05.2011 / 23:06
5

O problema parece ser a lógica em /usr/lib/update-notifier/update-motd-updates-available , que está decidindo que não há razão para executar /usr/lib/update-notifier/apt-check --human-readable com base em registros de data e hora em /var/lib/update-notifier/updates-available e sources.list e alguns outros arquivos.

Não sei qual é o erro real, mas a remoção do arquivo em cache pelo menos restaura 0 para atualizações, embora só Deus saiba se ele mostrará o número correto quando houver atualizações disponíveis.

    
por Paul Tomblin 23.04.2011 / 14:07
5

Eu respondi recentemente a uma pergunta semelhante no Serverfault:

servidor ubuntu: banner SSH avisando para atualizar pacotes, mas nada para atualizar

Esse banner que você está falando é chamado de MOTD (Mensagem do Dia). Parece ser um um bug que pode ser contornado pela exclusão o arquivo /etc/motd.tail .

    
por Lekensteyn 20.05.2011 / 22:16
1

Verifique se /etc/motd.tail contém as mensagens de atualização. Se sim, remova-os.

    
por Karl Napf 28.04.2011 / 00:04
0

Se é apenas a mensagem de login (motd) que está dizendo que os pacotes precisam ser atualizados, então pode ser que update-motd não funciona há algum tempo. Tente executar update-motd e, em seguida, faça login novamente para ver se conserta. Deve regenerar o arquivo / etc / motd.

    
por Rich Adams 23.04.2011 / 01:40
0

Em vários sistemas, eu tinha visto relatórios incorretos de pacotes a serem atualizados, mas também duas linhas 'Ubuntu 10.04.2 LTS' e 'Ubuntu 10.04.1 LTS', mesmo que eu estivesse em 10.04.2.

Como Karl disse, /etc/motd.tail continha o texto antigo, e excluí-lo resolveu o problema para mim perfeitamente

    
por Gordon Williams 20.05.2011 / 13:28
0

Estou com o mesmo problema em 10.04.2.

# aptitude install update-motd

Selecting previously deselected package update-motd.
(Reading database ... 36453 files and directories currently installed.)
Unpacking update-motd (from .../update-motd_3.5-0ubuntu1_all.deb) ...
 Removing any system startup links for /etc/init.d/update-motd ...
Setting up update-motd (3.5-0ubuntu1) ...

Mas depois não há nenhuma ferramenta de linha de comando update-motd e não consigo encontrar nada sobre pam_motd.

Remover o /etc/motd fez a mensagem desaparecer, mas obviamente a atualização segura já deveria ter feito isso.

    
por Steve Steiner 04.05.2011 / 14:17