Сброс пароля root в различных системах UNIX

Мы рассмотрим процесс сброса паролей на примере систем:

  • Astra Linux, Ubuntu, Debian (Linux Deb).
  • Rocky Linux, CentOS (Linux RPM).
  • FreeBSD (BSD).

Для выполнения нижеописанных действий у нас должен быть либо физический доступ к компьютеру, либо возможность подключения к KVM-консоли/IPMI.

Astra Linux / Debian / Ubuntu

При старте системы дожидаемся окна выбора варианта загрузки (GNU GRUB):

Окно Grub с вариантами загрузки в Ubuntu

Если данное окно не появляется и начинает загружаться система, после первого загрузочного окна нажимаем Shift .

Остаемся на пункте Ubuntu и нажимаем клавишу e — откроется редактор со сценарием загрузки. Находим в нем строку, которая начинается с:

linux /vmlinuz…

Например:

Сценарий загрузки Ubuntu

Удаляем ro и в конце строки допишем:

rw init=/bin/bash

Получится:

Исправленный сценарий загрузки Ubuntu

Можно запускать загрузку системы. Нажимаем F10 или Ctrl + X . Мы должны увидеть командную строку с возможностью вводит команды.

Вводим:

passwd

И дважды пароль, который хотим использовать (при вводе не будут отображаться символы):

New Password:
Retype New Password:

Запускаем системы в обычном режиме:

exec init

Готово.

Rocky Linux / CentOS 7 / CentOS 8

Во время загрузки системы дожидаемся окна с возможностью выбора варианта загрузки:

Варианты загрузки Rocky Linux / CentOS

Наводим на нужную версию ядра, если их несколько (как правило, нужная нам находится в самом верху) и нажимаем клавишу e .

Мы должны увидеть редактор для правки сценария загрузки. Находим строку, которая начинается с:

linux vmlinuz…

или:

linux ($root)/vmlinuz…

Например:

Сценарий загрузки CentOS

Редактируем в данной строке ro на rw и в конец дописываем rd.break enforcing=0 :

Редактируем сценарий загрузки CentOS

Нажимаем Ctrl + X — система загрузится в режиме восстановления.

Зайдем в оболочку с другим корнем:

chroot /sysroot

Меняем пароль для пользователя root:

passwd

Система попросит дважды ввести пароль:

New Password:
Retype New Password:

После выходим из окружения chroot:

exit

И грузим нашу систему в обычном режиме:

exec init

Входим в систему с использованием нового пароля.

FreeBSD

Перезагружаем компьютер до окна выбора вариантов загрузки:

Окно вариантов загрузки в FreeBSD

* данное окно в разных версиях FreeBSD может различаться.

Нам нужно выбрать Single User Mode . В моем примере я нажимаю 2 .

Система загрузится в однопользовательском режиме. В нем у нас будет смонтированный корневой раздел в режиме только для чтения. Вводим команду, чтобы это исправить:

mount -u /

Вводим команду для смены пароля:

passwd

После этого дважды пароль (при вводе не будут отображаться символы):

New Password:
Retype New Password:

Выходим из однопользовательского режима:

exit

Система загрузится в обычном режиме. Можно авторизовываться с новым паролем.

Режим восстановления хостинга

В некоторых случаях (например, на арендованных серверах) у нас может не быть возможности получить доступ к консоли сервера, но есть возможность загрузиться в режиме восстановления. Действия по сбросу пароля, при таком варианте, будут включать дополнительные шаги.

Загрузив сервер в режиме восстановления, заходим на него по SSH. Затем с помощью команды:

lsblk

… попробуем определить, на каком из дисков находится системный раздел. После чего, монтируем его в любой каталог, например, /mnt :

mount /dev/md125 /mnt

Если не удается понять, какой диск нам нужен, пробуем по очереди смонтировать все. Для размонтирования используем команду:

umount /mnt

После того, как мы нашли системный раздел (его можно определить по наличию каталогов etc, var, home, usr), меняем системное окружение камандой:

chroot /mnt

Теперь можно задать новый пароль:

passwd

Готово. Выходим из оболочки chroot:

exit

Выключаем компьютер:

shutdown -P now

Заходим в консоль управления сервером и меняем режим загрузки на стандартный. Запускаем машину.

Читайте также

Стоит оставить как шпаргалку и эти инструкции:

1. Как восстановить пароль от учетной записи Windows .

2. Создание или редактирование администратора в различных CMS через базу данных .

EnglishRussianUkrainian