Мой вопрос связан с . Ubuntu говорит мне, что у меня есть пакеты для обновления, когда у меня нет , что относится к Ubuntu 10.04. Но моя проблема связана с Ubuntu 12.04.2LTS (и решения, упомянутые для 10.04, не работают).
На основании того, что я узнал из этого вопроса, и связанных с ним вопросов о ServerFault (также с бесполезными ответами), я попытался запустить /usr/lib/update-notifier/apt-check --human-readable
, но он возвращает неверную информацию (ту же информацию, которая автоматически добавляется в /etc/motd
и отображается при каждом входе в систему через ssh):
6 packages can be updated.
6 updates are security updates.
Только сегодня я запустил sudo apt-get update && sudo apt-get upgrade
и было доступно одно регулярное обновление (плюс 3 пакета ядра, которые были отложены). Но мое обновление и обновление не изменили вывод apt-check
. У меня была эта проблема некоторое время, и я просто решил разобраться в ней сегодня.
За 10.04 я видел исправления, связанные с /etc/motd.tail
, но в моей системе такого файла нет.
Что ж, оказывается, сообщение apt-check
было правильным. Но сообщение apt-get upgrade
вводило в заблуждение. Он сказал:
The following packages have been kept back:
linux-headers-server linux-image-server linux-server
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Естественно, это заставляет поверить, что есть только 3 пакета, которые потенциально могут быть загружены и установлены / обновлены.
Но когда я сделал sudo apt-get install linux-server
(единственный способ, которым я знаю, чтобы преодолеть статус «скрытого» при обновлении), он сказал: 3 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Это верно, 3 + 3 = 6 пакетов как сказал apt-check
! А после установки / обновления новый логин не показывает доступных обновлений.
Очистите кэш пакета и загрузите его снова:
sudo dpkg --clear-avail
sudo apt-get update
Если это не решает проблему, создайте пустое motd.tail
:
sudo touch /etc/motd.tail