Java에서 리눅스 톰캣 파일 업로드 경로 및 접근 권한 변경
리눅스 톰캣
파일 업로드 경로
/usr/local/톰캣폴더/bin
Java에서 new File 시 파일이 생성되는 기본 경로입니다.
파일 업로드 경로 변경
new File("./../webapps/프로젝트명/webapp이하폴더명/파일명.확장자");
위와 같이, 톰캣 bin 경로에서부터 상대경로로 프로젝트 폴더에 접근하여 파일을 생성하면 됩니다.
폴더 경로는 application.properties에 설정해두고 @Value 어노테이션으로 불러와서 공통으로 사용하면 좋습니다.
윈도우 톰캣
파일 업로드 경로
/ (프로젝트 폴더)
파일 업로드 경로 변경
new File("./src/main/webapp/webapp이하폴더명/파일명.확장자");
톰캣 업로드 파일 접근 권한 변경
톰캣에 업로드한 파일의 기본 접근 권한은 -rw-r—– 라서 Java에서 읽을 수 없습니다.
Java에서 new File 시 에러 메세지
javax.imageio.IIOException: Can't read input file!
catalina.sh 설정 변경
vi /usr/local/톰캣폴더/bin/catalina.sh
폴더 및 파일 기본 생성 권한을 0027을 0022로 바꿔주고 톰캣을 재기동하면 파일을 읽을 수 없는 에러가 해결됩니다.
if [ -z "$UMASK" ]; then
UMASK="0022"
fi
umask $UMASK
변경 후 파일 접근 권한
-rw-r--r--
리눅스 파일 접근 권한 보는 법
예시 : -rwxr-xr-- | ||
---|---|---|
1번째 문자 | - | -는 파일이고, d는 폴더입니다. |
2~4번째 문자 | rwx | 파일 소유자에게 읽기, 쓰기, 실행 권한이 있습니다. |
5~7번째 문자 | r-x | 그룹에게 읽기, 실행 권한이 있습니다. |
8~10번째 문자 | r-- | 기타 사용자에게 읽기 권한이 있습니다. |
Leave a comment