macOS如何sudo免输入密码

每次使用 sudo 时都要输入密码,太过繁琐。想能像在 Linux 中一样,配置下 /etc/sudoers 文件就能免输入密码,可以一劳永逸。

操作

  1. 先给/etc/sudoers文件加修改权限 sudo chmod u+w /etc/sudoers

  2. 修改配置 sudo vim /etc/sudoers中的 %admin 行,如下:

    1
    2
    3
    4
    5
    6
    7
    # root and users in group wheel can run anything on any machine as any user
    root ALL = (ALL) ALL
    %admin ALL = (ALL) NOPASSWD:ALL

    ## Read drop-in files from /private/etc/sudoers.d
    ## (the '#' here does not indicate a comment)
    #includedir /private/etc/sudoers.d
  3. 修改完成后,将文件的权限恢复回去 sudo chmod u-w /etc/sudoers

至此,就可以愉快的输入 sudo 了。

插曲

macOS管理员用户无法使用sudo命令该如何解决?

一开始 %admin 那行的配置写错了,导致当前管理员用户不能使用 sudo 了!当时想了几种解决方法:

  1. ❌ 新建管理员用户,以新用户登陆进去尝试修正/etc/sudoers文件。

    后面发现管理员用户也属于 admin 组,所以现在只有 root 用户能修改此文件。

  2. ❌ 使用 su 切换到 root 用户。

    由于之前没有设置过 root 密码,所以不知道 root 密码,切换不了 root 用户。

  3. ❌ 进入某个能挂载 APFS 文件系统的外挂系统中,挂载整个 macOS 的系统磁盘,然后修改 /etc/sudoers 文件。但是没想到有手头设备能做到。

  4. 进 Mac 的 Recovery,然后直接改 /etc/sudoers 文件

果然修改这种本来不让修改的文件,确实可能会遇到预期之外的问题,挺有意思的。

作者

遇寻

发布于

2023-01-07

更新于

2023-01-07

许可协议

评论