Ubuntu каже мені, що я маю пакунки для оновлення, коли цього не роблю


18

У мене є серверна машина, на якій я ніколи не включаюсь у відображення X, лише через ssh. Нещодавно я ввійшов, і це мені сказало, що я маю

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

Я насправді це вже знав, бо запускаю мунін на ньому та на всіх інших своїх серверах. Так що все-таки я зробив "sudo здатність" і встановив усі оновлення, потім перезавантажив. Через кілька днів munin сказав мені, що мені потрібно оновити ще один пакет, тому я увійшов, але в повідомленні про вхід було сказано:

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

Я зайшов у придатність і встановив одне оновлення. Ubuntu все ще каже мені, що я маю 12 пакетів для оновлення. Мунін каже, що я не маю жодної. Я спробував, aptitude -d -y dist-upgradeі вони apt-get -d -y dist-upgradeобидва кажуть мені, що нічого встановити. То чому інформація про вхід все ще говорить мені, що я маю 12 пакетів для оновлення?


Ви зробили sudo aptitude updateзнову? Просто щоб переконатися, що він оновлений;) Крім того, запуск sudo aptitude safe-upgradeможе допомогти, ви можете використовувати здатність так само, як apt-get, з аргументами командного рядка ... aptitudeпоодинці запускається інтерактивний інтерфейс, який я особисто знаю, що хороша група користувачів не використовує .
Thomas Ward

@Evil, проблема не в тому, що проблема полягає в тому, що Ubuntu використовує, щоб повідомити, скільки пакунків потрібно оновити. aptitude встановлено 12 оновлень пакету кілька днів тому.
Пол Томблін

1
FWIW, зараз я бачу ту саму проблему на Ubuntu 10.10. Може, помилка?
грм

Так, чи можете ви надіслати помилку щодо цього? і посилання на це питання.
Джеремі Біча

На Trusty 14.04.3 LTS запуск "sudo aptitude safe-upgrade" видалив ці повідомлення, коли "sudo apt-get upgrade" не відбувся.
Beebee

Відповіді:


10

Це помилка в стартових скриптах , зафіксована в Natty, яка копіює поточний стан motdв /etc/motd.tail. motdдинамічно генерується щоразу, коли ви завантажуєтесь, але motd.tailє статичним (що дозволяє систематичному адміністратору розміщувати там якусь фіксовану інформацію для всіх користувачів).

Видалення motd.tailвирішить проблему тимчасово, але кращим рішенням буде створення порожнього motd.tail. Якщо файл не існує, він може бути створений знову (неправильно) при initscriptsоновленні.

Створіть порожнє motd.tailс

sudo touch /etc/motd.tail

2
Я бачу цю проблему в 12.04.2 LTS, і немає /etc/motd.tailфайлу; якраз /etc/motd, який містить образливий текст. Часова позначка ("Інформація про систему станом на ...") точна, але кількість оновлених пакетів - ні.
Ламбарт

6

Проблема, як видається, полягає в логіці, /usr/lib/update-notifier/update-motd-updates-availableяка вирішує, що немає причин запускатись /usr/lib/update-notifier/apt-check --human-readableна основі часових позначок на /var/lib/update-notifier/updates-availableі source.list та кількох інших файлів.

Я не впевнений, що таке фактична помилка, але, видаливши кешований файл, принаймні скине його до 0 оновлень, хоча Бог знає, чи покаже правильне число, коли є оновлення.


5

Нещодавно я відповів на подібне запитання на сервері Defaultfault:

сервер ubuntu: банер SSH, який повідомляє про оновлення пакетів, але нічого не потрібно оновлювати

Цей банер, про який ви говорите, називається MOTD (Повідомлення дня). Здається, це помилка, яку можна обійти, видаливши /etc/motd.tailфайл.


1

Якщо саме повідомлення про вхід (motd) говорить про те, що пакети потребують оновлення, можливо, це просто не update-motdвідбулося за деякий час. Спробуйте запустити, update-motdа потім увійдіть знову, щоб побачити, чи це виправляє. Він повинен відновити файл / etc / motd.


Інформація про пакет для update-motd говорить: "Функціонал, який раніше наданий цим пакетом, тепер інтегрований у pam_motd, в libpam-модулі."
Пол Томблін

1

У кількох системах я бачив неправильні звіти про оновлення пакетів, але також 2 рядки "Ubuntu 10.04.2 LTS" та "Ubuntu 10.04.1 LTS", хоча я був 10.04.2.

Як сказав Карл, /etc/motd.tail містив старий текст, і видалення його прекрасно вирішило проблему для мене


1

У мене те саме питання 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) ...

Але після інструментів командного рядка update-motd не існує жодного інструменту командного рядка update, і я нічого не можу знайти про pam_motd

Видалення /etc/motdзробленого повідомлення проходить, але, очевидно, безпечне оновлення повинно було це зробити вже.


1

Перевірте, чи /etc/motd.tailмістяться повідомлення оновлення. Якщо так, видаліть їх.

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