Как вы видите, какие пакеты доступны для обновления

55

Пользователь FreeBSD присоединяется к вашим рядам. Меня попросили следить за сервером Ubuntu с 10.04 LTS.

Я вижу из /usr/lib/update-notifier/update-motd-updates-available , что на сервере есть несколько обновлений, но я не вижу способа узнать, что будет обновляться.

Кто-нибудь сможет указать мне в правильном направлении, чтобы увидеть, какие пакеты будут обновляться при запуске apt-get upgrade ?

UPDATE:

Не могу ответить на мой собственный вопрос в данный момент, так что покарайте это здесь:

Наряду с apt-get upgrade --dry-run , предложенной ниже, /usr/lib/update-notifier/apt-check -p будет отображать все пакеты с имеющимися обновлениями.

    
задан Jan Geep 30.01.2012 в 11:17
источник

4 ответа

48

Вы можете установить aptitude , если он еще не установлен. Это отличный инструмент для управления пакетами в безгласной настройке.

В противном случае, если вы просто хотите увидеть, что произойдет, когда вы что-то запустите, используйте аргумент --dry-run , и он ничего не сделает, он просто скажет вам, что он будет сделать:

На странице apt-get man

-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).

Добавьте этот параметр в команду таким образом

sudo apt-get upgrade --dry-run
    
ответ дан Oli 30.01.2012 в 11:31
источник
42

На данный момент (Ubuntu 16.04) вы можете использовать apt list с флагом --upgradable ;

sudo apt update
apt list --upgradable

, и вы получите список со всеми обновляемыми пакетами.

    
ответ дан doru 17.06.2016 в 09:20
9

Другой альтернативой может быть использование aptitude с поисковым термином :

aptitude search '~U'

(Обратите внимание на верхний регистр «U»)

Это означает: «искать все пакеты, которые установлены и могут быть обновлены». Ссылка: руководство пользователя aptitude

По умолчанию aptitude search показывает для каждого пакета его имя, описание и несколько флагов, но вы также можете адаптировать вывод к вашим потребностям. Например, чтобы перечислять только имена пакетов, команда:

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

( --disable-columns избегает заполнения пробелов в конце строк)

    
ответ дан sierrasdetandil 19.02.2015 в 18:02
8

Ниже команда покажет вам список установленных пакетов, у которых есть обновление, доступное в репозиториях.

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
    
ответ дан Avinash Raj 06.04.2014 в 05:13