crontab 定时任务执行sqoop任务脚本,无法查看运行日志

前段时间于到一个关于crontab定时任务的问题:问题是这样的

我通过sqoop命令将mysql数据库数据同步到hive表,

linux命令行执行没毛病,

写成shell脚本,做crontab定时任务,发现执行不成功。

tail -f /var/log/cron 执行正常。

tail -f /var/mail/spool/work 没有日志输出。(我是work用户执行)

其实是sqoop任务出问题啦,但是我无法查看错误日志,命令行执行又没有这样问题。

后来发现

 cannot update mailbox /var/mail/root for user root. error writing messa

cannot update mailbox /var/mail/root for user root. error writing message: File too large

提示

该问题主要原因是因为在postfix配置文件main.cf.default

mailbox_size_limit = 51200000(50M)

也就是说当用户的对应的/var/mail/USERNAME 文件的大小不能超过50M 如果超出该值时可能会出现只能

发送不能接受的情况,

解决办法:

第一种方法, 是清空用户对应的文件,当然也可以创建一个脚本,让其自动清

空对应的文件

echo “”>/var/mail/USERNAME

第二种方法,是重新设置 postfix main.cf.default 配置文件中对应

mailbox_size_limit=51200000

修改为

mailbox_size_limit=0

把值改为零的情况下,就是不限制

在修改完postfix maincf.deafault 配置文件时,需要重新加载postfix

#service  postfix  reload

猜你喜欢

转载自blog.csdn.net/github_lzt/article/details/85274495