3.7. 文件系统路径


JBoss EAP 将逻辑名称用于文件系统路径。然后,其他配置区域可以使用其逻辑名称引用路径,从而避免为每个实例使用绝对路径,并允许特定主机配置解析为通用逻辑名称。

例如,默认的 logging 子系统配置将 jboss.server.log.dir 声明为服务器日志目录的逻辑名称。

示例:服务器日志目录的相对路径示例

<file relative-to="jboss.server.log.dir" path="server.log"/>
Copy to Clipboard Toggle word wrap

JBoss EAP 自动提供多个标准路径,用户无需在配置文件中进行配置。

Expand
表 3.5. 标准路径
属性描述

java.home

Java 安装目录

jboss.controller.temp.dir

单机服务器和受管域的常用别名.用于临时文件存储的目录。等同于受管域中的 jboss.domain.temp.dir 和单机服务器上的 jboss.server.temp.dir

jboss.domain.base.dir

域内容的基础目录。

jboss.domain.config.dir

包含域配置的目录。

jboss.domain.data.dir

域将用于持久数据存储的目录。

jboss.domain.log.dir

域将用于持久日志文件存储的目录。

jboss.domain.temp.dir

域将用于临时文件存储的目录。

jboss.domain.deployment.dir

域将用于存储已部署内容的目录。

jboss.domain.servers.dir

域将用于存储受管域实例输出的目录。

jboss.home.dir

JBoss EAP 分发的根目录.

jboss.server.base.dir

单机服务器内容的基础目录。

jboss.server.config.dir

包含单机服务器配置的目录。

jboss.server.data.dir

单机服务器将用于持久数据存储的目录。

jboss.server.log.dir

单机服务器将用于日志文件存储的目录。

jboss.server.temp.dir

单机服务器将用于临时文件存储的目录。

jboss.server.deploy.dir

单机服务器将用于存储已部署内容的目录。

user.dir

用户的当前工作目录.

user.home

用户主目录。

您可以 覆盖标准路径添加自定义路径

3.7.1. 查看文件系统路径

使用以下命令列出文件系统路径:

ls /path
Copy to Clipboard Toggle word wrap
注意

在受管域中,您可以使用以下命令列出特定服务器的文件系统路径:

ls /host=HOST_NAME/server=SERVER_NAME/path
Copy to Clipboard Toggle word wrap

使用以下命令来读取文件系统路径的值:

/path=PATH_NAME:read-resource
Copy to Clipboard Toggle word wrap
注意

在受管域中,您可以使用以下命令读取特定服务器的文件系统路径值:

/host=HOST_NAME/server=SERVER_NAME/path=PATH_NAME:read-resource
Copy to Clipboard Toggle word wrap

3.7.2. 覆盖标准路径

您可以覆盖以 jboss. server.* 或 jboss. domain.* 开头的标准路径的默认位置。这可以通过以下两种方式之一完成:

  • 启动服务器时传递命令行参数。例如:

    $ EAP_HOME/bin/standalone.sh -Djboss.server.log.dir=/var/log
    Copy to Clipboard Toggle word wrap
  • 修改服务器配置文件中 standalone.conf 或 domain.conf 中的 JAVA_OPTS 变量,使其包含新位置。例如:

    JAVA_OPTS="$JAVA_OPTS -Djboss.server.log.dir=/var/log"
    Copy to Clipboard Toggle word wrap
覆盖受管域的标准路径

在本示例中,目标是将域文件存储在 /opt/jboss_eap/domain_data 目录中,并为每个顶级目录指定一个自定义名称。使用默认目录分组 by-server

  • 日志文件存储在 all_logs 子目录中
  • 数据文件存储在 all_data 子目录中
  • 临时文件存储在 all_temp 子目录中
  • 服务器的文件存储在 all_servers 子目录中

为了实现此配置,启动 JBoss EAP 时将覆盖多个系统属性。

$ EAP_HOME/bin/domain.sh -Djboss.domain.temp.dir=/opt/jboss_eap/domain_data/all_temp -Djboss.domain.log.dir=/opt/jboss_eap/domain_data/all_logs -Djboss.domain.data.dir=/opt/jboss_eap/domain_data/all_data -Djboss.domain.servers.dir=/opt/jboss_eap/domain_data/all_servers
Copy to Clipboard Toggle word wrap

生成的路径结构如下:

/opt/jboss_eap/domain_data/
               ├── all_data
               ├── all_logs
               ├── all_servers
               │   ├── server-one
               │   │   ├── data
               │   │   ├── log
               │   │   └── tmp
               │   └── server-two
               │       ├── data
               │       ├── log
               │       └── tmp
               └── all_temp
Copy to Clipboard Toggle word wrap

3.7.3. 添加自定义路径

您可以使用管理 CLI 或管理控制台添加自定义文件系统路径。

  • 在管理 CLI 中,您可以使用以下管理 CLI 命令添加新路径:

    /path=my.custom.path:add(path=/my/custom/path)
    Copy to Clipboard Toggle word wrap
  • 从管理控制台中,您可以通过导航到 Configuration 选项卡、选择 路径并单击 View 来配置文件系统路径。在这里,您可以添加、修改和删除路径。

然后您可以在配置中使用这个自定义路径。例如,以下日志处理程序将自定义路径用于其相对路径:

<subsystem xmlns="urn:jboss:domain:logging:6.0">
  ...
  <periodic-rotating-file-handler name="FILE" autoflush="true">
    <formatter>
      <named-formatter name="PATTERN"/>
    </formatter>
    <file relative-to="my.custom.path" path="server.log"/>
    <suffix value=".yyyy-MM-dd"/>
    <append value="true"/>
  </periodic-rotating-file-handler>
  ...
</subsystem>
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat