Веб-версия обновления Docker прошла успешно, а веб-версия обновления Discourse не удалась.
Я сбросил неудачное обновление, но веб-приложение сообщило, что обновление выполняется.
Попробовал обновить Discourse вручную:
cd /var/discourse
./launcher rebuild app
Получил следующую ошибку:
ERROR: Docker version 19.03.13 not supported, please upgrade to at least 20.10.0, or recommend 24.0.7
Попытался обновить Docker вручную:
wget -qO- https://get.docker.com/ | sh
Получил следующую ошибку:
E: Could not get lock /var/lib/dpkg/lock-frontend. It is being held by process 10528 (apt-get)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
Мой сайт Discourse недоступен с ошибкой Oops-Error 500.
Есть какие-то идеи?
Вот исправление от ChatGPT. Ключевым моментом было принудительное завершение зависшего процесса на шаге 3.
Ошибка указывает на то, что другой процесс apt или управления пакетами уже запущен и удерживает файл блокировки /var/lib/dpkg/lock-frontend. Это препятствует выполнению вашей команды apt. Вот как решить эту проблему:
Шаги для решения проблемы
Проверка запущенных процессов apt
Выполните следующую команду, чтобы проверить наличие других процессов apt:
ps aux | grep apt
Ищите процессы, такие как apt-get, apt или dpkg. Если процесс запущен (например, apt-get или dpkg), возможно, он обновляет или устанавливает что-то в фоновом режиме.
Подождите завершения процесса
Если другой процесс действительно запущен, лучше всего подождать его завершения. Иногда автоматические обновления или установка пакетов выполняются в фоновом режиме.
Принудительное завершение зависшего процесса
Если процесс работает аномально долго, вы можете завершить его:
sudo kill -9 <PID>
Замените <PID> на идентификатор процесса (например, 10528 в вашем случае).
Удаление файлов блокировки
После завершения процесса удалите файлы блокировки, чтобы убедиться, что не осталось устаревших блокировок:
Перенастройка базы данных пакетов
Выполните эту команду для устранения возможных проблем с менеджером пакетов:
sudo dpkg --configure -a
Повторите обновление
Теперь повторите команду обновления:
sudo apt update && sudo apt upgrade -y
Примечания
Если эта проблема возникает часто, проверьте, не выполняются ли в фоновом режиме автоматические обновления. Они могут вызывать конфликты при ручном управлении пакетами.
Чтобы отключить автоматические обновления, выполните: