Ubuntu配置文件/etc/profile说明
来源:互联网 发布:js注释 summary 编辑:程序博客网 时间:2024/06/08 10:57
这个文件里面的配置,是全局配置。所以,如果你需要让你的变量让所有的用户都能使用的话,那么可以考虑在此配置文件里面添加。
比如JAVA_HOME变量的配置。
但是,尽量的,我们不要去修改这个配置文件,因为这个是系统的配置文件。我们尽量的修改我们自己独立配置文件。
在可能的时候,或者重新配置的时候,你可以随时修改你自己的配置文件而不致于影响他人或者此服务器系统。
同样的道理,修改/etc/rd.local也可以达到同样的效果。
但是和上面的一样,不是一个好的选择。
替代方案是什么呢?
先来看/etc/profile的源代码
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
if [ "$PS1" ]; then
if [ "$BASH" ]; then
PS1='"u@"h:"w"$ '
if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
fi
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
fi
红色的代码部分,说明/etc/profile会首先执行/etc/profile.d/目录下的所有*.sh文件。
这也就给我们一个可扩展的思路。
如果我们需要配置JDK,那么就在/etc/profile.d/下创建jdk.sh文件
如果需要配置oracle,那么就在//etc/profile.d/下创建oracle.sh文件
然后,在对应的配置文件里面添加你自己的配置就可以了。
另外有结论
1./etc/environment中的echo没有显示,但是定义的变量可以在父/子bash shell中使用,调用export发现,该变量被自动的export。
2.密码登录父bash shell时,显示结果如下:
bash.bashrc
profile
.bashrc
.profile
定义的变量可以使用,但没有被自动export。
3.bash命令免登录进入子bash shell时,显示结果如下:
bash.bashrc
.bashrc
定义的变量可以使用,但没有被自动export。
4.exit命令退出子bash shell时,无显示
5.exit命令退出父bash shell时,显示:
.bash_logout
实验结果分析:
1. /etc/environment 设置整个系统的环境【主要PATH,初始语言LANG】,由kernel加载(第一个bash shell执行前),里面定义的变量将作用于所有的子bash shell(自动export),此时bash shell尚未就位,最好不要修改。
2. /etc/bash.bashrc 相当于很多linux下的/etc/bashrc,用来设置bash的变量【sudo,xterm等】,所有bash shell创建的时候加载,里面定义的变量将作用于本bash session。一般情况下不需要修改。
3. /etc/profile 设置全部用户的配置信息【PS1等】,在任何用户密码登录后,该文件执行,非密码登录时,不再调用。该文件会自动调用/etc/bash.bashrc。此文件会自动调用/etc/profile.d/目录下的所有shell脚本,如果有全部用户都需要的变量,比如JAVA_HOME,可以考虑创建一个脚本放到该目录下。另外,如果变量需要在子shell中使用,需要自行添加export。
4. ~/.bashrc 用来设置用户自定义的bash变量【自定义PS1,alias等】,在bash shell创建的时候加载,里面定义的变量将作用于本bash session。用户可以通过修改此文件定制自己的bash。另外,也可以将alias写到~/.bash_aliases文件中,~/.bashrc会自动加载该文件。
5. ~/.profile 用来设置用户自定义的配置信息,该文件会自动加载~/.bashrc,并且重置用户语言等变量。用户可以通过修改此文件,修改变量或者export新变量。
7. 登录和免登录bash方式都会调用/etc/bash.bashrc和~/.bashrc。只有登录方式bash才会调用/etc/profile和~/.profile(包括su)。调用顺序为全局配置操作完之后执行个人配置。
8. ~/.bash_history 用来记录用户上一次登录的命令记录(默认1000条)。黑客的最爱。想读本次命令记录用history。
- Ubuntu配置文件/etc/profile说明
- Ubuntu配置文件/etc/profile说明
- ubuntu /etc/profile配置
- ubuntu /etc/profile文件
- /etc/profile配置文件的详解
- 环境配置文件:/etc/profile,source
- Ubuntu /etc/profile 环境变量设置
- Linux的配置文件/etc/profile和/bashrc
- etc/下配置文件的说明
- /etc/profile /etc/bashrc ~/.bash_profile ~/.bashrc ~/.bash_logout 说明及区别
- ubuntu修改/etc/profile后不能登录
- ubuntu /etc/profile和/etc/environment的比较
- ubuntu /etc/profile和/etc/environment的比较
- ubuntu /etc/profile和/etc/environment的比较
- ubuntu /etc/profile和/etc/environment的比较
- Linux下配置文件 /etc/profile、/etc/bashrc、~/.bash_profile、~/.profile、~/.bashrc 总结
- Linux 配置文件 启动文件rc.local、/etc/bash.bashrc、~/bashrc、/etc/profile、~/.profile加载顺序
- Ubuntu /etc/fstab文件说明
- 安装arcgis server10.2时发生错误error1935
- 孙权劝学导学案
- 回溯法八皇后问题
- week 2
- j2se,j2ee,j2me区别
- Ubuntu配置文件/etc/profile说明
- java 堆、栈区别
- 回溯法素数环
- 笔试题常考--字符指针与动态字符数组
- tableview textfield tableviewheader footer同时存在问题情况记录
- ACMjava简单枚举除法,分数拆分,双基回文数,最大乘积
- cocos2d-x win8下的环境配置和建立项目
- CvCreateImage函数说明
- Flex——BlazeDS开发指南