一般人可能不太常用 sudo 指令,但有时候你因为要修改某些设置,然后参考了网络上的教程时,遇过以下的状况:
- 想改 Mac 系统配置,结果 Terminal 跳出「请输入密码」?
- 安装 Homebrew、Node.js 等开发工具,结果一直要打 sudo 密码?
- 明明自己是管理员,却还要输入一串超长密码来确认权限?

其实,这些时候你都可以直接用 Touch ID 来解锁,而不是输入密码! 甚至如果你是每天都在跑 Terminal 的工程师来说更要这样做,不只加快你的速度,还更安全!
接下来,就教你如何让 Mac 用 Touch ID 来验证 sudo 管理员权限,不用再输入密码,而且设置一次就能永久使用!
为什么用 Touch ID 来验证比较安全?
每次输入sudo密码,都有潜在的密码被偷看、偷录的风险,但Touch ID的指纹验证是本地处理,不会存到iCloud或传输到Apple服务器,加上AES-256加密,就算黑客想偷,也无从下手。
所以,把sudo密码改成 Touch ID,不只更方便,还能降低密码泄漏的风险!
如何开启 Touch ID 验证 sudo 指令?
这个方法适用于 macOS Catalina 10.15 之后的所有版本,只要你的 Mac 右上角有 Touch ID 指纹传感器,或是使用带有 Touch ID 的巧控键盘,就能用。
建立新的 sudo 认证文件
为了避免系统更新时设置被覆盖,我们先复制 配置文件,创建一个新的 文件 :sudo
sudo_local
sudo cp /etc/pam.d/sudo_local.template /etc/pam.d/sudo_local

编辑 sudo_local 文件
打开此文件 :
sudo nano /etc/pam.d/sudo_local
启用 TouchID 验证
在文件内,找到包含pam_tid.so
的那一行,将符号移除,然后按下control+x,再按y选择yes,再按Enter储存文件。 如果有提示需要权限的话,选择「允许」。#

测试结果
开启新的Terminal窗口,输入任何指令,看看触发sudo的时候是不是已经改成通过 Touch ID 认证了。 例如:sudo
sudo ls

如何改回用密码验证sudo权限
万一你不习惯用 Touch ID,也可以随时改回原本的密码方式,只要重新编辑 sudo_local
文件,把刚刚取消注解的 那一行最前面加回 注解即可。pam_tid.so
#
sudo nano /etc/pam.d/sudo_local
不论你是偶尔还是经常用sudo,这招都值得学!
就算你不是开发者,还是偶尔会遇到要输入 sudo 密码的情境,像是:
- 安装 Homebrew、Node.js、Python 等工具
- 修改 macOS 系统设置(比如打开隐藏文件显示)
- 清理系统缓存
这些时候,有 Touch ID 验证就能省下输入密码的麻烦,还能提升安全性! 如果你是 Terminal 重度用户,那这更是必学的神技! 赶快设置起来,从此告别输入 sudo 密码的烦恼吧!