系统环境CentOS 7 + Java 8

SpringBoot内置的Tomcat启动时创建临时目录保存上传缓冲文件,但CentOS会定期清理 默认的临时文件目录(一般都在/tmp下)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

解决方案:

一、修改tomcat临时目录

  可以采用配置文件的方式(server.tomcat.basedir=/tmp/tomcat),也可以注入配置bean

@Configuration
public class MultipartConfig {

    /**
     * 文件上传临时路径
     */
    @Bean
    MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        String location = System.getProperty("user.dir") + "/data/tmp";
        File tmpFile = new File(location);
        if (!tmpFile.exists()) {
            tmpFile.mkdirs();
        }
        factory.setLocation(location);
        return factory.createMultipartConfig();
    }
}

--------------------- 
作者:ss小学生ss 
来源:CSDN 
原文:https://blog.csdn.net/llibin1024530411/article/details/79474953 
版权声明:本文为博主原创文章,转载请附上博文链接!

二、修改CentOS的临时目录配置文件,不要清理指定目录

修改 /usr/lib/tmpfiles.d/tmp.conf

# 添加一行

x /tmp/tomcat.*

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄