Mac 創建/data目錄報錯// Read-only file system 終極解決方案

問題:

java代碼運行,日誌默認寫/data/logs目錄,mac系統提示 只讀文件系統 Read-only file system

macOS Catalina 終端 sudo mkdir -p /data/logs 提示 // Read-only file system

解決辦法:

關閉mac的系統完整性保護 (System Integrity Protection)

1. 禁用 SIP (系統完整性保護)重啟機器,按住 command + R ,進入恢復模式,打開終端,執行
<code>-bash-3.2# csrutil disable  
Successfully disabled System Integrity Protection.  
Pelase restart the machine for the changes to take effect.  
  // 系統完整性保護 已禁用
-bash-3.2#/<code>
2. 重啟電腦後,打開 終端 執行
<code>$ csrutil status  
System Integrity Protection status: disabled.  
// 檢查 系統完整性保護狀態 已禁用  
  
$ sudo mount -uw /  
Password:  
// 掛載寫權限  

$ mkdir ~/data
// 在用戶目錄創建data目錄

$ sudo ln -s ~/data /data
// 將~/data軟鏈接到/data  
// 這一步很重要 
// 如果直接在/下創建data目錄那麼即使關閉了系統完整性保護每次開機依然要掛載寫權限才能對目錄進行寫操作,還要輸密碼很麻煩
// 通過軟鏈接的形式即使再打開完整性保護也一樣可以對/data執行寫操作
  
$ whoami
// 查看你的用戶名

$ sudo chown -R 你的用戶名 /data
// 權限設置/<code>


3. SIP 是避免軟件任意修改或覆蓋任意系統文件或應用,日常還是建議保持開啟狀態的。

目錄創建完成後,我們再次進入到 macOS實用工具 中,運行終端,執行 csrutil enable 命令,開啟 SIP ,重啟電腦即可。

正常進入 終端 執行 csrutil status 查看當前 SIP狀態: 結果顯示 enabled 為打開。


分享到:


相關文章: