웹마스터 팁

보안 때문에 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