Linux 中的 “/etc/profile.d“ 目录有什么作用 ?

# What is the /etc/profile.d/ Directory

什么是 /etc/profile.d/ 目录 ?

/etc/profile.d/ 目录是 Linux 系统不可或缺的一部分保留配置脚本。它与 /etc/profile 文件相关联,这是一个启动脚本,该脚本在新的 shell 会话开始时初始化环境,为用户设置环境变量。

/etc/profile.d/ 如何工作 ?

在启动期间,/etc/profile 脚本是用于登录 shell 的(那些需要身份验证的会话,例如终端登录,SSH 登录),/etc/profile.d 目录中的脚本也会执行,它允许运行目录中的脚本,而无需修改 /etc/profile 文件,从而促进了更加模块化和可管理的方法。

/etc/profile.d/ 实际用途

以下是 /etc/profile.d/ 目录的一些实际用途:

(1) Environment Variables

/etc/profile.d/ 最常见用途是设置环境变量。这些可能是 PATH 变量,用于在命令搜索中包含其他目录路径或特定于应用程序的变量。例如,对于 Java 应用程序,您可能会设置 JAVA_HOME 指定 Java 安装目录。

vim /etc/profile.d/jdk.sh

添加环境变量,如下所示

export PATH=$PATH:/usr/lib/jvm/java-17-oracle/bin:/usr/lib/jvm/java-17-oracle/db/bin
export JAVA_HOME=/usr/lib/jvm/java-17-oracle

(2) Application Startup

/etc/profile.d/ 目录中的脚本可在 Shell Session 启动期间启动某些应用程序或服务。

(3) System-Wide Aliases and Functions

您还可以在 /etc/profile.d/ 目录中定义系统范围的别名和功能脚本。

Customization and Modularity

/etc/profile.d/ 关键优点之一是,它允许您为新的程序和服务添加脚本,而无需触更改 /etc/profile文件,提供额外的模块化层。

Key Considerations

虽然 /etc/profile.d/ 目录用起来很香,但是任然需要注意几个地方:

(1) Login Shells

/etc/profile.d/ 目录中的脚本目录通常用于 login shell,它们在 non-login shell 环境时可能不工作。
例如:打开桌面中的新终端窗口会话。

(2) Order of Execution

/etc/profile.d/ 目录中的脚本按字母顺序运行,而不是按照他们添加的顺序运行。

(3) Script Permissions

确保 /etc/profile.d/ 目录中的脚本具有正确的权限,可由所需的用户执行。

我的开源项目

酷瓜云课堂-开源知识付费解决方案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值