[转帖]/etc/profile和/etc/environment的区别

etc,profile,environment,区别 · 浏览次数 : 0

小编点评

| 时间 | 文件 | 标签 | profile | 环境 | 繁體版原文 | |---|---|---|---|---|---| | 2019-11-07 | /etc/profile | 文件 | profile |全局变量配置文件 | https://my.oschina.net/u/2885925/blog/2989579 | | | /etc/profile.d/ | 文件 | profile.d |用户环境配置 | - | | | .netexport JAVA_HOME=/opt/jdk1.8.0_191export PATH=$JAVA_HOME/bin:$PATH/etc/environment | 文件 | /etc/profile |设置环境变量 | | | /etc/environment | 文件 | /etc/environment |系统环境变量配置文件 | - | | 关键 | vim 设置用户环境第一个读取的脚本文件 | 设置环境变量 | 在第一次登陆系统时才会全局运行 | /etc/profile |

正文

 

 

/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/profile.d/的区别变量

Linux下环境变量配置扩展

与[转帖]/etc/profile和/etc/environment的区别相似的内容:

[转帖]/etc/profile和/etc/environment的区别

时间 2019-11-07 标签 profile environment 区别 繁體版 原文 https://my.oschina.net/u/2885925/blog/2989579 /etc/profile 文件 当一个用户登陆Linux系统或使用 su 命令切换到另外一个用户时,设置用户环境第

[转帖]/etc/profile 和 /etc/profile.d/ 的区别

https://my.oschina.net/calmsnow/blog/2989570 /etc/profile 是文件, /etc/profile.d/ 是目录,用在设置环境变量方面,/etc/profile 文件和 /etc/profile.d/ 目录实现效果是一样的,可根据自己对环境变量配置

[转帖]resin的安装与配置

1.安装jdk 之前装过了,就不做演示了 vim /etc/profile //注意java的配置文件 JAVA_HOME=/usr/local/jdk1.8/ JAVA_BIN=/usr/local/jdk1.8/bin JRE_HOME=/usr/local/jdk1.8/jre PATH=$P

[转帖]采用cat与EOF组合添加多行内容时防止变量解析的解决办法

https://blog.51cto.com/xoyabc/1718355 【问题描述】 当采用cat与EOF组合添加多行内容时,若含有变量,则追加后的文件中是变量对应的的值,并不是变量本身。 如$a对应的值为111,执行以下命令后 cat >> /etc/profile << EOF $a $a

[转帖]nginx按日分割日志

https://www.cnblogs.com/leffss/p/7832123.html #!/bin/bash #按日切割nginx日志并压缩,加入crontab每天0:00切割 #作者:fafu_li #时间:2015.08.15 source /etc/profile #加载系统环境变量 s

[转帖]linux网络速率监控

https://www.cnblogs.com/leffss/p/7832074.html #!/bin/bash #作者:fafu_li #时间:2015.10.14 #监控网卡传输速率 source /etc/profile #加载系统环境变量 source $HOME/.bash_profil

[转帖]/etc/passwd文件 各个字段详解

转载自:https://www.sohu.com/a/320177323_505901 /etc/passwd文件: 系统用户配置文件,存储了系统中所有用户的基本信息,并且所有用户都可以对此文件执行读(r)操作。 查看文件内容: /etc/passwd文件内容非常规律,每行记录对应一个用户。 每行用

[转帖]Docker配置文件/etc/docker/daemon.json详解

该文件作为Docker Engine的配置管理文件,几乎涵盖了所有docker命令行启动可以配置的参数。默认是没有的,需要手动创建 docker- daemon.json各配置详解 { "allow-nondistributable-artifacts": [], #不对外分发的产品提交的regis

[转帖]Linux之/etc/fstab文件讲解

https://www.cnblogs.com/FengGeBlog/p/10178824.html /etc/fstab是用来存放文件系统的静态信息的文件。位于/etc/目录下,可以用命令less /etc/fstab 来查看,如果要修改的话,则用命令 vi /etc/fstab 来修改。当系统启

[转帖]ssh时不输入YES

vim /etc/ssh/ssh_config 60行新添加 StrictHostKeyChecking no