Я видел, как это сделать в Linux, но есть ли способ сделать это в OSX?
Я случайно запустил chmod -R 777 /
Ищу как это отменить. Спасибо
Вы не сможете исправить это для всего.
Первое предложение:
В Дисковой утилите (Приложение -> Утилиты -> Дисковая утилита) запустите «Восстановить права доступа к диску», обратите внимание, что это исправит только приложения и файлы уровня СИСТЕМЫ. OSX поддерживает ожидаемый файл состояния разрешений и ссылается на него, когда вы проверяете / восстанавливаете права доступа к диску.
Опять же, это восстановит самые важные вещи, но не приложения / файлы, которые вы поместили туда сами, или содержимое вашего домашнего каталога и т. Д.
Второе предложение:
Сделайте резервную копию того, что важно, переустановите.
Невозможно "отменить" команду chmod, или просто выполнить заведомо исправную установку и проверить / воспроизвести разрешения. Самый простой выход для вас - полная переустановка.
Как говорит Джейсон, Disk Utility должна получить большую часть работы ОС. В остальном, возможно, вы могли бы принять значения по умолчанию 644 для файлов, 755 для каталогов, за исключением / Users, где 600 и 700 могут быть более подходящими? Это не приведет к тому, что все будет в точности так, как было, но должно поддерживать работу большинства вещей, и вы можете исправить особые случаи по мере их обнаружения.
Вероятно, лучший заказ был бы
chmod -R 644 /
# Установите все для чтения / записи владельца, другие читают
chmod -R a+X /
# Добавить выполнение для всех в каталогах
Затем запустите Дисковую утилиту, чтобы она исправила все, что может, поверх этих базовых разрешений.
Я предполагаю, что Дисковая утилита будет делать такие вещи, как создание исполняемого файла / bin.
Все это слетело с ума и непроверено; Я бы рекомендовал протестировать chmods на небольшом поддереве, прежде чем запускать их на весь диск.
Если вы можете переустановить, это может быть лучше для долгосрочного спокойствия. Я бы с удовольствием выполнил такой кладж на одном из своих тестовых боксов, но, возможно, не на моей личной рабочей станции.
Пит