第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. java中Set类接口的用法

    在Java中使用Set,可以方便地将需要的类型,以集合类型保存在一个变量中.主要应用在显示列表. Set是一个不包含重复元素的collection.更确切地讲,set 不包含满足 e1.equals( ...

  2. JAVA实现上传文件到服务器、删除服务器文件

    使用的jar包: <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</art ...

  3. Spring常用注解介绍【经典总结】

    Spring的一个核心功能是IOC,就是将Bean初始化加载到容器中,Bean是如何加载到容器的,可以使用Spring注解方式或者Spring XML配置方式. Spring注解方式减少了配置文件内容 ...

  4. 【POJ】2348 Euclid's Game(扩欧)

    Description Two players, Stan and Ollie, play, starting with two natural numbers. Stan, the first pl ...

  5. poj1006中国剩余定理

    Biorhythms Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 103506   Accepted: 31995 Des ...

  6. 1001 数组中和等于K的数对 1002 数塔取数问题 1003 阶乘后面0的数量 1004 n^n的末位数字 1009 数字1的数量

    1001 数组中和等于K的数对 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K ...

  7. PHP中 HTTP_HOST 和 SERVER_NAME 的区别

    最近在开发站群软件,用到了根据访问域名判断子站点的相关问题.PHP获取当前域名有两个变量 HTTP_HOST 和 SERVER_NAME,我想知道两者的区别以及哪个更加可靠. 首先我想说,百度上那些转 ...

  8. 程序员 各种PDF格式电子书--免费网盘资源

    Java <设计模式之禅(完整高清版)> 链接:http://pan.baidu.com/s/1bo7noMb 密码:5kve  <重构_改善既有代码的设计> 链接:http: ...

  9. Tarjan LCA

    强连通 迷宫城堡 Proving Equivalences Equivalent Sets Summer Holiday Intelligence System The King's Problem ...

  10. Jquery.Uploadify实现批量上传显示进度条 取消 上传后缩略图显示 可删除

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="UpLoad.aspx.cs&q ...