You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Linux下WildFly 10服务器WAR及文件上传所用的tmp目录位置?

解决WildFly 10上传补丁时的"No space left on device"异常

针对你遇到的/opt分区空间不足导致大补丁上传失败的问题,结合tomahawk上传组件和WildFly的特性,我整理了几个实用的解决方案:

1. 调整tomahawk上传临时目录到剩余空间充足的分区

默认情况下,tomahawk的<t:inputFileUpload>会把上传文件存到系统的/tmp目录,而如果/tmp和WildFly安装目录都在/opt分区下,大文件很快就会占满空间。你可以通过修改应用的web.xml来指定新的临时目录:

在你的应用WEB-INF/web.xml中添加以下配置:

<context-param>
    <param-name>org.apache.myfaces.UPLOAD_TEMP_DIR</param-name>
    <param-value>/data/tomahawk_uploads</param-value>
</context-param>

然后创建这个目录并设置正确的权限(确保WildFly运行用户有读写权限):

mkdir -p /data/tomahawk_uploads
chown wildfly:wildfly /data/tomahawk_uploads

之后重启应用,上传的临时文件就会存到新目录,避开/opt分区的空间限制。

2. 修改WildFly的standalone临时目录位置

补丁最终会被复制到$JBOSS_HOME/standalone/tmp/appName.war,这个目录同样在/opt分区下。你可以把WildFly的临时目录迁移到其他分区:

方法A:用软链接迁移临时目录

# 先停止WildFly服务
systemctl stop wildfly

# 备份原临时目录的内容(如果有需要保留的文件)
mv /opt/wildfly/standalone/tmp /opt/wildfly/standalone/tmp_backup

# 在剩余空间充足的分区创建新临时目录
mkdir /data/wildfly_tmp

# 建立软链接指向新目录
ln -s /data/wildfly_tmp /opt/wildfly/standalone/tmp

# 启动WildFly
systemctl start wildfly

方法B:修改WildFly配置文件

编辑$JBOSS_HOME/standalone/configuration/standalone.xml,找到<paths>节点下的tmp路径配置,修改为新的目录:

<path name="tmp" path="/data/wildfly_tmp"/>

同样要确保新目录的权限正确,然后重启WildFly生效。

3. 清理/opt分区的冗余文件

如果暂时无法迁移目录,可以先清理/opt分区的无用文件释放空间:

  • 清理WildFly的旧日志文件:
    # 删除30天前的日志归档文件
    rm -rf /opt/wildfly/standalone/log/*.log.*
    
  • 删除standalone/deployments目录下未使用的旧WAR/EAR包(比如已卸载的版本)
  • 清理系统临时文件(注意不要删除正在使用的文件,建议在维护窗口操作):
    # 清理超过72小时未访问的临时文件
    tmpwatch 720 /tmp
    

4. 扩展/opt分区的存储空间

如果以上方法都只是临时解决,你可以考虑扩容/opt分区:

  • 如果服务器有未分配的磁盘空间,可以通过LVM工具扩展/opt分区的容量
  • 或者添加新磁盘,将WildFly整个安装目录迁移到新磁盘,然后用软链接指向原路径:
    systemctl stop wildfly
    mv /opt/wildfly /data/wildfly
    ln -s /data/wildfly /opt/wildfly
    systemctl start wildfly
    

建议优先尝试调整临时目录的方案,这是最快解决问题的方式,之后再根据情况进行清理或扩容。

内容的提问来源于stack exchange,提问作者Sergey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:25:35