一、问题描述
使用源码部署Nginx时,使用sudo Nginx提示command not found,但是直接使用Nginx会导致权限问题。
这种情况应该是环境变量导致的。切换到普通用户,使用 env |grep PATH 和 sudo env |grep PATH 发现两者变量值不一样。
二、解决方案
1 修改/etc/sudoers文件中的env_reset参数
在env_reset前加!号
2 修改.bashrc文件
在该文件加入以下配置:
alias sudo='sudo env PATH=$PATH'
3 重新加载配置文件
source ~/.bashrc
三、总结
sudo是一套环境变量,root是一套环境变量,普通用户是一套环境变量。