Восстановление пароля root является тривиальной задачей, пока вы все еще вошли в систему как администратор или пользователь с полным доступом sudo, но немного более сложным, когда администратор не вошел в систему. В последней ситуации администратор может загрузиться с Live CD, смонтируйте оттуда корневую файловую систему и отредактируйте / etc / shadow. Администраторы также должны иметь возможность выполнять восстановление пароля root без использования внешнего носителя.
В CentOS / RHEL 7 можно сделать так, чтобы скрипты, запускаемые из initramfs, приостанавливались в определенные моменты, предоставляли корневую оболочку, а затем продолжали работу при выходе из этой оболочки. Хотя это в основном предназначено для отладки, его также можно использовать для восстановления утерянного пароля root:
1. Перезагрузите систему. Прервите обратный отсчет загрузчика, нажав любую клавишу.
2. Переместите курсор к записи, которую необходимо загрузить.
3. Нажмите e, чтобы отредактировать выбранную запись. Переместите курсор в командную строку ядра (строка, которая начинается с linux16.
4. Добавьте rd.break (он прервется непосредственно перед передачей управления от initramfs реальной системе).
5. Нажмите Ctrl + x, чтобы загрузиться с изменениями.
На этом этапе будет представлена корневая оболочка с корневой файловой системой для реальной системы, смонтированной только для чтения в / sysroot.
Чтобы восстановить пароль root с этого момента, используйте следующую процедуру:
1. Перемонтируйте / sysroot как чтение-запись.
# switch_root:/# mount -o remount,rw /sysroot
2. Переключитесь в chroot jail, где / sysroot рассматривается как корень дерева файловой системы.
# switch_root:/# chroot /sysroot
3. Установите новый пароль root.
# sh-4.2# passwd root
4. Убедитесь, что все файлы без меток (включая / etc / shadow на данном этапе) помечаются заново во время загрузки.
# sh-4.2# touch /.autorelabel
5. Дважды введите exit. Первый выйдет из chroot jail, а второй выйдет из оболочки отладки initramfs.
На этом этапе система продолжит загрузку, выполнит полную перемаркировку SELinux, а затем снова перезагрузится.
Возможно вам понравится: