ubuntu设置sudo/su免密
目的
在 Ubuntu 22.04 下,执行的时候不需要输入密码
1 | sudo su - |
方法 1:为当前用户配置免密 sudo(推荐)
因为 sudo su - 实际上就是执行 sudo,只要你对自己的账户配置了免密 sudo,就能做到免密 sudo su -。
步骤:
编辑 sudoers 配置:
1
sudo visudo
在文件末尾加一行:
1
your_username ALL=(ALL:ALL) NOPASSWD:ALL
把
your_username替换为你的用户名。保存退出。
现在再执行:
1 | sudo su - |
就不会要密码了。
方法 2:只允许免密执行 su -
如果你想更精细化,不让所有命令都免密,而是 仅对 su - 免密:
先确认
su的路径:1
which su
通常是
/bin/su。编辑 sudoers:
1
sudo visudo
增加:
1
your_username ALL=(ALL) NOPASSWD:/bin/su
保存退出。
这样你执行:
1 | sudo su - |
就免密了,但其他 sudo 命令还是需要密码。
⚠️ 注意
sudo su -实际上是用 root 身份登录新 shell,等同于拿到 root 权限。- 在安全要求高的环境(生产、多人登录服务器),建议不要全局免密,而是针对必要命令(如 systemctl、docker、kubectl 等)设置。