linux的etc/profile文件的作用是啥
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux的etc/profile文件的作用是啥相关的知识,希望对你有一定的参考价值。
比如说arm-linux-gcc安装过后 除了要修改root下的.bashfile(也就是添加个环境变量) ,还要修改etc/profile 下的环境变量 两个profile是干什么用的 还有点别的疑问 就是这个arm-linux-gcc 应该也是属于个工具嘛 为什么这个没有需要rpm去安装 只是执行了 tar -xzvf 解压就可以了,而包需要rpm去安装 包是什么意思那 和windows下的exe安装程序类似吗
/etc/profile:这个文件是每个用户登录时都会运行的环境变量设置
.bashfile:是单用户登录时比如root会运行的
rpm:red hat,fedora,centos这几个发行版使用的安装包,和其它tar.gz的区别是有个文件头,多了一些信息
rpm包多数是二进制文件,可以直接运行的,但tar.gz包很多是源代码,要编译后才能运行,二进制文件和windows下的exe文件一个意思,可以直接运行。
扩展资料:
Linux系统的主要特性
1.基本思想
Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。
2.完全免费
Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。
3.完全兼容POSIX1.0标准
这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。
4.多用户、多任务
Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
5.良好的界面
Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。
6.支持多种平台
Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。
参考资料:
Linux-百度百科
这个文件是每个用户登录时都会运行的环境变量设置
.bashfile
是单用户登录时比如root会运行的
rpm是red hat,fedora,centos这几个发行版使用的安装包,和其它tar.gz的区别是有个文件头,多了一些信息
rpm包多数是二进制文件,可以直接运行的,但tar.gz包很多是源代码,要编译后才能运行
二进制文件和windows下的exe文件一个意思,可以直接运行本回答被提问者采纳
Linux下环境变量设置技巧,不用/etc/profile而是在/etc/profile.d目录下新建特定的shell文件来设置
区别:
1、两个文件都是设置环境变量文件的,/etc/profile是永久性的环境变量,是全局变量,/etc/profile.d/设置所有用户生效,同样是永久变量,是全局变量。
2、/etc/profile.d/比/etc/profile好维护,不想要什么变量直接删除/etc/profile.d/下对应的shell脚本即可,不用像/etc/profile需要改动此文件。
3、需要注意的是,/etc/profile和/etc/profile.d同样是登录(login)级别的变量,当用户重新登录shell时会触发。所以效果一致。
4、通常设置登录级别的变量,重新登录shell即可,或者source /etc/profile。
原来:
设置环境变量通常写在/etc/profile里面,现在看来真的很low,如果上百个应用,那么找得到和修改得到是不同的两码事!那么问题来了,升级后的做法是在/etc/profile.d/目录下新建以应用命令的shell文件即可,然后不需要的变量直接删除对于的shell文件。
现在:
同样的写法,只不过在/etc/profile.d/目录下新建对应的shell即可,比如新建java的:
vi /etc/profile.d/java.sh
export JAVA_HOME=/data/service/java
原理:
无论在Linux还是再Mac下,都可以用这个方式去实现,分析/etc/profile这个文件你会发现有这么一段shell,这个就是关键所在:
if [ -d /etc/profile.d ]; then for i in /etc/profile.d/*.sh; do if [ -r $i ]; then . $i fi done unset i fi
总结:
不要再使用以前那么low的方式,改下方案吧,这样运维才是王道!!!
以上是关于linux的etc/profile文件的作用是啥的主要内容,如果未能解决你的问题,请参考以下文章