最近在Ubuntu11.04下Multi-User安装RVM, 发现登录后环境变量无效,必须手动执行source /etc/profile才生效.

其实问题是 /etc/profile 中只能执行non-interactive shell, 而/etc/profile.d/rvm.sh 中使用了functions 和 aliases, 于是即使执行了,也没有生效.

直接上代码:

echo '[[ -s "/etc/profile.d/rvm.sh" ]] && . "/etc/profile.d/rvm.sh" # Load RVM function' >> ~/.bashrc