Как к SSH после удаленного перезапуска Redhat и переходят к режиму восстановления?

Я должен перейти к режиму восстановления своего поля Redhat, которое работает удаленно на виртуальной машине.

Я использую RedHat 5, 64-разрядный Enterprise Edition.

Я зарегистрирован в поле с помощью SSH. Я могу перезапустить использование команды перезапуска, но я должен знать, смогу ли я к SSH к нему, так как я использую его удаленно и не могу войти в систему через UI.

Настоящая проблема, я сделал a chown -R $USER / на корневом каталоге.

Я пробовал это как пробную версию не понимание последствий, чтобы заставить что-то работать, который так или иначе не работал даже с использованием sudo.

Я уничтожил его середина пути. Но из-за этой глупости я не могу использовать sudo.

Я считал, что могу сделать что-то в спасательном режиме, но я не понимаю, как я вхожу в спасательный режим удаленно. Я не могу переустановить Linux, который не является возможным вариантом.

Есть ли так или иначе, я могу возвратить свои sudo полномочия?

Выполнение этого не работает на данный момент:

chown root:root /usr/bin/sudo
chown: changing ownership of `/usr/bin/sudo': Operation not permitted
sudo chown root:root /usr/bin/sudo
sudo: must be setuid root
4
задан 6 November 2015 в 16:32
3 ответа

Вы не можете использовать ssh в режиме восстановления, так как ssh не будет работать. Вам нужен способ добраться до консоли. Если это виртуальная машина, и у вас есть хост, должен быть способ подключиться к хосту и получить доступ к консоли. Если это такой сервис, как AWS, то вам не повезло, и вам нужно восстановить его каким-либо другим способом, например, создать новый экземпляр и отсоединить корневой том от плохого экземпляра и установить его на новый, чтобы исправить это.

9
ответ дан 3 December 2019 в 02:43

Redhat использует Systemd для запуска / остановки заданий.

Если вы находитесь в режиме восстановления, он использует цели rescue или аварийные цели.

Вам необходимо настроить sshd (и его зависимости) для запуска также на этих уровнях выполнения (= цели в терминологии systemd).

Здесь вы можете найти больше о точной настройке systemd. Также можно использовать некоторые документы Redhat .

0
ответ дан 3 December 2019 в 02:43

Проблема решена, и этот вопрос можно закрыть. Однако я не смог сделать это через ssh. Пришлось выключить экземпляр на виртуальном боксе и перезагрузить его. Выполнение этого через ssh остается открытым для обсуждения.

Как решить проблему, перезагрузив экземпляр rhel5:

1.Boot the system into single user mode (do this by pressing esc on the boot screen. you will get a terminal on the boot screen after doing this)
2.do chmod 0440 /etc/sudoers
Which should look like -r--r----- 1 root root 5882 Nov 19 18:03 /etc/sudoers
3.chown root:root /usr/bin/sudo
4.chmod 4111 /usr/bin/sudo
5.chmod 0440 /etc/sudoers
6.chmod 0770 /var/bin/sudo/$USERNAME (note: you may have to use /var/run/sudo/$USERNAME if /var/bin does not exist)
7.Reboot the machine in runlevel-5. (type init 5)

Это установит для uid значение root и устранит ошибку sudo

0
ответ дан 3 December 2019 в 02:43

Теги

Похожие вопросы