Вопрос или проблема
Несколько дней назад я обновил два компьютера с 22.04 до 24.04.1. Хотя на одном всё прошло хорошо, обновление и установка пакетов на другом прервались.
Поэтому я сделал следующее, что сработало:
sudo apt --fix-broken install
sudo apt full-upgrade
sudo reboot
Я также прочитал об этой команде, но не знаю, что она действительно делает (man-пакеты достаточно расплывчаты и, учитывая, что кажется, она (пере-)настраивает всё, я не решаюсь её использовать):
sudo dpkg --configure -a
В настоящее время машина “работает нормально” (не зная, что не было выполнено во время обновления). Замечательное отличие от работающей машины в том, что уведомление об обновлениях больше не появляется. В настройках тип подписчика выделен серым и написано “Custom”.
В файловой системе файл /etc/apt/sources.list
существует со всеми jammy-ссылками, закомментированными, и noble-ссылками на месте, например:
deb http://mirror.ette.biz/ubuntu/ noble main restricted
# deb-src http://mirror.ette.biz/ubuntu/ jammy main restricted
, но работающая машина на самом деле показывает следующее:
root@NAS:~# cat /etc/apt/sources.list
# Источники Ubuntu перемещены в /etc/apt/sources.list.d/ubuntu.sources
root@NAS:~#
Этот именованный файл имеет совершенно другую структуру.
Таким образом, у меня есть два вопроса на данный момент:
- Как сделать так, чтобы уведомление об обновлениях работало, как на работающей машине?
- Как выяснить, что не произошло и запустить это? (что, возможно, приведет к дальнейшим вопросам)
Добавлено для @nobody:
sjngm@runlikehell:~$ sudo apt update
Hit:1 http://mirror.ette.biz/ubuntu noble InRelease
Hit:2 http://mirror.ette.biz/ubuntu noble-updates InRelease
Hit:3 http://mirror.ette.biz/ubuntu noble-backports InRelease
Hit:4 http://mirror.ette.biz/ubuntu noble-security InRelease
Ign:5 https://repo.vivaldi.com/stable/deb stable InRelease
Hit:6 https://repo.vivaldi.com/stable/deb stable Release
Hit:7 https://ppa.launchpadcontent.net/cfgnunes/ppa/ubuntu noble InRelease
Hit:8 https://ppa.launchpadcontent.net/phoerious/keepassxc/ubuntu noble InRelease
Hit:9 https://download.sublimetext.com apt/stable/ InRelease
Чтение списков пакетов… Готово
W: https://ppa.launchpadcontent.net/cfgnunes/ppa/ubuntu/dists/noble/InRelease: Подпись ключом 2C484459D5377888A6476651F10B6A45E68D23DC использует слабый алгоритм (rsa1024)
sjngm@runlikehell:~$ sudo apt-cache policy
Файлы пакетов:
100 /var/lib/dpkg/status
release a=now
500 https://repo.vivaldi.com/stable/deb stable/main amd64 Packages
release o=Vivaldi Technologies,a=stable,l=Официальный репозиторий пакетов Vivaldi,c=main,b=amd64
origin repo.vivaldi.com
500 https://download.sublimetext.com apt/stable/ Packages
release o=Sublime Text,a=apt/stable,l=Sublime Text APT Repository,c=
origin download.sublimetext.com
500 https://ppa.launchpadcontent.net/phoerious/keepassxc/ubuntu noble/main amd64 Packages
release v=24.04,o=LP-PPA-phoerious-keepassxc,a=noble,n=noble,l=KeePassXC,c=main,b=amd64
origin ppa.launchpadcontent.net
500 https://ppa.launchpadcontent.net/cfgnunes/ppa/ubuntu noble/main amd64 Packages
release v=24.04,o=LP-PPA-cfgnunes,a=noble,n=noble,l=My open source projects,c=main,b=amd64
origin ppa.launchpadcontent.net
— остальное многословное, все имеют “release v=24.04,o=Ubuntu” —
500 http://mirror.ette.biz/ubuntu noble-security/multiverse i386 Packages
500 http://mirror.ette.biz/ubuntu noble-security/multiverse amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-security/universe i386 Packages
500 http://mirror.ette.biz/ubuntu noble-security/universe amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-security/restricted i386 Packages
500 http://mirror.ette.biz/ubuntu noble-security/restricted amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-security/main i386 Packages
500 http://mirror.ette.biz/ubuntu noble-security/main amd64 Packages
100 http://mirror.ette.biz/ubuntu noble-backports/universe i386 Packages
100 http://mirror.ette.biz/ubuntu noble-backports/universe amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/multiverse i386 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/multiverse amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/universe i386 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/universe amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/restricted i386 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/restricted amd64 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/main i386 Packages
500 http://mirror.ette.biz/ubuntu noble-updates/main amd64 Packages
500 http://mirror.ette.biz/ubuntu noble/multiverse i386 Packages
500 http://mirror.ette.biz/ubuntu noble/multiverse amd64 Packages
500 http://mirror.ette.biz/ubuntu noble/universe i386 Packages
500 http://mirror.ette.biz/ubuntu noble/universe amd64 Packages
500 http://mirror.ette.biz/ubuntu noble/restricted i386 Packages
500 http://mirror.ette.biz/ubuntu noble/restricted amd64 Packages
500 http://mirror.ette.biz/ubuntu noble/main i386 Packages
500 http://mirror.ette.biz/ubuntu noble/main amd64 Packages
Закрепленные пакеты:
sjngm@runlikehell:~$ sudo apt -f install
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово
Следующие пакеты были установлены автоматически и больше не требуются:
gnome-desktop3-data libboost-regex1.74.0 libodbccr2
Для их удаления используйте 'sudo apt autoremove'.
0 обновлено, 0 установлено заново, 0 удалено и 9 не обновлено.
sjngm@runlikehell:~$
Дополнительный ответ (я не могу добавить свой собственный):
Фактически полезная команда, кажется,
sudo apt dist-upgrade
Для предупреждения о слабом ключе, пожалуйста, следуйте здесь
Затем, пожалуйста, выполните sudo -H software-properties-gtk
и переключитесь на основной сервер для загрузки. Вкладка (программное обеспечение Ubuntu). Извините за немецкий текст.
Убедитесь, что у вас достаточно свободного места (особенно если у вас собственная файловая система загрузки). Если у вас есть несвободные драйверы, такие как nvidia или другие, проверьте с помощью
dkms status
если dkms работает.
sudo apt update && sudo apt full-upgrade
Ответ или решение
Основной вопрос, поднятый в проблеме, касается неудачного обновления с Ubuntu 22.04 до 24.04.1 и возможных последствий для системы, таких как проблемы с уведомлениями об обновлениях и конфигурацией системы. Давайте разберем ситуацию шаг за шагом, чтобы предложить наиболее подходящие решения.
Теория
Обновление ОС в Linux часто сопряжено с рядом вызовов, которые требуют особого внимания. Одной из потенциальных проблем может стать несовместимость пакетов или ошибок в репозиториях, которые формируют основу для устойчивой и безопасной работы системы. В частности, в случае обновления с версии 22.04 на 24.04.1 могут возникнуть некоторые сложности, обусловленные изменениями в структуре пакетов или работе служб.
Проблемы с ключами PPA
Поддержка PPA (Personal Package Archives) может стать дополнительной головной болью; если ключи подписей устарели или использовали небезопасный алгоритм, это может вызвать предупреждения или даже помешать правильной установке обновлений, что вы и наблюдали с предупреждением для "rsa1024".
Пример
В основе проблемы лежит сбой в обновлении пакетов, который был исправлен командами:
sudo apt --fix-broken install
sudo apt full-upgrade
sudo reboot
Это корректные шаги, которые позволяют исправить неудачно установленные пакеты. Однако, это не всегда решает все проблемы; необходимо ещё проверить состояние dpkg через:
sudo dpkg --configure -a
Эта команда запускает конфигурацию всех не настроенных пакетов. В случае сомнений, важно понимать, что dpkg при этом переработает только те пакеты, которые были установлены, но по каким-то причинам не конфигурированы. Это безопасная операция, требующая внимательного подхода, особенно в нестабильных системах.
Применение
-
Решаем проблему с PPA и ключами:
-
Чаще всего, обновление ключей и перевод их на надежные алгоритмы решает множество проблем с пользователями PPA. Использовать команды вроде
apt-key adv
или переключать PPA на новые версии поможет избежать несоответствий с устаревшими ключами. -
Переход на использование основных серверов Ubuntu через
software-properties-gtk
также может обеспечить стабильное получение обновлений.
-
-
Проверка обновлений и пространства:
- Убедитесь, что достаточно свободного места, особенно для boot секции, где могут возникать непредвиденные ограничения, приводящие к сбоям при обновлении.
-
Проверка драйверов и sudo dkms:
- Если используются проприетарные драйверы (например, NVIDIA), важно убедиться, что они интегрированы и работают корректно с новыми ядрами. Команда
dkms status
покажет текущее состояние модулей.
- Если используются проприетарные драйверы (например, NVIDIA), важно убедиться, что они интегрированы и работают корректно с новыми ядрами. Команда
-
Сравнение и корректировка источников:
- Проверьте соответствие источников в
/etc/apt/sources.list
с теми, что правильно настроены на исправно работающей машине. - Если структура файла существенно изменилась, как это бывает при переходе к новому шаблону, базирующемуся на
/etc/apt/sources.list.d/ubuntu.sources
, возможно, будет полезно синхронизировать подходы к управлению источниками.
- Проверьте соответствие источников в
Заключение
Поддержание системы в рабочем состоянии требует регулярных проверок источников и обновлений. Переход на новые версии часто влечет за собой изменения в структуре системы и необходимых зависимостях. Важно периодически проверять состояние репозиториев и корректность конфигурации пакетов, чтобы избежать подобных проблем в будущем. Для дальнейших шагов, если проблемы не исчезнут, стоит изучать логи с помощью journalctl
и анализировать возможные конфликты установленных пакетов с существующей системой.