Як отримати список усіх очікуваних оновлень безпеки?


16

Мені потрібно перерахувати (не рахувати та не встановлювати) усі очікувані оновлення безпеки в системі Ubuntu 14.04. Я прочитав публікацію Як створити список лише оновлень безпеки за допомогою apt-get? і його прийнята відповідь ( apt-show-versions | grep upgradeable | grep security) дійсно дає мені список.

Однак ця команда перераховує 62 очікування оновлень безпеки. /usr/lib/update-notifier/apt-checkговорить мені, що у мене є 75 очікуючих оновлень безпеки, але, схоже, немає способу їх перерахувати. Як я можу узгодити ці два числа? Чи одна з двох команд робить щось інше, ніж те, що я хочу?

Відповіді:


7

Якщо ви просто хочете зробити це швидко один раз, замість того, щоб створити окремий сховище та прописати деяку автоматизацію і все таке. Чудово, якщо ви не повинні вносити зміни під час аудиту системи чи будь-чого іншого.

Ці дві команди виплюнуть список. Труба до wc -l, щоб побачити, скільки позаду. ;-)

grep security /etc/apt/sources.list > /tmp/security.list
sudo apt-get upgrade -oDir::Etc::Sourcelist=/tmp/security.list -oDir::Etc::SourceParts=/some/valid/dir/false -s

Досі діє для старих дистрибутивів або якщо у вас є оновлення, але безпека увімкнена:

sudo apt-get upgrade -s| grep ^Inst |grep Security 

чому ви пишете " Все ще дійсно для старих дистрибутивів або якщо у вас є оновлення, але безпека увімкнена "? якщо трубопровідне рішення не працює, можливо, додайте параметр -V( -verbose-versions)?
myrdd

@myrdd Тому що перший використовує функції, які були недоступні в дистрибутивах, які виходили зі стилю ще в 2016 році. Можливо, це вже не річ.
мерехтіння

тож останнє рішення завжди має працювати, ні?
myrdd

1
@myrdd Поки формат виводу не змінюється в новій версії. Перше краще, оскільки воно не залежить від формату виводу.
мерехтіння

3
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                            Command                            |                                                                               Purpose                                                                               |
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| apt list --upgradable                                         | List all updates available                                                                                                                                          |
| apt list --upgradable | grep "\-security"                     | List all updates that are security.                                                                                                                                 |
| apt list --upgradable 2>/dev/null | grep "\-security" | wc -l | Count number of security updates available. and redirects the stderr like "WARNING: apt does not have a stable CLI interface. Use with caution in scripts." to null |
+---------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+

2

Це працювало для мене:

sudo unattended-upgrade --dry-run -d 2> /dev/null | awk '/Checking/ { print $2 }'

2
Показує всі доступні оновлення, але не обмежується безпекою, якщо я не помиляюся. Ще корисно.
дельф


0
sudo apt list --upgradable |grep "/$(lsb_release -cs)-security"

Тут перераховані всі доступні оновлення, які надходять через сховище безпеки.


1
apt призначений для інтерактивного використання. Ви отримуєте попередження при використанні в сценарії. Використовуйте apt-getзамість цього.
Бернард

0

повинен бути спосіб запитати, скільки пакетів можна оновити та скільки оновлень безпеки зараз , але якщо ви вирішите запитувати його раз на день, ви можете просто прочитати файл / var / lib / update-notifier / updates-available , який Здається, щодня оновлюється сценарієм /etc/cron.daily/update-notifier-common, який належить до розповсюдження пакета -сповіщувача

Приклад:

$ sudo cat /var/lib/update-notifier/updates-available

355 packages can be updated.
1 update is a security update.

Тестується у:

  • Ubuntu 14.04 LTS
  • Ubuntu 16.04 LTS
  • Ubuntu 18.04 LTS

З повагою,

/ Анхель

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.