Como você vê quais pacotes estão disponíveis para atualização?

57

Usuário do FreeBSD se juntando às suas fileiras. Fui solicitado a cuidar de um servidor Ubuntu executando o 10.04 LTS.

Eu vejo de /usr/lib/update-notifier/update-motd-updates-available que há várias atualizações no servidor, mas não vejo uma maneira de saber qual delas será atualizada.

Alguém poderia me indicar a direção certa para que eu possa ver quais pacotes serão atualizados quando eu executar apt-get upgrade ?

ATUALIZAÇÃO:

Não é possível responder à minha pergunta no momento, por isso estou lançando isso aqui por enquanto:

Junto com o apt-get upgrade --dry-run sugerido abaixo, /usr/lib/update-notifier/apt-check -p listará todos os pacotes com atualizações disponíveis.

    
por Jan Geep 30.01.2012 / 11:17

4 respostas

50

Você pode instalar aptitude , se ainda não estiver instalado. É uma ótima ferramenta para gerenciar pacotes em uma instalação sem cabeça.

Caso contrário, se você quiser apenas ver o que vai acontecer quando você executar algo, use o argumento --dry-run e ele não fará nada, ele dirá o que ele faria faça:

Na página man do apt-get

-s, --simulate, --just-print, --dry-run, --recon, --no-act
          No action; perform a simulation of events that would occur but do
          not actually change the system. Configuration Item:
          APT::Get::Simulate.

          Simulate prints out a series of lines each one representing a dpkg
          operation, Configure (Conf), Remove (Remv), Unpack (Inst). Square
          brackets indicate broken packages with and empty set of square
          brackets meaning breaks that are of no consequence (rare).

Adicione a opção ao comando desta forma

sudo apt-get upgrade --dry-run
    
por Oli 30.01.2012 / 11:31
46

A partir de agora (Ubuntu 16.04) você pode usar apt list com o --upgradable flag;

sudo apt update
apt list --upgradable

e você receberá uma lista com todos os pacotes atualizáveis.

    
por doru 17.06.2016 / 09:20
9

Outra alternativa seria usar aptitude com um termo de pesquisa :

aptitude search '~U'

(observe a maiúscula 'U')

Isso significa: "pesquise todos os pacotes que estão instalados e podem ser atualizados". Referência: manual do utilizador do aptitude

Por padrão, aptitude search mostra para cada pacote seu nome, descrição e alguns sinalizadores, mas você também pode adaptar a saída às suas necessidades. Por exemplo, para listar apenas os nomes dos pacotes, o comando seria:

aptitude search -F '%p' --disable-columns '~U'

( --disable-columns evita espaços em branco de preenchimento no final das linhas)

    
por sierrasdetandil 19.02.2015 / 18:02
8

Abaixo, o comando mostrará a lista de pacotes instalados que tem uma atualização disponível nos repositórios.

dpkg --get-selections | xargs apt-cache policy {} | grep -1 Installed | sed -r 's/(:|Installed: |Candidate: )//' | uniq -u | tac | sed '/--/I,+1 d' | tac | sed '$d' | sed -n 1~2p
    
por Avinash Raj 06.04.2014 / 05:13