Серьезный вопрос, человек, есть ли способ отменить это.
Кейси Флинн
3
Разрешения 777 почти никогда не являются решением проблем с разрешениями. Это может помочь вам справиться с проблемой, но это редко хорошая идея, даже если она ограничена каталогом глубоко в вашей дисковой системе. Это катастрофа, когда она применяется ко всем файлам и каталогам в корневом каталоге, не в последнюю очередь потому, что она пытается удалить биты SUID из таких программ, как «sudo», которые в них нуждаются. Не делай этого снова! (Многие пользователи Unix могут потрогать вас историей об аналогичной ошибке; я не буду вас беспокоить, но резервные копии системы спасли день, и не я набрал команду, которая достигла цели rm -fr /.)
Джонатан Леффлер
2
Пусть это станет уроком для всех о том, почему мы sudoпродолжаем думать о том, прежде чем печатать, когда вы впервые его используете. ;-)
Скотт
Сделайте ls -lR / >listна здоровой системе (или попросите кого-нибудь еще для списка). Вы можете автоматизировать этот процесс, чтобы переустановить разрешения (если это Dirk Utility Repair не сработает).
ot--
Вкладка
Автозаполнение
Ответы:
9
Взгляните на функцию восстановления прав доступа к диску Disk Utility от Apple:
Это не отменит ваши изменения, но должно исправить большинство проблем из-за неправильных настроек разрешений.
kylex
Это восстановит мою программу sudo?
Кейси Флинн
@Casey - В чем проблема с sudo? sudo просто позволяет запускать команду от имени пользователя root. то есть. обходит многие ограничения безопасности.
kylex
1
@kylex: он, вероятно, отказывается работать, так как / etc / suoers можно переписать во всем мире :) Хорошая мысль
sehe
4
Судо, вероятно, отказывается работать, потому что ему нужно установить бит масти, и, рекурсивно изменяя все в режим 777, OP удалил бит suid в sudo (и во всех других привилегированных программах). Без установленного бита suid sudo не может получить повышенные привилегии и, следовательно, не может предоставить вам доступ, отличный от того, который у вас уже есть. Если у Дисковой утилиты нет альтернативного механизма получения повышенных привилегий, Кейси, вероятно, придется организовать вход в систему как root.
Большинство пользователей Mac OS X не имеют намеренно измененных привилегий и просто нуждаются в утилите для сброса системных привилегий до их правильных значений по умолчанию. Если у вас Mac OS X 10.2 и выше, эта утилита включена в операционную систему. Если у вас Mac OS X 10.1, вы можете скачать его. Для версий с 10.0 по 10.1.4 вы должны сначала выполнить обновление до версии 10.1.5.
Для Mac OS X 10.2 или более поздней версии откройте Дисковую утилиту (/ Applications / Utilities /). Выберите загрузочный том Mac OS X в столбце слева от окна «Дисковая утилита» и перейдите на вкладку «Первая помощь». Нажмите кнопку Восстановить права доступа к диску. Вы можете увидеть ошибочное сообщение.
Разрешения на восстановление включают файлы, которые были созданы установщиком OS X (например, / etc / sudoers), но не включают файлы, которые не были предварительно установлены или не созданы пакетами.
Вероятно, проще сделать резервную копию всего, выполнить чистую переустановку и выборочно восстановить файлы из резервной копии (или резервных копий). Вы можете восстановить 644/744 разрешения с помощью команды find:
find /Volumes/Second\ Backup -type f -exec chmod 644 {} \+
find /Volumes/Second\ Backup -type d -exec chmod 744 {} \+
Если вы не можете выполнить резервное копирование файлов, попробуйте запустить из раздела восстановления (или с установочного носителя версии 10.6 и более ранних) и клонировать основной диск OS X из Дисковой утилиты.
Если есть какие-то инструменты для отмены разрешений, и люди предлагают это, вам лучше сначала воспользоваться этим, sudo chmod -R 777 / в противном случае вы можете сделать это, вернув все разрешения на более безопасный уровень, такой как
chmod -R 644
а затем измените разрешения до необходимого уровня, когда возникает конфликт.
-
Но это не очень хороший способ. Просто какой-то более безопасный подход, чтобы не испортить ваши файлы, прежде чем может случиться что-то худшее :(
rm -fr /
.)sudo
продолжаем думать о том, прежде чем печатать, когда вы впервые его используете. ;-)ls -lR / >list
на здоровой системе (или попросите кого-нибудь еще для списка). Вы можете автоматизировать этот процесс, чтобы переустановить разрешения (если это Dirk Utility Repair не сработает).Ответы:
Взгляните на функцию восстановления прав доступа к диску Disk Utility от Apple:
http://support.apple.com/kb/HT1452?viewlocale=en_US
источник
С http://support.apple.com/kb/HT2963 :
источник
Тебе повезло
Он не исправит все, но исправит все, что указано в файле спецификации для установленного пакета.
источник
Разрешения на восстановление включают файлы, которые были созданы установщиком OS X (например, / etc / sudoers), но не включают файлы, которые не были предварительно установлены или не созданы пакетами.
Вероятно, проще сделать резервную копию всего, выполнить чистую переустановку и выборочно восстановить файлы из резервной копии (или резервных копий). Вы можете восстановить 644/744 разрешения с помощью команды find:
Если вы не можете выполнить резервное копирование файлов, попробуйте запустить из раздела восстановления (или с установочного носителя версии 10.6 и более ранних) и клонировать основной диск OS X из Дисковой утилиты.
источник
Если есть какие-то инструменты для отмены разрешений, и люди предлагают это, вам лучше сначала воспользоваться этим, sudo chmod -R 777 / в противном случае вы можете сделать это, вернув все разрешения на более безопасный уровень, такой как
а затем измените разрешения до необходимого уровня, когда возникает конфликт.
-
Но это не очень хороший способ. Просто какой-то более безопасный подход, чтобы не испортить ваши файлы, прежде чем может случиться что-то худшее :(
источник
chmod -R 644
сделает все каталоги недоступными для поиска. Было бы трудно оправиться от этого.