第1章 软件查询

1.1 查询软件是否安装

rpm -qa |grep cron 查询是否安装了这个软件.

[root@znix ~]# rpm -qa |grep cron

crontabs-1.10-33.el6.noarch

cronie-1.4.4-16.el6_8.2.x86_64

cronie-anacron-1.4.4-16.el6_8.2.x86_64

[root@znix ~]#

1.2 查看查询是否正在运行

[root@znix ~]# ps -ef |grep crond

root       1570      1  0 Sep02 ?        00:00:00 crond

root      14941  14780  0 09:08 pts/0    00:00:00 grep --color=auto crond

1.3 安装crond的方法

1.3.1 crond属于哪里

crond,不能单独安装,是软件包里所带的功能。

yum安装的时候需要需要安装,

[root@znix ~]# yum install crond

Loaded plugins: fastestmirror, security

Setting up Install Process

Loading mirror speeds from cached hostfile

* base: mirrors.btte.net

* extras: mirrors.btte.net

* updates: mirrors.sohu.com

base                                       | 3.7 kB     00:00

extras                                     | 3.4 kB     00:00

updates                                    | 3.4 kB     00:00

No package crond available.

Error: Nothing to do

1.3.2 查询软件所属软件包

[root@znix ~]# rpm -qf  `which crond`

cronie-1.4.4-16.el6_8.2.x86_64

1.3.3 如何查看软件包里的内容

rpm -ql  显示软件包里的信息。名字必须一致.

[root@znix ~]# rpm -ql cronie

/etc/cron.d

/etc/cron.d/0hourly

/etc/cron.deny

/etc/pam.d/crond

/etc/rc.d/init.d/crond

/etc/sysconfig/crond

/usr/bin/crontab

/usr/sbin/crond

/usr/share/doc/cronie-1.4.4

/usr/share/doc/cronie-1.4.4/AUTHORS

/usr/share/doc/cronie-1.4.4/COPYING

/usr/share/doc/cronie-1.4.4/ChangeLog

/usr/share/doc/cronie-1.4.4/INSTALL

/usr/share/doc/cronie-1.4.4/README

/usr/share/man/man1/crontab.1.gz

/usr/share/man/man5/crontab.5.gz

/usr/share/man/man8/cron.8.gz

/usr/share/man/man8/crond.8.gz

/var/spool/cron

1.3.4 如何查看一个安装的软件

rpm  如何查询软件包的内容

yum 安装不上的,可能是软件包的一部分

查看 crond 属于哪个软件包,查询时要使用绝对路径

1.4 查询ifconfig 属于哪个软件包

[root@znix ~]#

[root@znix ~]# rpm -qf `which ifconfig`

net-tools-1.60-114.el6.x86_64

[root@znix ~]# rpm -ql net-tools

/bin/dnsdomainname

/bin/domainname

第2章 定时任务

2.1 什么是定时任务

每隔相同的时间,相同的事情(执行命令或脚本)。

2.2 系统中的定时任务

[root@znix ~]# ls -ld /etc/cron*

drwxr-xr-x. 2 root root 4096 Aug 10 18:37 /etc/cron.d

drwxr-xr-x. 2 root root 4096 Aug 10 18:38 /etc/cron.daily

-rw-------. 1 root root    0 Aug 24  2016 /etc/cron.deny

drwxr-xr-x. 2 root root 4096 Aug 10 18:36 /etc/cron.hourly

drwxr-xr-x. 2 root root 4096 Aug 10 18:37 /etc/cron.monthly

-rw-r--r--. 1 root root  457 Sep 27  2011 /etc/crontab

drwxr-xr-x. 2 root root 4096 Sep 27  2011 /etc/cron.weekly

/etc/cron.deny 禁止用户使用定时任务 ,把用户名放到里面

2.2.1 日志切割-日志的轮询

每隔一段时间,将日志进行分割

[root@znix ~]# ls /var/log/messages*

/var/log/messages           /var/log/messages-20170828

/var/log/messages-20170814  /var/log/messages-20170904

/var/log/messages-20170821

2.2.2 日志的轮询的定时任务

[root@znix cron.daily]# cat /etc/logrotate.d/syslog

/var/log/cron

/var/log/maillog

/var/log/messages

/var/log/secure

/var/log/spooler

{

sharedscripts

postrotate

/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true

endscript

}

2.3 用户定时任务crontab

2.3.1 crontab 使用

-e  编辑

-l  查看

-u  设置指定用户的定时任务

[root@znix cron.daily]# crontab --help

crontab: invalid option -- '-'

crontab: usage error: unrecognized option

usage:  crontab [-u user] file

crontab [-u user] [ -e | -l | -r ]

(default operation is replace, per 1003.2)

(edit user's crontab)

(list user's crontab)

-r  (delete user's crontab)

-i  (prompt before deleting user's crontab)

-s  (selinux context)

2.3.2 指定用户的定时任务

-u 指定用户

[root@znix ~]# crontab -u oldboy -l

#oldboy

[root@znix ~]# ll /var/spool/cron/

total 8

-rw------- 1 root root  8 Sep  7 10:23 oldboy

-rw------- 1 root root 77 Sep  4 20:43 root

2.4 定时任务的使用-

2.4.1 看定时任务的软件的是否能用

[root@znix ~]# ps -ef |grep cron

root       1570      1  0 Sep02 ?        00:00:00 crond

[root@znix ~]# service crond status

crond (pid  1570) is running...

[root@znix ~]# /etc/init.d/crond status

crond (pid  1570) is running...

2.4.2 看定时任务是否开机自启动

[root@znix ~]# chkconfig |grep cron

crond          0:off   1:off   2:on    3:on    4:on    5:on    6:off

2.4.3 linux里的守护进程 (服务)

[root@znix ~]# chkconfig |egrep "crond|network|rsyslog|sshd|sysstat"

crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off   定时任务

network        0:off   1:off   2:on    3:on    4:on    5:on    6:off   网络服务

rsyslog        0:off   1:off   2:on    3:on    4:on    5:on    6:off   系统日志

sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off   远程链接服务器

sysstat        0:off   1:on    2:on    3:on    4:on    5:on    6:off   监测系统性能及效率

2.5 与定时任务相关的文件

2.5.1 定时任务的日志

[root@znix ~]# tail -2 /var/log/cron

Sep  7 10:23:42 znix crontab[15409]: (root) LIST (oldboy)

Sep  7 10:25:01 znix CROND[15412]: (root) CMD (/usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1)

2.5.2 定时任务所在目录

[root@znix ~]# ls /var/spool/cron

2.5.3 禁止那些用户使用定时任务

[root@znix ~]# cat /etc/cron.deny

2.6 linux中查看的命令日志

对与较大的文件,查看的时候,尽量不要cat.通过其他的命令,快速找到要找的内容.

grep /egrep

less

tail /tail -f

head

2.7 定时任务的基本格式

* * * * *  CMD

分时日月周 CMD

其中 * 表示每

/n 每隔多长时间

2.7.1 定时任务中的时间

[root@znix ~]# cat /etc/crontab

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

HOME=/

# For details see man 4 crontabs

# Example of job definition:

# .---------------- minute (0 - 59)

# |  .------------- hour (0 - 23)

# |  |  .---------- day of month (1 - 31)

# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# |  |  |  |  |

# *  *  *  *  * user-name command to be executed

2.7.2 定时任务--每5分钟同步一下系统时间

1.用什么命令,首先将命令测试一下,没有错误后,再写入定时任务.

[root@znix ~]# ntpdate ntp1.aliyun.com

7 Sep 10:52:57 ntpdate[15460]: adjust time server 182.92.12.11 offset 0.479762 sec

2.写定时任务--写定时任务要使用绝对路径, 在后面加上2>&1,表示正确的,错误的都输出到同一个文件中.

[root@znix ~]# crontab -e

###time tongbu

*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1

3.检查结果,可以看日志,也可看命令的执行结果.

[root@znix ~]# tail -1 /var/log/cron

Sep  7 10:55:01 znix CROND[15466]: (root) CMD (/usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1)

实例2-1 每分钟把自己的名字 追加到 /oldboy/oldboy.txt

* * * * * /bin/echo clsn >> /oldboy/oldboy.txt

使用tail命令查看命令的执行情况,可以看到文件的内容.

[root@znix ~]# tail -f /oldboy/oldboy.txt

clsn

clsn

clsn

查看日志,查看命令执行的时间.

[root@znix ~]# tail -3 /var/log/cron

Sep  7 12:05:01 znix CROND[15674]: (root) CMD (/bin/echo clsn >> /oldboy/oldboy.txt 2>&1)

Sep  7 12:06:01 znix CROND[15678]: (root) CMD (/bin/echo clsn >> /oldboy/oldboy.txt 2>&1)

Sep  7 12:07:01 znix CROND[15681]: (root) CMD (/bin/echo clsn >> /oldboy/oldboy.txt 2>&1)

2.8 注意

错误:

* * * * *      /bin/echo "oldboy" >>/oldboy/oldboy.txt >/dev/null 2>&1

实例2-2 二者不可同时使用.

定时任务中 命令/脚本定向到空

/dev/null 2>&1

定时任务中 命令/脚本追加到文件中

/oldboy/oldboy.txt 2>&1

Linux中包管理与定时任务的更多相关文章

  1. 【转】Linux中包管理与定时任务

    [转]Linux中包管理与定时任务 第1章 软件查询 1.1 查询软件是否安装 rpm -qa |grep cron 查询是否安装了这个软件. [root@znix ~]# rpm -qa |grep ...

  2. Linux程序包管理之yum及源代码安装

    第十六章.Linux程序包管理之yum及源代码安装 目录 yum介绍 yum配置文件 yum的repo配置文件中可用的变量 yum命令的使用 使用光盘作为本地yum仓库 如何创建yum仓库 编译安装的 ...

  3. Linux程序包管理rpm与yum

    Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...

  4. 【转】Linux中常见问题(磁盘 定时任务)

    [转]Linux中常见问题(磁盘 定时任务) 第1章 linux无法上网 1)     第一步,先ping域名. ping www.baidu.com 2)再ping一个公网ip , ping 223 ...

  5. 深入理解Linux中内存管理

    前一段时间看了<深入理解Linux内核>对其中的内存管理部分花了不少时间,但是还是有很多问题不是很清楚,最近又花了一些时间复习了一下,在这里记录下自己的理解和对Linux中内存管理的一些看 ...

  6. Linux程序包管理之rpm

    rpm简介 rpm( Red Hat Package Manager )是一个开放的软件包管理系统.它工作于Red Hat Linux及其他Linux系统,成为Linux中公认的软件包管理标准. rp ...

  7. Linux中常见问题(磁盘 定时任务)

    第1章 linux无法上网 1)     第一步,先ping域名. ping www.baidu.com 2)再ping一个公网ip , ping 223.5.5.5/223.6.6.6/114.11 ...

  8. Linux之包管理工具总结[RPM/DPKG]-[YUM/APT]

    0.关键词解释 RPM:Red Hat Package Manager(原名),RPM Package Manager(现名,递归缩写,类似于GNU的命名); 解释:RPM软件包管理器 YUM:Yel ...

  9. Linux对包管理阐述

    Centos/Redhat/Fedora的软件包,都是rpm后缀的文件.包管理器rpm(Redhat packages manager)  linux的哲学思想是简单命令解决复杂任务,因此每个软件的功 ...

随机推荐

  1. Linux Expect自动化交互脚本简介

    相关资料 维基百科:Expect SourceForge:The Expect Home Page TCL脚本言语简介 由于Expect是建立在TCL语言基础上的一个工具,因此首先检查一些TCL常见语 ...

  2. 【京东详情页】——原生js学习之匿名函数

    一.引言 在js模块中,要给每一个功能封装一个匿名函数.为了更好的理解什么是匿名函数,为什么要用匿名函数,我做了一些查阅和学习. 二.匿名函数 什么是:在创建时,不被任何变量引用的函数. 为什么:节约 ...

  3. DialogFragment的应用

    一.DialogFragment简单介绍: 1.基本概念 DialogFrament 指一个与fragment建立了关联的Dialog, 随fragment生, 随fragment死, 即Dialog ...

  4. Maven实战1

    屏上得来终觉浅,绝知此事要躬行 总结: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; c ...

  5. EXIT_SUCCESS EXIT_FAILURE

    在vc++6.0下头文件stdlib.h中定义如下: /* Definition of the argument values for the exit() function */ #define E ...

  6. [js高手之路] html5 canvas动画教程 - 实时获取鼠标的当前坐标

    有了前面的canvas基础之后,现在开始就精彩了,后面写的canvas教程都是属于综合应用,前面已经写了常用的canvas基础知识,参考链接如下: [js高手之路] html5 canvas系列教程 ...

  7. 1297. Palindrome ural1297(后缀数组)

    1297. Palindrome Time limit: 1.0 secondMemory limit: 64 MB The “U.S. Robots” HQ has just received a ...

  8. hdu4081(秦始皇的道路系统)

    During the Warring States Period of ancient China(476 BC to 221 BC), there were seven kingdoms in Ch ...

  9. thinkphp增删改查

    添加数据: (添加单行数据) // 添加成功返回1,失败返回0 (添加多行数据) // 返回添加数据的条数 删除数据: 修改数据: (修改单个字段) (修改多个字段) // 修改成功返回1,失败返回0 ...

  10. 【框架学习与探究之宿主服务--Topshelf】

    前言 此文欢迎转载,原始链接地址:http://www.cnblogs.com/DjlNet/p/7603819.html 正文 原先也偶然见过这个关键词,当时只是有个大致了解貌似和WinServic ...