M1 MacBook Air安装Tomcat时创建路径遇权限及只读文件系统错误求助
解决方案:M1 MacBook Air Tomcat路径创建权限问题
错误原因
从macOS Catalina版本开始,系统核心分区(包括/usr这类根目录下的关键路径)默认设为只读挂载,这是系统完整性保护(SIP,System Integrity Protection)的安全限制——哪怕用root权限,也无法直接修改这些系统核心区域,目的是防止恶意软件或误操作破坏系统文件。
为什么不建议执行csrutil disable
关闭SIP会带来明确的副作用:
- 失去系统自带的核心防护,恶意程序更容易篡改系统关键文件
- 后续macOS系统更新可能自动重新开启SIP,导致之前的操作失效,甚至引发兼容性问题
- 部分依赖SIP的系统功能可能无法正常运行
无需关闭SIP的正确操作方案
Tomcat完全不需要安装在系统核心路径中,推荐以下两种安全可行的方式:
方式1:将Tomcat部署在用户主目录
用户主目录(~/,对应/Users/你的用户名/)不受SIP限制,可自由操作:
- 在终端创建Tomcat相关路径:
mkdir -p ~/tomcat/conf ~/tomcat/webapps ~/tomcat/logs - 将Tomcat的文件解压到这个目录下,修改配置文件时直接指向该路径即可
- 启动Tomcat时用普通用户权限执行,无需root
方式2:使用系统允许的可写扩展目录
macOS保留了/usr/local/作为不受SIP限制的系统扩展区域,可通过sudo创建路径:
sudo mkdir -p /usr/local/tomcat
输入你的用户密码即可执行,无需关闭SIP
内容的提问来源于stack exchange,提问作者Dr.Drunstein
相关产品推荐
相关产品推荐

