有些文件夹需要root权限才能访问,可以通过直接修改文件夹权限的方法来让普通用户能够运行,但是这样既麻烦又不安全。
想用sudo python xxx.py
来运行,发现提示找不到python指令,这是因为root没有安装python环境
vim /etc/sudoers
发现
Defaults env_reset
系统默认在sudo过后环境就重置了,改为
Defaults !env_reset
然后, 切换回普通用户如用户名为xx, 编辑用户根目录下的配置文件~/.bashrc
# su username
$ vim .bashrc
在文件内最后追加
alias sudo='sudo env PATH=$PATH'
最后
source .bashrc
但是我再操作的时候,发现这样做每次打开新终端都要重新source一下.bashrc,查看资料后发现系统每新建一个终端会运行.profile
中的配置,要在这个文件中指定运行.bashrc
才行
参考代码:
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
我修改后发现依然无效,在家目录ls -a
发现有.bash_history
等文件,可能是因为系统改为使用.bash_profile
而不是.profile
,新建一个.bash_profile
文件,加上上述代码,运行成功。
这是因为我是新建的,bashrc文件,并没有对应的.
我的shell不是加载.profile吗?在里面加入了source 也没有用