问题描述
之前在/etc/environment里设置了PATH,并且使用了shell变量(eg. $JAVA_HOME/bin),导致再次登录时,报大量命令找不到,初步认定为PATH异常
解决方法
先执行
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/openssh/bin:/usr/local/sbin
然后删掉/etc/environment内设置的PATH
总结
这个事情主要是自己没有弄清楚/etc/environment的写法,这个文件只能写 key=value,一行一个,value也不能使用 shell变量 $xxx。
如果要写所有用户都认的环境变量,应该写到 /etc/profile.d/*.sh里
参考
[1]: https://askubuntu.com/questions/866161/setting-path-variable-in-etc-environment-vs-profile