Одна вещь пошла не так, как надо: использование sudo
с той командой. -R
переключатель говорит chmod
для рекурсивной установки полномочий на тот каталог, который является в каждом случае, нерекомендуемое действие (должен, мы называем его: ересь), если Вы не знаете то, что Вы делаете (после того как это произошло со мной, я не давал команду, но неисправный GUI сделал ее, и моя система пошла провод).
Это были только полномочия файла. Затем то, почему делает целую систему, кажется полностью аварийно завершенным?
GNU/Linux очень чувствителен к полномочиям файла, поскольку он был создан с устойчивостью и безопасностью в памяти. То же относится к большинству программ, запущенных в GNU/Linux (т.е. apache2
полномочия пользователя root отбрасываний и использование www-data
, или подобный пользователь и Ваш 700
разрешение не позволило бы его чтению-записи, это владеет файлами).
Почему случается так, что никакие пароли входа в систему не работают теперь?
Как Вы уже упоминаете, пароли входа в систему хранятся в файле в /etc/passwd
и только корень (я предполагаю, что Вы не изменились, это) может считать его, но приглашение ко входу в систему (или вход в систему GUI) использует учетную запись неполномочия, следовательно это не может считать файл.
Но как изменение полномочий подвергало опасности все?
То же, как сказано выше, Linux очень чувствителен к полномочиям файла. Некоторые программы даже проверяют полномочия своих конфигурационных файлов и если они не будут ожидаться, то они не будут работать вообще.
Как я могу вернуться мой и т.д. каталог к его более раннему состоянию?
При использовании ОСНОВАННОГО НА ОБ/МИН дистрибутива это может быть сделано с помощью rpm --setperms
команда, это мучительно вернулось бы один за другим пакеты в подобной Debian системе apt-get --reinstall install
Ваш друг. Другие решения могут быть доступными, но были бы нужны в рабочей системе для него.
Давайте посмотрим, что Вы сделали, полномочия набора в целом / и т.д. dir, как читал/писал/выполнял позволенный только для владельца файла/dir, отклоненного для всех других. Если Вы смущены полномочиями файла, можно читать больше в Википедии: Традиционные полномочия UNIX.
Причина Вы аварийно завершили свою систему, состоит в том, потому что много процессов не могут больше читать свои настройки, неспособность получить доступ к / и т.д. Не будет легко восстановить весь / и т.д. dir к его предыдущему состоянию. Как сделать, который будет зависеть от Вашего дистрибутива, но в основном это означает переустанавливать каждый пакет, который содержит любой файл в / и т.д.
Как быстрый лейкопластырь смочь использовать систему, для фиксации его правильно (переустанавливающий все пакеты с содержанием в / и т.д., как указано выше), Вы могли сделать:
# sudo find /etc -type d -exec chmod 775 '{}' \;
# sudo find /etc -type f -exec chmod 664 '{}' \;
С теми двумя строками Вы будете устанавливать либеральные полномочия во всем / и т.д. dir с чтением-записью, допускавшим владелец и группа, и читать, допускал всех других. Причина двух chmod состоит в том, чтобы установить выполнить бит только на директорах, некоторые процессы будут жаловаться или перестанут работать, несмотря на это, включая любой исполняемый файл в / и т.д., но необходимо смочь сделать переустанавливание, я обрисовал в общих чертах выше.
Знайте, чем, пока Вы не восстанавливаете исходные полномочия, которыми Ваша система будет, по крайней мере, в небезопасном состоянии.
/etc/sudoers
другой.
– Mel Boyce
23.07.2013, 14:51
/etc
не должен быть сделан миром, читаемым никогда! Восстановление от резервных копий, вот почему у Вас есть они (или, вот почему люди убеждали Вас сделать резервные копии).
– tripleee
23.07.2013, 15:49
700 удалил доступ к большому количеству файлов для групп и мировых пользователей (например, файлы теперь имеют rwx------
полномочия). Например, все пользователи должны смочь читать /etc/passwd
. С Вашей установкой только базируйтесь, может теперь читать /etc/passwd
. Много вещей повредятся при повреждении полномочий на файлах в /etc/
непредсказуемыми способами.
Вы могли попытаться восстановить полномочия (предполагающий, что можно все еще переключиться на корень) на основе рабочего сервера, но это подвержено ошибке.
Я предлагаю восстановить /etc/
от резервного копирования, если у Вас есть один (проверка восстановления откладывает полномочия, или, если Ваше решение для резервного копирования поддерживает его, восстановление просто полномочия).