Я вручную скопировал файлы с резервного диска моей машины времени и теперь не могу удалить их со своего компьютера.

У меня появился новый компьютер, и я не хотел полностью восстанавливать машину времени, а скорее выбирал, какие файлы я собирался скопировать с диска моей машины времени.

Итак, я зашел в каталог, нашел нужные мне файлы и сделалcp -Rpv dir /Users/username/dir

Тем не менее, -Pон сохранил те же разрешения, что и файлы на машине времени. chmod -R 777 dirне работает, как и сброс разрешений из настройки «получить информацию» -> «общий доступ и разрешения».

Как я могу получить разрешения для каталога обратно на что-то, что позволит мне удалить каталог?

Ответы (2)

Я разобрался. Во-первых, вам нужно посмотреть ACL, которые были скопированы вместе с файлами.

ls -le /path/to/dir

Как только вы это сделаете, вы увидите, что все было так:

0: group:everyone deny write,delete,append,writeattr,writeextattr,chown

Итак, что я сделал, так это добавил новую политику ACL в каталог, выполнив следующие действия:

chmod -R +a "admin allow read,readattr,readextattr,readsecurity" dir 

С последующим:

sudo rm -rf dir
Добро пожаловать в Спроси Разное! Спасибо, что вернулись, чтобы поделиться своим решением. Это помогает сделать сайт действительно полезным для других. :)

другой вариант:

chmod -R -a "group:everyone deny add_file,delete,add_subdirectory,delete_child,writeattr,writeextattr,chown" /path/to/dir

Это удаляет ACL, а не добавляет его. Полезно, если вы собираетесь сохранить файлы и не удалять их.