Mac下操作文件,遇到Operation not permitted


問題:在/usr/lib下操作文件遇到Operation not permitted
  

原因
在Mac OS10.11之后,Apple公司為了提高系統環境安全,引入了一個內核保護措施--SIP(System Integrity Protection,系統完整性保護),又稱Rootless mode機制。
在SIP機制下,系統默認會鎖定/system、/sbin、/usr這三個目錄,即使切換到root用戶也只能查看,不能進行其他操作。
SIP可以有效地防止惡意程序對電腦進行破壞,所以平時建議保持開啟狀態。
 
# 查看SIP狀態
csrutil status
 
目前SIP是啟用狀態
 

解決辦法
1.重啟電腦,進入恢復模式,禁用SIP
    重啟電腦,蘋果圖標亮的時候,同時按住Command+R進入恢復模式。(按擊一次即可,然后等待讀條)
    進入到了恢復頁面,第一欄 -> 實用工具 ->打開終端
    # 關閉保護機制
    csrutil disable
    # 重啟
    reboot
 
2.將根目錄變為可讀寫的(重啟后失效)
    sudo mount -uw /  
    操作成功后,根目錄讀寫功能已開啟,你可以操作根目錄了。
 
    如果執行命令失敗,錯誤如下,則是因為RIP未被禁用。
    mount_apfs: volume could not be mounted: Operation not permitted
    mount: / failed with 77    
 
3.最后,重啟電腦到恢復模式,啟用SIP
    # 開啟保護機制
    csrutil enable
    # 重啟
    reboot
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM