---
title: 确保用户PATH变量被严格定义
description: "在Linux系统中，PATH变量定义了当前用户上下文中可执行文件查找路径。例如，用户在任意目录下使用ls命令，系统会在PATH变量指定的目录下查找该命令，找到后执行。所有用户上下文中的PATH变量不能包含当前目录（即“.”）。PATH指定的目录必须是文件系统中真实存在的路径，并符合系统的设计期望。正确的PATH值，可以有效防止系统命令被恶意的指令替代，从而保障系统命令能够安全执行。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcctrustzone/tee/cVMcont/kunpengtee_zjsj_openclaw_027.html
sourcePath: /source/zh/kunpengcctrustzone/tee/cVMcont/kunpengtee_zjsj_openclaw_027.html
indexId: f2c6963fb3dadbeb22b74227deadb35caf151224810f6206558ee652a4e3ea7475
---
# 确保用户PATH变量被严格定义

在Linux系统中，PATH变量定义了当前用户上下文中可执行文件查找路径。例如，用户在任意目录下使用ls命令，系统会在PATH变量指定的目录下查找该命令，找到后执行。所有用户上下文中的PATH变量不能包含当前目录（即“.”）。PATH指定的目录必须是文件系统中真实存在的路径，并符合系统的设计期望。正确的PATH值，可以有效防止系统命令被恶意的指令替代，从而保障系统命令能够安全执行。

openEuler系统默认的PATH变量为：/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin，可根据实际场景对PATH进行修改，但务必确保其正确性。


1. 通过echo命令可以查看当前用户上下文中PATH的值，检查其设置是否正确。

  - openEuler root用户上下文中PATH值如下：

```
echo $PATH
```

```
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
```


  - openEuler普通用户上下文中PATH值如下（以test用户为例）：

```
echo $PATH
```

```
/usr/local/bin:/usr/bin
```


2. 如需修改PATH变量值，可通过以下方式操作。
PATH环境变量分为两部分：一部分在“/etc/profile”文件中设置，影响所有用户；一部分在用户目录下.bashrc或.bash_profile文件中设置，仅影响当前用户。通过以下方式修改这两个文件中PATH相关的配置，即可修改系统PATH变量值（永久或临时），例如：

  - 方式一：永久修改配置文件，以“/etc/profile”为例。

    a. 打开配置文件。

```
vim /etc/profile
```


    b. 按“i”进入编辑模式，修改PATH变量值。

```
export PATH=$PATH:<attach new path>
// attach new path：添加新路径。
```


    c. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
  - 方式二：临时修改当前会话的PATH值，会话关闭后自动失效。

```
export PATH=$PATH:<attach new path>
// attach new path：添加新路径。
```
