linux 특정사용자로 cron 실행하기
특정 유저로 cron을 실행해서, 파일을 만들려고 하면, 폴더 권한이 755(소유자만 쓰기 가능)이라서 파일 만들기 cron이 실패하게 된다.
참고로, root로 cron을 돌리면 사용가능하나, 소유자가 root가 소유자 변경(chown)을 실행해야 한다.
#vi /etc/crontab
SHELL=/bin/bash # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) |
출처: 특정 사용자로 cron 실행하기 https://mytory.net/2017/10/11/cron-as-specific-user.html
cron으로 파일을 만드는 일을 해야 한다면, 특정 사용자로 접근해야 하는 경우가 있다. 사용자를 지정하는 /etc/crontab을 이용한다. cron으로 돌리고 있는 명령어가 www-data 소유 폴더에 리사이즈 이미지를 만들어야 했다. cron은 일반 사용자가 돌리고, 폴더 권한은 755(소유자만 쓰기 가능)였기 때문에 파일 만들기에 실패했다. 이 문제를 해결하기 위해 root로 cron을 돌릴 수도 있다. 하지만 그러면 생성된 파일의 소유자가 root가 되기 때문에 www-data 권한만 있는 웹서버가 해당 리사이즈 이미지를 지우거나 고칠 수 없다는 문제가 생긴다.
|
[그림 1. Cron job 설명]