У меня есть система RHEL, которая заблокирована. У меня нет пароля системы. Если я смогу выключить ее или правильно перезапустить, я могу отредактировать ядро, чтобы оно работало в режиме single, а затем сбросить пароль. Но для этого мне нужно выключить систему, не затрагивая ни один из пользовательских процессов.
Есть ли способ сделать это, кроме как долго нажимать или убивать власть?
решение1
В большинстве современных систем нажатие кнопки питания (без удержания) отправит сигнал ACPI и приведет к нормальному завершению работы ОС.
Некоторые серверы поставляются с картами удаленного управления. Примером может служить Dell iDRAC или HP iLO. Если на вашем сервере есть карта удаленного управления (и у вас есть пароль к ней), вы сможете выполнить корректное выключение.
решение2
Самый простой способ получить доступ к системе, в которой у вас нет прав root, — это выключить и включить систему, обычно удерживая кнопку питания и считая, скажем, до 10. После выключения системы снова включите питание с помощью кнопки питания. По мере загрузки системы вы попадете в меню Grub.
Попав в меню Grub, вы можете попасть в любую систему, если у вас есть доступ к консоли и нет пароля, препятствующего получению доступа к меню Grub.
Во время первоначальной загрузки системы, когда появляется меню Grub, если вы войдете в меню и отредактируете (нажав eклавишу) строку ядра, вы можете добавить одну из следующих вещей, чтобы ядро загружалось в однопользовательском режиме.
- одинокий
- инициализация=/bin/sh
- 1
Строка будет выглядеть примерно так:
kernel /vmlinuz-2.6.15-27-386 root=/dev/mapper/Ubuntu-root ro init=/bin/bash
В Grub это должно выглядеть примерно так:
После внесения изменений загрузите ядро (нажмите клавишу b).
Это даст вам временный доступ к системе с оболочкой, где вы можете использовать vi/vim для внесения любых изменений в ваш /etc/passwd
файл. Просто введите, reboot
когда закончите.
решение3
Если машина подключена к сети и у вас есть учетная запись, войдите в систему удаленно. Если вы хотите перезагрузиться, вам понадобится доступ root (через sudo, su или что-то еще).
Если у вас есть учетная запись и вы присутствуете физически, переключитесь на другую виртуальную консоль с помощью Ctrl+ Alt+ F1(или F2и т. д.). Вы получите приглашение на вход. Запустите, startx -- :1
если хотите иметь графический интерфейс. Если все, что вы хотели сделать, это поработать на машине, этого достаточно, вы можете поддерживать сеанс другого парня запущенным.
Если у вас есть физический доступ, вы можете инициировать перезагрузку, нажав Ctrl+ Alt+ Delete(это может быть включено или отключено системным администратором, и я не знаю, включено ли это в RHEL по умолчанию). Сначала вам может потребоваться переключиться на текстовую консоль (см. выше). Ctrl+ Alt+ Deleteэквивалентно запуску reboot
от имени root.
Если вам действительно необходимо перезагрузить этот компьютер, и вы физически присутствуете, но не имеете учетной записи, вы можете использоватьмагический ключ Sysrq. Это почти никогда не отключается. Нажмите и удерживайте Alt, затем нажмите SysRqи затем S, и, наконец, отпустите Alt. Повторите с буквами Uи B. Sочищает буферы диска, Uпринудительно отмонтирует файловые системы (помечает их как чистые для целей fsck, но приложения не получают возможности сохранить свои файлы) и Bзапускает жесткую перезагрузку.