rm file "Operation not permitted" even when sudo

8,948

First: This is normal. .pyc files are precompiled Python files. They contain the same data as the .py files adjacent to them. If you are having problems with the random module, you are probably doing something else wrong, and you should probably ask a question about your code on Stack Overflow.

More generally: You cannot, and should not, modify files under the /System directory. They are part of the operating system -- modifying them will cause your computer to work incorrectly.

macOS prevents system files from being modified (other than by system updates) using a mechanism called System Integrity Protection, or SIP. It is possible to disable SIP, but this should generally not be necessary, even for developers.

Share:
8,948

Related videos on Youtube

pfych
Author by

pfych

Always looking to improve and learn new things because there is always something new to learn.

Updated on September 18, 2022

Comments

  • pfych
    pfych almost 2 years

    Im working with python 2.7 and I was having import errors with random, So I checked the path and noticed it was using random.pyc instead of random.py

    I tried to remove the file but it won't work.

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

    and rm -R gives me this error even when I say y

    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
    

    What should I do?

    Edit: My whole "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/" is full of .pyc and .pyo files and import doesn't work on any of them (unless I use idle)

    • Spiff
      Spiff almost 7 years
      What version of macOS? It's probably SIP if you're on El Capitan or later.