rm файл «Операция не разрешена», даже если sudo


1

Я работаю с Python 2.7, и у меня были ошибки импорта со случайным, поэтому я проверил путь и заметил, что он использует random.pyc вместо random.py

Я пытался удалить файл, но он не будет работать.

sudo rm -rf /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc

и RM -R дает мне эту ошибку, даже когда я говорю у

sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc
override rw-r--r--  root/wheel restricted,compressed for /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc? y
rm: /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc: Operation not permitted

Что я должен делать?

Изменить: весь мой "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/" полон файлов .pyc и .pyo, и импорт не работает ни на одном из них (если я не использую на холостом ходу)


Какая версия macOS? Это, вероятно, SIP, если вы находитесь на El Capitan или позже.
Spiff

Ответы:


4

Первое: это нормально. .pycфайлы - это предварительно скомпилированные файлы Python. Они содержат те же данные, что и .pyфайлы, прилегающие к ним. Если у вас есть проблемы с randomмодулем, вы, вероятно, делаете что-то еще не так, и вам, вероятно, следует задать вопрос о вашем коде в Stack Overflow .

В более общем смысле: вы не можете и не должны изменять файлы в /Systemкаталоге. Они являются частью операционной системы - их изменение приведет к некорректной работе компьютера.

macOS предотвращает изменение системных файлов (кроме системных обновлений) с помощью механизма, называемого System Integrity Protection, или SIP. Можно отключить SIP , но, как правило, в этом нет необходимости даже для разработчиков.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.