环境文件
用途
用于设置用户环境。
描述
/etc/environment 文件包含指定所有进程的基本环境的变量。 当新进程开始时, 执行 子例程使一个字符串数组可用,其格式为 姓名=值。 此字符串数组称为 "环境"。 其中一个字符串定义的每个名称称为一个环境变量或 Shell 变量。 执行 子例程允许对整个环境进行一次设置。
在命令开始运行时检查环境变量。 不会通过更改 /etc/environment 文件来更改进程的环境。 如果更改将对 /etc/environment 文件生效,那么必须重新启动在更改之前启动的任何进程。 如果更改了 TZ 变量,那么必须重新启动 Cron 守护程序,因为此变量用于确定当前本地时间。
在修改 环境 文件时,以下限制适用:
- 确保新创建的环境变量与标准变量 (例如 邮件, PS1, PS2和 IFS) 不冲突。
- 确保 环境 文件中的信息是 姓名=值 格式的。 与 概要文件 脚本不同, 环境 文件不是 shell 脚本,并且不接受除 姓名=值 格式之外的任何格式的数据。
基本环境
登录时,系统会先从 环境 文件设置环境变量,然后再读取登录概要文件 .profile。
以下变量组成基本环境:
| 变量 | 描述 |
|---|---|
| HOME | 用户登录目录或 主目录 目录的完整路径名。 login 程序将此设置为 /etc/passwd 文件中指定的名称。 |
| LANG | 当前有效的语言环境名称。 LANG 变量是在安装时在 /etc/environment 文件中设置的。 |
| NLSPATH | 消息编目的完整路径名。 缺省值为: /usr/lib/nls/msg/%L/%N: /usr/lib/nls/msg/%L/%N.cat: 其中, %L 是 LC_MESSAGES 类别的值, %N 是商品目录文件名。
注: 请参阅 切朗 命令以获取有关更改消息目录的更多信息。
|
| LC__FASTMSG | 如果 LC_FASTMEG 设置为 false,那么将执行符合 POSIX的消息处理。 如果 LC__FASTMSG 设置为 true,那么它指定应该将缺省消息用于 C 和 POSIX 语言环境,并且将忽略 NLSPATH 。 如果此变量设置为除 假 或 取消设置之外的任何其他值,那么会将其视为与设置为 真相同。 在 /etc/environment 文件中,缺省值为 LC__FASTMSG=true 。 |
| LOCPATH | “本地语言支持表”的位置的完整路径名。 缺省值为 /usr/lib/nls/loc ,并在 /etc/profile 文件中设置。 如果 位置路径 变量是空值,那么它假定当前目录包含语言环境文件。 注: 所有 设置标识 和 设置标识 程序都将忽略 位置路径 环境变量。
|
| 路径 | 在查找路径名不完整的命令时,命令 (例如 什, 时间, 好 和 诺胡特 命令) 所搜索的目录序列。 以冒号分隔目录名称。 |
| TZ | 时区的信息。 TZ 环境变量由 /etc/environment 文件设置。 TZ 环境变量具有以下格式 (插入空格以提高可读性):TZ 环境变量中的字段定义为如下所示:
|
| EST | 指定东部 U.S标准时间。 |
| 5 | 指定偏移量,比全球标准时间 (CUT) 晚 5 个小时 5
注: 请参阅 "时区" 以获取为系统定义的时区名称的列表。
|
| hh | 指定 德斯特 偏移量 (以小时为单位)。 此字段是必需的。 该hh值可以在整数 -12 和 +11 之间。 负值表示该时区在本初子午线的以东; 正值或无值表示该时区在本初子午线的以西。 |
| mm | 指定详细到分钟的 德斯特 偏移量。 这个字段是可选的。 如果mm值存在 0 它必须在 0 到 59 之间指定,并以: (冒号) 开头。
必须将 偏移 变量与 斯特德 变量一起指定。 德斯特 变量的 偏移 变量是可选的。 如果未使用 德斯特 变量指定偏移量,那么系统会假定夏季时间比标准时间提前一小时。 作为偏移语法的示例,苏黎世比CUT时间早一小时,因此其偏移量为 -1。 纽芬兰比东部标准时区 U.S 早 1.5 小时。 它的语法可以表示为下列任何一项: 3:30 , 03:30 , + 3:30 或 3:30:00。
|
| start | 指定从标准时间更改为夏季时间。 |
| end | 指定从夏季时间返回到标准时间。 |
| time | 指定时区内发生时间更改的时间。 例如,如果该time变量已针对 2 a.m进行编码。 那么当时区达到 2 a.m时,时间将发生更改。 在该日期或该日期start变量。 |
| / | 对开始日期,结束日期和时间变量进行定界。
该start和end变量支持儒略时间的语法 (J) 以及用于跨年的语法 (M):
在J语法n变量的值 1 1 到 365。 跳跃天数不计算在内。 在M语法,m是月份,n周,以及d从第 0 天 (星期日) 开始的一周中的某天。 规则 变量的格式与 偏移 变量的格式相同,但不允许任何前导-(减号) 或 + (加号)。 缺省值为start变量为 02:00:00 (2 a.m.)。
注: 时区偏移量和时间更改点相互关联,并且依赖于上下文。 规则 变量的运行时执行语义会更改为偏移量的函数。 例如,如果夏季时区更改为 1 小时,那么如CST6CDT5, (缺省值 2 a.m。) 夏季时间从 2 a.m瞬间更改。 到 3 a.m。 CDT。 秋季更改来自 2 a.m。 CDT 到 1 a.m。 科技委。 以下时间区域的相应更改:CST6CDT4是 2 a.m。 CST 到 4 a.m。 CDT 和 2 a.m。 CDT 到 12 a.m。 科技委。
在 规则 变量的示例中,如果法律发生更改,使美国中部经历了 Julian 129 到 Julian 131 之间的夏季时间,那么 TZ 变量将如下所示: 在此示例中,指示的日期分别为 2009 年 5 月 9 日和 1993 年 5 月 11 日。 (使用 日期 +%j 命令获取儒略历日期编号。) 在另一个示例中,如果时间更改发生在 2 a.m。 CST 和 19:30 CDT 的变量将分别声明如下: 在非跳跃年,回退时间将从 1993 年 5 月 11 日的 19:30 CDT 更改为 18:30 CST。 对于跨年 (M) 语法,春季提前日期为 5 月 2 日,回退日期 9 5 月 9 日。 这些变量如下所示: |
时区
系统定义了以下时区和时区名称:
| 姓名 | 时区 | CUT 偏移量 |
|---|---|---|
| CUT0GDT | 全球标准时间 | 切断 |
| GMT0BST | 英国时间 | 切断 |
| WET0WEST | 西欧 | 切断 |
| AZOREST1AZOREDT | 佛得角亚速尔 | 剪切 -1 |
| FALKST2FALKDT | 福兰克群岛 | 剪切 -2 |
| GRNLNDST3GRNLNDDT | 格陵兰,东巴西 | 剪切 -3 |
| AST4ADT | 巴西中部 | 剪切 -4 |
| EST5EDT | 美国东部,哥伦比亚 | 剪切 -4 |
| CST6CDT | 美国中部,洪都拉斯 | 剪切 -6 |
| MST7MDT | 美国山区 | 剪切 -7 |
| PST8PDT | 美国太平洋地区,育空地区 | 剪切 -8 |
| AST9ADT | 阿拉斯加州 | 剪切 -9 |
| HST10HDT | 夏威夷,阿留申群岛 | CUT -10 |
| BST11BDT | 贝林海峡 | 剪切 -11 |
| NZST-12NZDT | 新西兰 | CUT +12 |
| 项 | 描述 | |
|---|---|---|
| MET-11METDT | 所罗门群岛 | CUT +11 |
| EET-10EETDT | 澳大利亚东部 | CUT +10 |
| JST-9JSTDT | 日本 | CUT + 9 |
| KORST-9KORDT | 韩国 | CUT + 9 |
| WAUST-8WAUDT | 西澳大利亚 | CUT + 8 |
| TAIST-8TAIDT | 中国台湾 | CUT + 8 |
| THAIST-7THAIDT | 泰国 | CUT + 7 |
| TASHST-6TASHDT | 中亚 | 6 cUT + 6 |
| PAKST-5PAKDT | 巴基斯坦 | CUT + 5 |
| WST-4WDT | 戈尔基,中亚,阿曼 | 4 cUT + 4 |
| MEST-3MEDT | 土耳其 | CUT + 3 |
| SAUST-3SAUDT | 沙特阿拉伯 | CUT + 3 |
| EET-2EEST | 东欧 | 2 cUT + 2 |
| USAST-2USADT | 南非 | 2 cUT + 2 |
| CET-1CEST | 中欧 | CUT + 1 |
文件
| 项 | 描述 |
|---|---|
| /etc/profile | 指定要由 shell 添加到环境中的变量。 |
| /etc/environment | 指定所有进程的基本环境。 |
| $HOME/.profile | 指定特定用户需求的环境。 |
| /etc/passwd | 指定用户标识。 |