UnixFileSystem.createFileExclusively
2022, Apr 07
unix file
problem
- apache poi로 엑셀 파일을 생성해서 unix시스템에 파일쓰기할 때 Permission denied 발생
error
java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2063)
at org.apache.poi.util.DefaultTempFileCreationsStrategy.createTempFile(DefaultTempFileCreationsStrategy.java:110)
solved
- 만약에 톰캣 기본 폴더를 지정하지 않았다면, /tmp 경로에 가면 아래 폴더들이 존재한다.
- hsperfdata_로 시작하는 폴더와 poifiles폴더의 권한이 맞게 되어있는지 체크
- 또는 기본 폴더도 변경하자 (centos에서는 주기적으로 /tmp 하위 삭제함)
server:
tomcat:
basedir: /tmp 외의 폴더로 변경
reference
java.io.IOException: Permission denied