Linux记录-普通用户下执行sudo xxx 找不到命令解决方案

时间:2021-10-19 18:48:13

chmod 777 /etc/sudoers 

vim /etc/sudoers 

1.可以使用 secure_path 指令修改 sudoers 中默认的 PATH为你想要的路径。这个指令指定当用户执行 sudo 命令时在什么地方寻找二进制代码和命令。这个选项的目的显然是要限制用户运行 sudo 命令的范围,这是一种好做法。
2.将Defaults env_reset改成Defaults !env_reset取消掉对PATH变量的重置,然后在.bashrc中最后添加alias sudo='sudo env PATH=$PATH',这样sudo执行命令时所搜寻的路径就是系统的PATH变量中的路径,如想添加其他变量也是类似。

chmod 440 /etc/sudoers

--------------------------------------------------------------------------------------------------------------------------

sudo 命令,为非根用户授予根用户的权限

配置文件是/etc/sudoers,此文件有权限限制,而且有格式要求,万一改错会比较麻烦。使用visudo可以容易配置。

1.输入命令

sudo visudo

字段说明:

root :能使用sudo命令的用户

后面第一个ALL,允许使用sudo的主机

第二个括号里的ALL为使用sudo后以什么身份来执行命令(目的用户身份)

第三个字:ALL为以sudo命令允许执行的命令

test ALL =(root)/usr/sbin/useradd

意思就是允许test从任何主机登陆,以root的身份来执行/usr/sbin/useradd命令。

界面最下方有操作的快捷方式。

ctrl+o 保存

ctrl+x 退出。