Вопрос или проблема
Я создал новую виртуальную машину на GCP и затем попытался выполнить обновление, запустив:
apt update && apt upgrade -y
Но каждый раз она зависает на
Подготовка к распаковке .../google-cloud-cli_436.0.0-0_all.deb ...
Я трижды пытался удалить виртуальную машину и создать новую. Она всегда зависает на этой строке, и обновление не продолжается.
Я использую Debian 10 на E2 Micro.
[Изображение окна онлайн-терминала]1
Я знаю, что это старая проблема, но ваша проблема почти наверняка связана с размером установки google-cloud-cli. Проблемы поднимались на github gsutil и системе отслеживания проблем Google.
Один из пользователей в этом посте на github указывает, что экземпляры с <= 1 ГБ ОЗУ имеют проблемы с этим (ссылка на комментарий).
Ответ или решение
При выполнении команды обновления программного обеспечения apt upgrade -y
на вашем экземпляре VM в Google Cloud, вы столкнулись с зависанием на этапе "Preparing to unpack …/google-cloud-cli_436.0.0-0_all.deb …". Это довольно распространённая проблема для экземпляров с ограниченными ресурсами, таких как E2 Micro.
Проблема
Ваше окружение — Debian 10, развернутое на машине с 1 ГБ ОЗУ. Согласно нескольким обсуждениям на GitHub и в трекере проблем Google, эта проблема часто возникает на экземплярах с малым количеством оперативной памяти. Пользователи сообщают о том, что при попытке установить или обновить пакеты, такие как google-cloud-cli
, система может зависать, так как имеющихся ресурсов недостаточно для завершения процесса установки.
Возможные решения
-
Увеличение объема ОЗУ: Возможно, самым простым решением будет переход на более мощный экземпляр с 2 ГБ ОЗУ или больше. Это позволит вашей системе обрабатывать установку пакетов без проблем, связанных с нехваткой памяти.
-
Удаление пакетов, вызывающих зависание: Если вы хотите остаться на текущем экземпляре, вы можете попробовать удалить
google-cloud-cli
и все связанные с ним зависимости с помощью следующей команды:sudo apt remove google-cloud-cli
-
Использование флага
-o Dpkg::Options::="--force-overwrite"
: Иногда установка или обновление может зависнуть из-за конфликта между пакетами. Попробуйте выполнить команду:sudo apt-get install -f -o Dpkg::Options::="--force-overwrite"
-
Обновление и установка поэтапно: Попробуйте выполнить обновление и установку пакетов поэтапно, чтобы избежать зависания. Например:
sudo apt update sudo apt upgrade --without-new-pkgs
-
Очистка кеша пакетов: Очистите кеш apt перед выполнением обновления:
sudo apt clean sudo apt update sudo apt upgrade -y
-
Логи системы: Изучите логи, чтобы увидеть конкретные ошибки или предупреждения, которые могут дать больше информации о проблеме. Вы можете использовать команду:
sudo tail -f /var/log/dpkg.log sudo tail -f /var/log/apt/history.log
Заключение
Проблемы с установкой программ или обновления пакетов на виртуальных машинах с недостатком ресурсов являются достаточно распространёнными. Рассмотренные выше рекомендации помогут вам устранить зависание процесса и успешно обновить систему. Если после всех ваших усилий проблема не решена, возможно, стоит обратиться в службу поддержки Google Cloud для получения дополнительной помощи.
Контролируя ресурсы вашего экземпляра, вы сможете обеспечить стабильную работу программного обеспечения и избежать подобного рода проблем в будущем.