一条命令让您的 macOS 用 Touch ID 授权 sudo

本贴最后更新于 2548 天前,其中的信息可能已经时移俗易

前言

经常使用命令行的小伙伴一定对 sudo 命令不陌生,它可以以特定用户身份执行特定的命令。很多时候我们也会用它来执行系统管理命令。

但是,每次以非 root 身份执行 sudo 时,都必须输入密码。这种操作对于配备 Touch ID 的 MacBook Pro 用户肯定多少有些不爽的。

我也因为这个问题而不爽了好久,如果能够通过刷指纹验证 sudo,那该有多爽啊!

前一个星期非常偶然地看到一篇文章,介绍了如何使用 Touch ID 来验证 sudo 命令。

这篇文章顿时让我激动不已,马上尝试了一下,果然非常爽!好东西不敢独享,于是我把它整理成了一条命令,方便大家使用。


系统环境

由于系统的功能是随着升级而不断变化的,所以不保证长期有效。

  • 机型:MacBook Pro 15" 2017
  • 系统:macOS 10.13.1

操作方法

打开“终端”,执行以下命令:

sudo sed -i ".bak" '2s/^/auth       sufficient     pam_tid.so\'$'\n/g' /etc/pam.d/sudo

然后输入您的管理员密码,回车,大功告成了!不用重启哦 ~

命令说明

  • 该命令的作用是把 /etc/pam.d/sudo 备份为 /etc/pam.d/sudo.bak,然后在 /etc/pam.d/sudo 的第二行前面加入 auth sufficient pam_tid.so 这个字符串。

  • 修改该文件的目的是在 sudo 程序的认证过程前面插入 Touch ID 验证的模块。感兴趣的小伙伴可以去了解一下 PAM 架构

  • 如果需要恢复原文件,请执行:sudo mv /etc/pam.d/sudo.bak /etc/pam.d/sudo


效果

打开终端,执行 sudo su,然后就可以刷指纹啦,爽歪歪 ~

下面是 Touch Bar 的提示。

有小伙伴可能会担心远程登录(如 SSH)会不会依然要求刷指纹,我试了一下,是不会的,请放心使用!

来自:少数派

  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    166 引用 • 595 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
tuchief
学习这件事,不在乎有没有人教你,最重要的是在于你自己有没有觉悟和恒心 厦门