Сброс пароля root через GRUB (Recovery Mode)
Если стандартный механизм сброса пароля в панели управления не работает, сбросить root пароль к серверу можно напрямую через загрузчик GRUB. Данный способ позволяет получить доступ к системе и задать новый пароль без переустановки операционной системы.
Когда требуется сброс пароля через GRUB
- Кнопка "Сброс пароля" не срабатывает из-за нарушения работы в пакетах ОС
- Изменены настройки SSH, PAM или политики безопасности.
- Пароль был утерян, а вход по ключу недоступен.
Сброс через GRUB выполняется локально и требует доступа к консоли сервера (через VNC в панели управления или Rescue режим, но в таком случае придется монтировать ОС и входить через chroot)
Шаг 1. Перезагрузка сервера
Перезагрузите сервер и во время загрузки дождитесь появления меню GRUB. Если меню не появляется автоматически, попробуйте нажимать клавишу Esc для появления контекстного меню выбора ядра системы. Иногда требуется нажатие любой клавиши кроме Enter, что бы счётчик автоматического выбора ядра и загрузки (обычно 3-5 секунд) сбросился.
Шаг 2. Переход в режим редактирования
В меню GRUB выберите основной пункт загрузки (обычно первый) и нажмите АНГЛИЙСКУЮ клавишу E на клавиатуре, откроется редактор параметров загрузки.
Шаг 3. Изменение параметров загрузки
Найдите строку, начинающуюся с linux или linux16.
Управляйте обычным нажатием стрелочек на вашей клавиатуре.
В конце этой строки замените параметры:
ro
на:
rw init=/bin/bash
Это позволит загрузить систему в режиме командной строки с правами root без запроса пароля.
Шаг 4. Загрузка системы
Нажмите Ctrl + X или F10 для продолжения загрузки. Система загрузится в shell с правами root БЕЗ ТРЕБОВАНИЯ ПАРОЛЯ
Шаг 5. Перемонтирование файловой системы
Если файловая система всё же была смонтирована только для чтения, выполните команду для перемонтирования корневого раздела
mount -o remount,rw /
Шаг 6. Сброс пароля
Далее установите новый пароль для пользователя root как обычно командой
passwd
Введите новый пароль и повторно подтвердите его.
Шаг 7. (Важно) Для систем с SELinux
Если используется SELinux (CentOS, AlmaLinux, Rocky Linux), выполните команду:
touch /.autorelabel
Это необходимо для корректного восстановления контекстов безопасности после изменения пароля.
Шаг 8. Перезагрузка сервера
Перезагрузите систему:
exec /sbin/reboot -f
После перезагрузки сервер загрузится в обычном режиме, и вход с новым паролем будет доступен.
Важно
- Метод работает только при отсутствии полного шифрования диска (LUKS).
- Если GRUB защищён паролем - сброс невозможен без его знания.
- При серьёзных повреждениях системы может потребоваться переустановка ОС.
Сброс пароля через GRUB это штатный способ восстановления доступа к серверу при нарушении стандартных механизмов входа. Если восстановление через GRUB невозможно или вы не можете его сделать, рекомендуем выполнить переустановку операционной системы.
