Мне удалось испортить разрешения сервера на всем сервере
chown root:root -R /
chmod 777 -R /
Как это исправить? Я не могу войти в систему как root с помощью терминала на этом компьютере, он показывает ошибку «Недопустимый пароль», а SSH показывает ошибку «сброс соединения удаленным сервером»
Примечание: Я пытаюсь переустановить CentOS 7 через USB. но застрял на этапе выбора диска, так как он не позволяет мне выбрать / без форматирования. Этот вопрос объясняет, что делали мои команды. Почему "chmod -R 777 /" деструктивен?
Мне удалось это решить, вот шаги, которые я выполнил.
Чтобы исправить проблему входа в систему root с помощью терминала.
chown root -R /
и chmod 755 -R /
chmod 0700 -R /root/.ssh
После этого вы сможете войти в систему с помощью root
Чтобы исправить права доступа к файлам и информацию о владельцах, используйте эти команды rpm --setperms {packagename}
и rpm --setugids {packagename}
Чтобы исправить всю систему, просто зациклите их подробнее здесь
for p in $(rpm -qa); do rpm --setperms $p; done
for p in $(rpm -qa); do rpm --setugids $p; done
Это исправит разрешения для большинства пакетов.
Если вы не можете войти через SSH, выполните следующие действия.
systemctl restart sshd
Это не удастсяsystemctl status sshd
Он покажет вам файл с неправильными разрешениями chmod 0700 -R /root/.ssh
ИЛИ chmod 0700 your_file_path
С помощью этих шагов мне удалось восстановить все основные службы на моем сервере.
Наконец, чтобы восстановить разрешения по умолчанию для виртуальных хостов, созданных с помощью Plesk. Я использую эту команду, как описано на сайт plesk
# /usr/local/psa/bin/repair --restore-vhosts-permissions
Восстановите из резервной копии или перестройте сервер.