웹마스터 팁
cron 에서 서비스 컨트롤에 따른 소소한 팁
2015.10.22 10:53
보안 때문에 FTP 서비스를 안하는데 자꾸만 FTP를 열어달라고 해서 고민 끝에 시간대별로 하루에
언제부터 언제까지 열어 주기로 했습니다.
"데비안 계열의 우분투 입니다."
그래서
# crontab -e
# m h dom mon dow command
00 09 * * * /usr/sbin/service vsftpd start > /tmp/aaaa 2>&1
00 11 * * * /usr/sbin/service vsftpd stop > /tmp/aaaa 2>&1
하고 되려니 했습니다.
안된다기에 로그를 봤고 단순하게 생각하고 여러가지 방법을 서봤는데 모두 실패했습니다.
스쿨에서 QA도 해보고..
문제는 /etc/init.d/vsftpd 스크립트 내부에서 PATH에 들어 있는 명령어는
경로를 적어주지 않고 있는것이 문제 였습니다.
해결법 -------------------------------------------------------------------------
crontab은 환경 변수를 모두 reset합니다. 즉, 콘솔상에서 echo $PATH 결과와
crontab에서 echo $PATH 한 결과는 다릅니다.
[root@test/root]# crontab -e
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
00 09 * * * /usr/sbin/service vsftpd start > /tmp/aaaa 2>&1
00 11 * * * /usr/sbin/service vsftpd stop > /tmp/aaaa 2>&1
:wq