New We are sorting MAX channels into categories and territories. Read the news

🛑 «Просто нажми apt upgrade», говорили они… Как я пересаживал ядро и вытаскивал Parrot OS из нокаута



Решил я сегодня обновить рабочую машинку на Parrot Security OS под ARM. Думал: «Делов на пять минут, запущу апдейт, налью чай и пойду дальше ковырять цели».

Ага, наивный. Система решила устроить мне внезапный хардкорный CTF прямо на рабочей станции. 😂

Заглядываю в терминал перед подтверждением установки, а там APT с каменным лицом выдаёт:
REMOVING: linux-image-arm64

Стоп, машина! APT на полном серьёзе решил «вылечить головную боль отсечением головы» - снести метапакет ядра Linux, чтобы не разруливать конфликт версий. Если бы я нажал «Y», после перезагрузки система просто помахала бы мне ручкой и улетела в глухой kernel panic.

В итоге безобидный апдейт превратился в полноценную миграцию с Parrot 6 («Lorykeet») на новую 7-ю ветку («Echo») с фундаментом Debian 13. И вот тут начался настоящий боевик в четырёх актах:

1. Конфликт PreDepends.
Свежее ядро 7.2.11 требовало linux-base >= 4.17, а в системе стояла древняя 4.12. Из-за разницы приоритетов веток APT встал в ступор. Пришлось идти в обход пакетного менеджера, руками через curl выдёргивать нужные deb-пакеты из архивов Debian и точечно пробивать их через dpkg.

2. Упавшие зеркала.
Официальный редиректор director.parrot.sh в самый ответственный момент выдал 503 Service Unavailable и начал сбрасывать сокеты. Пришлось на лету перекраивать sources.list, прописывать прямое европейское зеркало и локально патчить хосты, чтобы спасти загрузку.

3. Нокаут от OOM Killer.
Новый алгоритм резолвера (APT solver 3.0) на транзакции в 280 пакетов вошёл в рекурсивный штопор и… сожрал 7.4 ГБ оперативной памяти! Ядро Linux хладнокровно пристрелило процесс на 8% загрузки. Пришлось в полевых условиях отключать CoW на диске, нарезать 4 ГБ swap через dd, глушить systemd-oomd и откатывать APT на классический движок --solver internal.

4. Итог.
После трёх часов позиционной войны:
✅ Система жива и летает на ядре 7.2.11+parrot7-arm64.
✅ Все 280 пакетов безопасности, компиляторы и Python 3.13 успешно встали.
✅ Ни один байт данных или боевых конфигов не пострадал.

Главный вывод дня:
Никогда не жмите «Y» вслепую, если в списке REMOVING мелькает что-то с названием linux-image или системные метапакеты. Всегда читайте, что терминал собирается сделать с вашей ОС.

Ad post

Views: 27
Open in MAX Report an inaccuracy

Report an inaccuracy

Describe what needs fixing. If you have a source, add a link.

You are leaving datool.ru

The link leads to an external website. datool.ru is not responsible for its content — check the address before entering passwords or payment details.

Redirecting in 10 s

Go