`
jzinfo
  • 浏览: 118413 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

/etc/profile与/etc/enviroment的比较

阅读更多

先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文。将/etc/profile 中的export LANG=zh_CN删除,将LNAG=zh_CN加入/etc/environment,退出系统重新登录,登录提示显示中文。

用户环境建立的过程中总是先执行/etc/profile然后在读取/etc/environment。为什么会有如上所叙的不同呢?

应该是先执行/etc/environment,后执行/etc/profile。

/etc/environment是设置整个系统的环境,而/etc/profile是设置所有用户的环境,前者与登录用户无关,后者与登录用户有关。

系统应用程序的执行与用户环境可以是无关的,但与系统环境是相关的,所以当你登录时,你看到的提示信息,象日期、时间信息的显示格式与系统环境的LANG是相关的,缺省LANG=en_US,如果系统环境LANG=zh_CN,则提示信息是中文的,否则是英文的。

对于用户的SHELL初始化而言是先执行/etc/profile,再读取文件/etc/environment.对整个系统而言是先执行/etc/environment。这样理解正确吗?

/etc/enviroment --> /etc/profile --> $HOME/.profile -->$HOME/.env (如果存在)

/etc/profile 是所有用户的环境变量

/etc/enviroment是系统的环境变量

登陆系统时shell读取的顺序应该是

/etc/profile ->/etc/enviroment -->$HOME/.profile -->$HOME/.env

原因应该是jtw所说的用户环境和系统环境的区别了

如果同一个变量在用户环境(/etc/profile)和系统环境(/etc/environment)有不同的值那应该是以用户环境为准了。

(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

(5) ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。

(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

通过比较最后发现,在ubuntu下配置java运行环境时,所做的设置代表的意义了。

$ sudo vim /etc/profile

在文件最后添加

#set java environment

JAVA_HOME=/opt/jdk1.6.0_07

export JRE_HOME=/opt/jdk1.6.0_07/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

最后wq!

备注:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。

分享到:
评论

相关推荐

    Enviro - Dynamic Enviroment.zip

    这意味着游戏内的天气和时间可以与现实世界同步,增强了沉浸感。用户可以通过简单的设置来控制一天中的早、中、晚时段,甚至可以精细到小时级别,以适应不同的游戏流程和故事情节。 3. **自定义选项**:Enviro - ...

    openhab-syno-spk:openHAB Synology SPK安装软件包

    为您的软件包准备一个目录,例如: /var/packages/Java11编辑/etc/profile以JAVA_HOME properly更新JAVA_HOME properly #PATH=$PATH:/var/packages/Java8/target/j2sdk-image/bin # Synology Java runtime ...

    backup_aws_s3

    BackupAwsS3 将s3文件夹备份到另一个s3 安装 $ gem install backup_aws_s3 ...在/ etc / enviroment中创建环境变量 export S3_BUCKET_BACKUP="xxxxxxxxxxx" export S3_ACCESS_KEY_ID="xxxxxxxxxxx" export S3_SE

    Laravel开发-local-enviroment

    "Laravel开发-local-enviroment" 提供了一种便捷的方法来创建和管理本地开发环境,使得开发者可以在自己的机器上搭建与生产环境相似的环境,确保代码在本地测试时的稳定性和兼容性。下面我们将深入探讨这个主题。 1...

    build_enviroment.tar.xz

    build_enviroment.tar.xz

    Use Node.js as a full cloud enviroment development stack

    随着技术的飞速发展与创新,新的想法和技术不断涌现,其中Server-side JavaScript就是一种极具潜力的概念。Node.js作为一种为版本8 JavaScript引擎设计的事件驱动I/O框架,在UNIX-like平台上被广泛用于编写可扩展的...

    react-multi-clamp:简单,高效且易于使用的多行文本钳制React组件。 (支持反向夹)

    react-multi-clamp Simple, efficient and easy-to-use multiline text clamp react component....Supports IE9+ / Android4.4+ / etc. ES5 enviroment. 支持PC/移动设备所有兼容ES5环境的浏览器。 Installation You

    JAVA_SET_enviroment

    标题“JAVA_SET_enviroment”暗示了我们讨论的主题与设置Java开发环境有关,特别是关于配置Java环境变量的步骤。在编程领域,尤其是Java开发中,正确地设置环境变量是至关重要的,因为它们指定了系统如何找到并执行...

    OpenGL_Tutorial_Enviroment.zip

    该资源包"OpenGL_Tutorial_Enviroment.zip"包含了一个基于Visual Studio 2019的完整工程,确保用户可以快速启动并运行OpenGL项目。以下是对该资源包中的主要组件的详细说明: 1. **assimp.lib**:Assimp是一个开源...

    Ubuntu的安装文档

    "enviroment"文件可能是指环境变量的设置,通常位于 `/etc/environment` 或者用户的 `.bashrc` 文件。这些变量影响程序的运行环境,比如PATH变量决定命令的搜索路径。通过编辑这些文件,可以定制个性化的工作环境。...

    商务智能教学课件:I Operational Data Enviroment and Assignment 1.ppt

    商务智能教学课件:I Operational Data Enviroment and Assignment 1.ppt

    SFL Java Trading System Enviroment

    一个国外公司开发的金融交易系统开源项目,java语言,纯英文环境

    multi_cuda_exchange.txt

    enviroment of cuda10.0 export CUDA_HOME=/usr/local/cuda export PATH=$PATH:$CUDA_HOME/bin export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} export CUDA_HOME=/...

    Unity Trees Grass & Rocks Enviroment Pack v1.0

    这个完整的环境包是你一直在寻找的创造你的自然环境包包括树木,大岩石,岩石,小岩石,草,灌木,蕨类植物等… 所有纹理均为TARGA和PNG格式,分辨率为256/512/1024/2048/4096。型号10~20000 Tris之间的Polycount...

    Radmin自动登录器v3.0-多国语言绿色版-Release1-20150615

    新版的功能已经比较完善,基本上可以代替Radmin Viewer 3.5进行管理(除Intel AMT功能外),另外还增加了一些实用功能,支持Windows Xp、Vista、Win7、Win8、2003、2000、9x及相应Windows Server版等操作系统。...

    Introduction to the Matlab Programming Enviroment.pdf

    MATLAB支持算术运算符(如+,-,*,/,^)、比较运算符(==,<,>等)和逻辑运算符(&&,||,~)。理解这些运算符及其优先级对于编写MATLAB代码至关重要。 4. 函数和脚本M-file: 函数M-file是MATLAB程序的核心,...

    Environment variable ORACLE_UNQNAME not defined错误解决

    2. **配置文件问题**:如果在`.bash_profile`、`.bashrc`等配置文件中设置了`ORACLE_UNQNAME`但配置有误,也可能导致此错误。 3. **Oracle管理工具需求**:部分Oracle管理工具(如Enterprise Manager Console)在...

    Building energy and enviroment design application manual

    - **政策制定者与研究人员**:为政策制定提供数据支持,同时促进学术界对建筑能源与环境设计的研究与发展。 #### 四、出版信息 - **出版社**:特许建筑服务工程师学会(The Chartered Institution of Building ...

    Bluetooth enviroment monitor.rar_DA14580上的环境监测程序_sensors_传感器_光敏传

    标题中的“Bluetooth enviroment monitor.rar”表明这是一个与蓝牙相关的环境监测程序,它可能是通过蓝牙技术来收集和传输数据的。DA14580是一个智能蓝牙微控制器,由Dialog Semiconductor公司生产,常用于低功耗...

Global site tag (gtag.js) - Google Analytics