[转帖]/etc/profile和/etc/environment的区别
/etc/profile 文件
当一个用户登陆Linux系统或使用 su 命令切换到另外一个用户时,设置用户环境第一个读取的文件就是 /etc/profile ,此文件为系统全局变量配置文件,且仅仅在第一次登陆系统时才会全局运行 /etc/profile 。shell
注意上面描述的几个关键:vim
设置用户环境第一个读取的脚本文件能够推理出在它以后读取的文件设置环境变量将会会覆盖/etc/profile文件中配置的环境变量;仅仅在第一次登陆系统时才会全局运行 /etc/profile能够解释一个场景:咱们在使用Ubuntu等桌面Linux系统时,用快捷键ctrl+alt+t打开的shell终端里,修改环境变量后使用source /etc/profile这个命令执行生效,新的环境变量只能在当前的终端里面有效,打开新的shell终端时,刚才有效的环境变量在新的终端是不生效的;因此全局生效/etc/profile环境变量的正确方式是注销重登陆或者直接重启系统
以添加JDK的环境变量为例子,vim /etc/profile 打开文件, 在文件最后添加:.net
export JAVA_HOME=/opt/jdk1.8.0_191
export PATH=$JAVA_HOME/bin:$PATH
/etc/environment 文件
在 /etc/profile 文件以后,登陆系统时读取环境信息使用的第二个文件就是 /etc/environment 文件,理论上在这个文件中也能够设置环境变量,环境变量达到的效果也和 /etc/profile 文件的环境变量效果同样,全局永久的环境变量;code
可是,最好别经过这个文件添加或修改环境变量,由于 /etc/profile 文件是面对系统用户的,填写错了大不了最多致使系统里的全部用户没法使用,可是 /etc/environment 文件是面对系统的,系统经过 /etc/environment 文件中的PATH去找对应的东西,以Ubuntu为例子,若是不当心更改 /etc/environment 文件中把PATH影响到,就没法进入桌面界面了,也没法使用一些命令了;blog
因此,/etc/environment 文件过重要了,仅仅想要设置一个全局的环境变量,彻底没有必要用这个文件。get
扩展文章:登录
[转帖]/etc/profile和/etc/environment的区别的更多相关文章
- 修改/etc/profile和/etc/environment导致图形界面无法登陆的问题
在使用ubuntu开发时,往往要修改PATH变量,有时会通过修改/etc/profile和/etc/environment来修改默认的PATH变量,但是一旦出错,很容易造成无法登陆进入图形界面的问题. ...
- etc/profile和/etc/environment的比较
转自:http://andy136566.iteye.com/blog/1025338 先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文.将/e ...
- ubuntu /etc/profile和/etc/environment的比较
先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文. 将/etc/profile 中的export LANG=zh_CN删除,将LNAG=zh_C ...
- ubuntu /etc/profile和/etc/environment的比较 (转载)
转自:http://blog.csdn.net/teamlet/article/details/8257853 先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录, ...
- profile bashrc bash_profile之间的区别和联系
profile bashrc bash_profile之间的区别和联系 博客分类: Linux 执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bas ...
- spring boot: 一般注入说明(四) Profile配置,Environment环境配置 @Profile注解
1.通过设定Environment的ActiveProfile来设置当前context所需要的环境配置,在开发中使用@Profile注解类或方法,达到不同情况下选择实例化不同的Bean. 2.使用jv ...
- linux不同环境变量文件的比较,如/etc/profile和/etc/environment
/etc/profile 为系统的每个用户设置环境信息和启动程序,当用户第一次登录时,该文件被执行,其配置对所有登录的用户都有效. 当被修改时,必须重启才会生效.英文描述:"System w ...
- Redhat Linux /etc/profile 与 /etc/bashrc 的区别
最近学习RHCE,在umask这里,书里说要修改/etc/profile和/etc/bashrc两个文件,却没有说明这两个区别.于是在上网查看之后倒是明白了各是怎么用的./etc/profile是对应 ...
- Application.StartupPath同System.Environment.CurrentDirectory区别
System.Windows.Forms.Application.StartupPath:获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称. System.Environment.Curr ...
- [转帖]windows10,business版和consumer版本区别
windows10,business版和consumer版本区别 时间:2018-07-08 10:50来源:原创 作者:5分享 点击: 7113 次 windows10系统(1803)busines ...
随机推荐
- 技术架构+应用场景揭秘,为什么高斯Redis比开源香?
摘要:高斯Redis即保留了开源Redis的能力,同时凭借其存算分离的架构,在成本.稳定性.可靠性.一致性等方面做出了新的突破,也更加适用于当下数据规模庞大的互联网业务. 本文分享自华为云社区< ...
- 万字长文|Hadoop入门笔记(附资料)
大数据迅速发展,但是Hadoop的基础地位一直没有改变.理解并掌握Hadoop相关知识对于之后的相关组件学习有着地基的作用.本文整理了Hadoop基础理论知识与常用组件介绍,虽然有一些组件已经不太常用 ...
- .Net Core EF 日志打印 SQL 语句
Startup.cs public class Startup { public static readonly ILoggerFactory efLogger = LoggerFactory.Cre ...
- 销售订单BAPI增强
一.需求背景 在销售订单批导时,需要调用BAPI:BAPI_SALESORDER_CREATEFROMDAT2维护成本中心字段, 二.增强实现 BAPI中没有该字段,需要通过增强的方式导入.通过BAP ...
- Jetpack初步了解
1.为何要引入Jetpack呢? 通常来说,一个Android应用程序至少需要一个Activity,当我们开发小型Android程序时,可能会将大部分代码写在Activity/Fragment中,例如 ...
- 批量上传 jar 包到远程 maven 仓库
mvn deploy命令: mvn deploy:deploy-file -Dmaven.test.skip=true -Dfile=log-lib-1.1.jar -DgroupId=com.sun ...
- Python | 使用SVM支持向量机进行鸢尾花分类
运行环境 Python: 3.7.1 库: sklearn (Python的机器学习工具箱) 目的: 根据鸢尾花的四个特征,对三种鸢尾花进行分类 数据(共150行,这里截取前6行,完整数据以及代码的下 ...
- # 0x56 动态规划-状态压缩DP
0x56 动态规划-状态压缩DP Mondriaan's Dream Description Squares and rectangles fascinated the famous Dutch pa ...
- JavaScript到底应不应该加分号?JavaScript自动插入分号规则详解
JavaScript 提供了 automatic semicolon insertion (ASI)自动插入分号规则,在不加分号的情况下,会自动补充分号来分隔不同语句. 导致在继左大括号换行.tab ...
- 一、mysql5.7 rpm 安装(单机)
一.下载需要的rpm包mysql-community-client-5.7.26-1.el6.x86_64.rpmmysql-community-common-5.7.26-1.el6.x86_64. ...