Linux下sudo执行命令时profile无效的问题
2013-03-19 00:12
483 查看
刚才写hadoop安装的时候,发现sudo执行命令时,原本设置在prifile里面的PATH等设置全部都失效了,man了一下sudo的参数发现sudo的执行有-i和-s的区别,
-s是用当前的上下文,只能用一些原生命令,语句执行的当前目录仍然是当前用户的操作目录。而-i则是重新开启了一个登陆过程,他会触发/etc/profile以及用户自身的.profile等脚本的执行,并且语句执行的当前目录已经被更改为目标用户的主目录。 加上-i 后恢复正常。
另外说一点的是,不论-s还是-i,命令中$引用的环境变量全部来源于当前用户,Linux命令行应该是先进行代码的文本替换再执行代码,这点就类似以前学C的宏了。
-s是用当前的上下文,只能用一些原生命令,语句执行的当前目录仍然是当前用户的操作目录。而-i则是重新开启了一个登陆过程,他会触发/etc/profile以及用户自身的.profile等脚本的执行,并且语句执行的当前目录已经被更改为目标用户的主目录。 加上-i 后恢复正常。
另外说一点的是,不论-s还是-i,命令中$引用的环境变量全部来源于当前用户,Linux命令行应该是先进行代码的文本替换再执行代码,这点就类似以前学C的宏了。
相关文章推荐
- VMware 虚拟机 linux执行 ifconfig 命令 eth0没有IP地址(intet addr、Bcast、Mask) UP BROADCAST MULTICAST 问题
- linux执行sh文件时候 cd命令总是提示对应文件不存在的问题
- [原创]解决ExcuteFile执行命令时出现“无效字符”的问题
- Runtime exec 执行linux find 命令时 引号问题
- 解决ExcuteFile执行命令时出现“无效字符”的问题
- VMware 虚拟机 linux执行 ifconfig 命令 eth0没有IP地址(intet addr、Bcast、Mask)问题
- 解决ExcuteFile执行命令时出现“无效字符”的问题
- Linux下把在特定路径下执行的命令转变成任何目录都可以执行的问题
- 关于zabbix执行linux远程命令未生效问题
- sudo命令_Linux sudo 命令用法详解:以其他身份来执行命令
- 通过sudo解决php执行linux脚本的权限问题
- 解决linux系统不能使用方向键执行命令的问题
- Ubuntu 解决:当执行`sudo apt-get update`命令时 出现的 “apt-get 404 Not Found Package Repository Errors” 问题
- Linux:普通用户不能执行ifconfig命令问题
- Linux 下Crontab 里的命令无法执行的问题
- Linux中sudo执行网络代理的命令
- Linux下执行一些命令前加sudo时出现command not found的原因
- Linux下执行一些命令前加sudo时出现command not found的原因
- Ubuntu 解决:当执行`sudo apt-get update`命令时 出现的 “apt-get 404 Not Found Package Repository Errors” 问题
- linux环境变量设置 以及 source命令 Linux 之 /etc/profile、~/.bash_profile 等几个文件的执行过程 Linux 设置环境变量