需求描述:

  早上设置了ntp客户端的定时任务,发现不断的有You have new mail in /var/spool/mail/root这种提示.

  然后,就看了具体的文件,由于ntpdate是每分钟执行,执行的结果,都输出到mail邮件里面了.所以,担心

  这个给撑爆了,就预先放置吧,看看如何在crontab不进行标准或错误输出.

操作过程:

1.查看定时任务,和mail信息

[root@testvm02 mail]# crontab -l
*/ * * * * /usr/sbin/ntpdate 192.168.53.22
[root@testvm02 mail]# crontab -l #一分钟之后,再次执行就报了mail的提示.
*/1 * * * * /usr/sbin/ntpdate 192.168.53.22
You have new mail in /var/spool/mail/root

2.查看这个mail中到底是什么

[root@testvm02 mail]# ls -l /var/spool/mail/root
-rw------- root mail Aug : /var/spool/mail/root #最近刚有新的信息输入
You have new mail in /var/spool/mail/root
[root@testvm02 mail]# more /var/spool/mail/root #查看文件的内容就是发送邮件的信息和执行命令的输出.就是发送邮件的信息,把你执行的命令结果,发送出去.
From root@testvm02.localdomain Tue Aug ::
Return-Path: <root@testvm02.localdomain>
X-Original-To: root
Delivered-To: root@testvm02.localdomain
Received: by testvm02.localdomain (Postfix, from userid )
id A4E68440BC; Tue, Aug :: + (CST)
From: root@testvm02.localdomain (Cron Daemon)
To: root@testvm02.localdomain
Subject: Cron <root@testvm02> ntpdate 192.168.53.22
Content-Type: text/plain; charset=UTF-
Auto-Submitted: auto-generated
X-Cron-Env: <LANG=en_US.UTF->
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <.A4E68440BC@testvm02.localdomain>
Date: Tue, Aug :: + (CST) /bin/sh: ntpdate: command not found From root@testvm02.localdomain Tue Aug ::
Return-Path: <root@testvm02.localdomain>
X-Original-To: root
Delivered-To: root@testvm02.localdomain
Received: by testvm02.localdomain (Postfix, from userid )
id A83D7440BD; Tue, Aug :: + (CST)
From: root@testvm02.localdomain (Cron Daemon)
To: root@testvm02.localdomain
Subject: Cron <root@testvm02> ntpdate 192.168.53.22
Content-Type: text/plain; charset=UTF-
Auto-Submitted: auto-generated
X-Cron-Env: <LANG=en_US.UTF->

3.通过重定向将命令执行的错误和标准输出都屏蔽掉

[root@testvm02 mail]# crontab -e
crontab: installing new crontab
[root@testvm02 mail]# crontab -l
*/ * * * * /usr/sbin/ntpdate 192.168.53.22 >/dev/null 2>&1

备注:这样执行就没有标准和错误输出了.

4.再次查看文件是否有增长

[root@testvm02 mail]# ls -l root
-rw------- root mail Aug : root
[root@testvm02 mail]# ls -l root
-rw------- root mail Aug : root
[root@testvm02 mail]# ls -l root
-rw------- root mail Aug : root
[root@testvm02 mail]# date
Wed Aug :: CST

备注:该文件中的内容没有增加,以后也不会出现不断增加,可能会撑爆磁盘的情况了.

另:在其他的博客中设置echo "unset MAILCHECK">>/etc/profile 可以不检查mail目录中的内容,但是只是不检查发送邮件,但是root的内容还在增加.

5.彻底关闭cron进程发送邮件的方式

  5.1crontab文件中,开头增加MAILTO="",表示没有收件人

[root@testvm02 mail]# crontab -l
MAILTO=""
*/ * * * * /usr/sbin/ntpdate 192.168.53.22

  5.2crontab定时任务增加输出重定向

*/ * * * * /usr/sbin/ntpdate 192.168.53.22 >/dev/null >&

备注:这样的话/var/spool/mail中root文件就不会在增加了,否则即使是unset MAILCHECK不提示有邮件了,但是这个文件还是在增加.

文档创建时间:2018年8月8日11:10:02

linux避免crontab的执行输出将磁盘目录占满?用户的mail占用大的空间?的更多相关文章

  1. Linux中crontab无法执行java程序的问题

    Linux中crontab无法执行java程序的问题 jdk环境变量配置问题:可以用全路径来解决: 竟然是kill -9之后,后面的脚本都不运行,这个还没有找到原因啊: 即便是系统级别的 ls 命令, ...

  2. linux设置crontab定时执行脚本备份mysql

    前言:mysqldump备份数据库命令 mysqldump -u root -psztx@2018 fengliuxiaosan > /dbbackup/fengliuxiaosan.sql## ...

  3. 如何使用Linux的Crontab定时执行PHP脚本的方法

    我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...

  4. 如何使用Linux的Crontab定时执行PHP脚本的方法[转载]

    首先说说cron,它是一个linux下的定时执行工具.根用户以外的用户可以使用 crontab 工具来配置 cron 任务.所有用户定义的 crontab 都被保存在/var/spool/cron 目 ...

  5. linux定时任务crontab怎样执行root命令

    在/var/spool/cron/文件夹下放置了所有定时任务文件, 1.运行crontab -u $用户名 -e会显示$用户的所有定时任务: 2.运行sudo crontab -e会显示root用户所 ...

  6. Linux使用crontab定时执行Python脚本清理日志

    Linux中,周期执行的任务一般由crond这个守护进程来处理.cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.crond的配置文件称为"crontab", ...

  7. linux下crontab定时执行本地脚本和定时访问指定url

    https://my.oschina.net/u/2487410/blog/683308 使用linux curl命令讲解:http://www.linuxdiyf.com/linux/2800.ht ...

  8. 使用Linux的Crontab定时执行PHP脚本

    0 */6 * * * /home/kdb/php/bin/php /home/kdb/apache/htdocs/lklkdbplatform/kdb_release/Crontab/index.p ...

  9. linux下crontab定时执行shell脚本调用oracle 存储过程

    问题:脚本内调用存储过程,脚本直接执行没问题,使用crontab 执行脚本存储过程未执行 原因:缺少oracle环境变量 解决:在shell脚本里添加oracle的环境变量 #!/bin/sh PAT ...

随机推荐

  1. mypy 支持静态类型编程的python变种

    每种编程语言都有一群固定的用户,对于那些习惯将不同编程语言用成同样的感觉的人来说,最是难受.因为每种语言都有它独特的设计『哲学』和擅长的应用领域. PHP给大家的一贯的印象都是动态弱类型语言,Pyth ...

  2. BMP位图文件格式详解及编程建议

    BMP文件渊源流长,虽然对JPG.PNG等格式图像文件来说,确实有点土,但是毕竟BMP文件格式相对简单,容易理解,至于BMP众多的位图格式也不能责怪微软,主要是早期谁也没料到图片技术会发展的这么快,而 ...

  3. 开源网站访问统计系统Piwik

    http://www.piwik.cn/ http://www.piwik.org/ Piwik 是一套基于 Php+MySQL 技术构建,能够与 Google Analytics 相媲美的开源网站访 ...

  4. ElasticSearch 深度分页解决方案 {"index":{"number_of_replicas":0}}

    常见深度分页方式 from+size es 默认采用的分页方式是 from+ size 的形式,在深度分页的情况下,这种使用方式效率是非常低的,比如 from = 5000, size=10, es ...

  5. es 剩余磁盘空间达到es最小值,添加数据被block

    剩余磁盘空间达到es最小值,添加数据被block PUT _all/_settings {"index.blocks.read_only_allow_delete": null} ...

  6. javascript显示年月日时间代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 【转】jmeter 如何将上一个请求的结果作为下一个请求的参数——使用正则提取器

    1.简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可以用于测试静态和动态资源例如 ...

  8. 性能测试-Gatling(一)

    背景说明转自 : http://www.infoq.com/cn/articles/new-generation-server-testing-tool-gatling/ 以前Jmeter用的多,如文 ...

  9. Ogre 监听类与渲染流程

    Ogre中有许多监听类,我们可以简单理解成C#中的事件,这些类作用都不小,说大点可能改变流程,说小点修改参数等,下面列举一些常用的监听类. FrameListener:由Ogre中的Root负责维护, ...

  10. 技能UP:SAP OBYC自动记账的实例说明(含value String应用说明)

    一. 自动过账原理 在MM模块的许多操作都能实现在FI模块自动过账,如PO收货.发票验证(LIV).工单发料.向生产车间发料等等.不用说,一定需要在IMG中进行配置才可以实现自动处理.但SAP实现的这 ...