Linux记录-普通用户下执行sudo xxx 找不到命令解决方案
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 退出。