系统初始化与安全边界
拿到一台新的 Mac 或刚刚重装完系统后,苹果默认的配置是偏向大众家庭用户的。对于极客和开发者来说,第一步是校准系统底层交互,并摸清 macOS 独特的权限与安全模型。
1. 触控板黄金设置:开启三指拖移与轻点点按
macOS 的触控板体验冠绝 PC 领域,但苹果默认关闭了两个最神仙级的交互功能:
1.1 轻点来点按 (Tap to Click)
默认情况下你需要真正把触控板“按压”下去才算点击,不仅手指累,而且会有物理噪音。
- 路径:
系统设置->触控板-> 开启 轻点来点按。
1.2 三指拖移 (Three-finger Drag)
不需要用食指重压触控板再滑动,只需要将三根手指轻轻放在触控板上划过,即可拖动任何窗口、选中任何文本。这是几乎所有资深 Mac 用户最离不开的功能。
- 路径:
系统设置->辅助功能->指针控制-> 点击右下角 触控板选项... -> 打开 使用触控板拖移 -> 拖移样式选择 三指拖移。
2. 驯服 Gatekeeper:彻底搞定“应用已损坏”弹窗
从 GitHub、Homebrew 或开发者官网下载无公证(Notarized)的开源软件时,macOS 经常弹出:
"「xxx」已损坏,无法打开。你应该将它移到废纸篓。"
这通常不是软件真的损坏,而是 macOS 的 Gatekeeper 安全机制拦截了未向苹果付费做公证的开源二进制文件。
2.1 全局解法:开启“允许任何来源”
打开终端,执行以下命令:
sudo spctl --master-disable输入锁屏密码后回车。此时进入 系统设置 -> 隐私与安全性,在“安全性”分栏下,你将看到已经多出了 「任何来源」 选项并已默认选中。
2.2 精准解法:剥离隔离属性 (Quarantine)
macOS 会给网络下载的每一个文件打上名为 com.apple.quarantine 的扩展属性。如果某个 App 在开启“任何来源”后依然打不开,直接剥离其隔离属性即可:
# 递归清除指定应用的隔离属性
sudo xattr -rd com.apple.quarantine /Applications/TargetApp.app3. 深入理解 SIP (系统完整性保护)
3.1 什么是 SIP?
SIP (System Integrity Protection) 是 Apple 在 OS X El Capitan 引入的“Rootless”安全机制。 它限制了哪怕是 root 权限的进程,也无法对关键系统目录(如 /System、/usr、/bin、/sbin)进行写入,同时禁止非授权程序进行代码注入(Task Port Inspection)或调试受保护的系统进程(如 WindowServer / Dock)。
3.2 到底需不需要关闭 SIP?
答案:绝对不建议关闭!
- 过时观点:过去许多 Linux 用户玩 Mac 平铺窗口(如旧版 Yabai),为了实现无动画桌面切换和窗口自动吸附,必须进入 Recovery 模式关闭 SIP,甚至注入 Dock 进程代码。
- 现代方案:现代的优秀平铺窗口管理器(如 AeroSpace)完全基于 macOS Accessibility API 构建,在 100% 保持 SIP 开启的情况下就能实现极速、稳定的树形平铺与工作区切换。
- 关 SIP 的代价:在 Apple Silicon (M 系列芯片) 下,关闭 SIP 会降低系统的安全启动等级(降至 Permissive Security),导致 Apple Pay 禁用、iOS 侧载支持受限、以及大版本更新时极易出现系统崩溃。
TIP
遵循本指南的所有配置与工具链(包括平铺桌面、终端 Rice、快捷键映射),全部不需要关闭 SIP,既能享有极致生产力,又能保留纯正的硬件级系统安全。
4. 辅助功能与完全磁盘访问权限避坑
macOS 的现代权限体系是很多 CLI 与自动化工具“莫名其妙报错”的重灾区:
- 辅助功能 (Accessibility):
- 像 AeroSpace、Raycast、Karabiner-Elements 这类需要监听全局击键或移动窗口的软件,必须拥有此权限。
- 完全磁盘访问权限 (Full Disk Access):
- 推荐为你日常使用的终端(如 Ghostty、Kitty、iTerm2)以及备份工具(如 Chezmoi)授予完全磁盘访问权限。否则你在终端中执行
ls ~/Library/Mail或某些目录时会报错Operation not permitted。
- 推荐为你日常使用的终端(如 Ghostty、Kitty、iTerm2)以及备份工具(如 Chezmoi)授予完全磁盘访问权限。否则你在终端中执行
- 系统更新权限“假死”陷阱:
- macOS 每年大版本更新后,偶尔会出现“设置里权限已开启,但软件依然提示没有权限”的 Bug。
- 排查方法:进入
系统设置->隐私与安全性-> 找到对应权限,选中该应用点击底部的-(减号) 彻底移除,然后重新打开该应用重新授权即可。