Я попытался переместить несколько файлов в подпапку на OS X. Один отказался переместить. Это сказал Operation not permitted
. Я попробовал еще раз как root:
$ sudo mv file subfolder/
mv: rename file to subfolder/file: Operation not permitted
$ sudo mv file filex
mv: rename file to filex: Operation not permitted
$ lsattr file
lsattr: Inappropriate ioctl for device While reading flags on file
Я пробовал lsattr
на других файлах; все файлы, которые я пробовал, дали мне одно и то же сообщение:Inappropriate ioctl for device While reading...
Исходя из Linux, я не знал о флагах, поэтому вот вывод ls -leO@ file
:
$ ls -leO@ file otherfile
-rwxrwxrwx 1 eeytan staff uchg 79549 Nov 11 2010 file
-rw-r--r-- 1 eeytan staff - 5071 Sep 7 02:37 otherfile
Я попробовал Дисковую утилиту OS X; он сказал, что на моем диске не было ошибок. Что тут происходит?
macos
permission
filesystem
unix
eje211
источник
источник
lsattr
не является стандартной командой OS X; попробуйтеls -leO@
вместо. Кроме того, на каком объеме находится файл? Попробуйтеmount
посмотреть, с какими атрибутами смонтирован том.Ответы:
Похоже, файл заблокирован для меня, поэтому атрибут uchg появляется. Вы должны использовать следующую команду для удаления заблокированного атрибута:
или щелкните правой кнопкой мыши файл в Finder, нажмите «Получить информацию», затем снимите флажок «Заблокировано»
источник
Для людей , наткнуться на это в эпоху OS X 10.11+ (El Capitan или новее): Apple , добавил целый новый уровень безопасности в OS X . Они отняли некоторые привилегии у root. Файл, который вы пытаетесь изменить, имеет
restricted
флаг. Толькоrestricted
процессы, подписанные Apple, смогут изменять эти файлы. Тем не менее, вы можете отключить эту систему безопасности, загрузившись в режиме восстановления и отключить его в терминале, выполнив:csrutil disable
.Кроме того, вы также можете просто запустить Терминал в режиме восстановления и удалить файл там. Или даже попробуйте загрузиться в среде Linux с поддержкой HFS + (по крайней мере, если вы еще не используете APFS), чтобы изменить файл.
источник
Пытаться:
на каталог более высокого уровня, чтобы остановить эту проблему.
источник
zsh: locking failed for /Users/me/.zhistory: operation not permitted: reading anyway
и выполнение этой команды в моем домашнем каталоге исправило ееУ меня был файл, который я не мог удалить в терминале:
Для меня работало открытие Finder и удаление целого каталога. Насколько я понимаю, Finder удаляет каталоги как единое целое, не обращая внимания на их содержимое, поэтому на него не распространяются те же ограничения, что и на обычные
rm -rf
.источник
У меня тоже была эта проблема, и я обнаружил, что папка, в которой находился файл, была заблокирована. Поэтому убедитесь, что это не так. Сделайте «получить информацию» о папке в поисковике и убедитесь, что заблокированный флажок не установлен.
источник
Я понимаю, что это очень старая тема, но я не вижу этой темы, касающейся моего симптома, поэтому я решил опубликовать другое мнение.
У меня было такое с внешним диском, который отлично работал на Snow Leopard iMac, который по пути был обновлен до El Capitan. Ранее в этом году я взял этот диск и поместил его в новую коробку Windows 10, на которой работала Paragon HFS for Windows. Я скопировал сотни ГБ файлов из Windows TO HFS + на этот диск и подключил его обратно в iMac. Все работало нормально, за исключением одного сценария оболочки, который у меня был, когда поставленные файлы для резервного копирования столкнулись с этой проблемой.
Вкратце: файлы и папки, созданные в El Capitan или Windows 10 с использованием Paragon HFS, при перемещении обратно в окно Snow Leopard «заблокированный» переключатель не будет отмечен при выборе
Get Info
в Finder. Тем не менее, другие предложения работали хорошо для меня:ls -leO@
(это заглавная буква) в файле с подозрениемchflags -R nouchg
в родительском каталоге (в Snow Leopard нет -f)Это будет работать, только не ожидайте точно таких же визуальных подсказок, если ваш диск работал между операционными системами или если вы используете Paragon HFS.
источник