sudo env】的更多相关文章

$ sudo echo "Defaults        env_keep=\"PATH PYTHONPATH LD_LIBRARY_PATH CAFFE_ROOT\""  >> /etc/sudoers $ sudo sed -i -e "s/^\(Defaults    secure_path.*\)$/# \1/" /etc/sudoers $ sudo -E -H command…
将/etc/sudoers 中Defaults env_reset改成Defaults !env_reset取消掉对PATH变量的重置, 然后在/etc/bash.bashrc中最后添加alias sudo='sudo env PATH=$PATH',这样sudo执行命令时所搜寻的路径就是系统的PATH变量中的路径,如想添加其他变量也是类似. 在运行source /etc/bash.bashrc…
事出有因, 源自使用源码编译 nginx , 在 /usr/local/sbin/ 目录下创建了nginx 启动的符号链接 , 执行 sudo nginx 的时候提示找不到命令, 但是使用普通用户身份和root用户身份执行的时候均能找到命令. 猜测原因可能出在 $PATH 环境变量上. 于是执行 sudo env 发现 PATH 果然有问题 , /usr/local/sbin/ 不在 PATH 里. 搜了一下 , 发现原因是这样的. 在 /etc/sudoers 这个文件中有一项是 secure…
通过sudo -l来查看sudo的限制: $ sudo -l Matching Defaults entries for xxx on this host: env_reset, mail_badpass,secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin User xxx may run the following commands on this host: (ALL : ALL) NOP…
1-问题:Ubuntu下执行sudo pip install package-name 出现 sudo: pip: command not found 的问题. 2-原因:编译sudo的时候加入了–with-secure-path 选项.3-解决:在环境配置文件里加一个alias (1) vi ~/.bashrc 添加内容:alias sudo='sudo env PATH=$PATH' (2)source ~/.bashrc 再次执行安装…
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…
sudo有时候会出现找不到命令,而明明PATH路径下包含该命令,让人疑惑.其实出现这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因为系统安全的考虑,但却使得sudo搜索的路径不是我们想要的PATH变量的路径,当然就找不到我们想要的命令了.两种方法解决该问题: 首先,都要打开sudo的配置文件:sudo visudo 方法1:可以使用 secure_path 指令修改 sudoers 中默认的 PATH为你想要的路径.这个指令指…
最近刚装好linux的虚拟机,在装一个套件时提示权限不足,于是添加上了 sudo 命令,结果直接报以下错误, Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> from pip import mainImportError: cannot import name main 原来是环境变量设置的问题,后来看到了 @雪地里的Alan 的解决方案,正好就是这问题的,写下随笔方便以…
编辑文件 /etc/sudoers sudo vi /etc/sudoers 将Defaults env_reset ,改为 Defaults    !env_reset 编辑文件-/.bashers sudo vi .bashrc 添加 alias sudo='sudo env PATH=$PATH' 之后 source ~/.bashrc OK,这就好了…
现象,我在/etc/profile里设置全局代理,然后使用命令 1.curl http://www.baidu.com  走代理 2.sudo curl http://www.baidu.com 并没有走代理 使用env和sudo env查看环境变量,发现代理设置只存在于env里,sudo env里并没有代理的信息 那么如何使用sudo的时候,把环境变量也带进去呢? 方法一. 在/etc/sudoers中添加以下内容作用相同: Defaults !env_reset 方法二. 可以把需要传递环境…