centos 安装crontab centos7

大家好,如果您还对centos 安装crontab不太了解,没有关系,今天就由本站为大家分享centos 安装crontab的知识,包括centos7的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

CentOS下CronTab任务周期计划详解

CronTab任务周期计划

格式:

***** command

分(0-59)、时(0-23)、日(1-31)、月(1-12)、周(0-6)

说明:

1、星号可以匹配所有字符

2、一个整数、必须精确匹配

3、用短划线隔开的两个整数,它们匹配的是值的范围。

4、时间范围后加斜扛和一个步长值。1-10/2

普通用户流程:

crontab-e crontab是设置了setuid的,所以用户具有他的权限也就是root,并会在/tmp/cron....文件处理后保存在/var/spool/cron/$username中。

日志:

/var/log/cron

配置目录:

/var/run/crond.pid进程号地址

/etc/crontab使用指导文件

/etc/$weekday.等分别时日月周的目录,即可以把脚本放进去他会按时执行。

/etc/cron.{deny,allow}拒绝和允许用户使用crontab

Vixie-Cron:

centos安装时会默认安装此包,此包可以包括一个步长值。也就是如1,3,6,9,12可以写成,1-12/3除以3。所谓的*/1*/2也就是每一分钟每两分钟运行command。即1-59/{2,3}。

%号的运用:

%百分号表示command中的换行,只有第一个百分号之前的文本才包含在实际命令中,其余的行则作为该命令的标准输入。

安装:

yum install-y crontabs

使用:

crontab--help

crontab-e#检出一个crontab副本,调用vi编辑它,并重新保存在crontab目录。

crontab-l#将crontab的内容打印到标准输出。

crontab-r#册除并不留任何内容。

......

root册除其它用户。

crontab-r$username

[root@nagios~]# 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)

-e(edit user's crontab)

-l(list user's crontab)

-r(delete user's crontab)

-i(prompt before deleting user's crontab)

-s(selinux context)

[root@nagios~]# ll/usr/bin/crontab

-rwsr-xr-x 1 root root 47520 Jul 19 2011/usr/bin/crontab

[root@nagios~]# cat/var/run/crond.pid

2074

[root@nagios~]# ll/etc/|grep-E cron

drwxr-xr-x 2 root root 4096 Apr 2 00:59 cron.d

drwxr-xr-x. 2 root root 4096 Sep 27 2011 cron.daily

-rw-r--r-- 1 root root 0 Jul 19 2011 cron.deny

drwxr-xr-x 2 root root 4096 Sep 27 2011 cron.hourly

drwxr-xr-x 2 root root 4096 Sep 27 2011 cron.monthly

-rw-r--r-- 1 root root 457 Sep 27 2011 crontab

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

[root@nagios~]# 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

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

total 8

-rw------- 1 root root 60 Apr 2 01:33 root

-rw------- 1 zwhset zwhset 68 Apr 2 01:51 zwhset

[root@nagios~]# tail-5/var/log/cron

Apr 2 17:24:01 nagios CROND[20544]:(root) CMD(/bin/sh~/hello)

Apr 2 17:25:01 nagios CROND[20549]:(root) CMD(/bin/sh~/hello)

Apr 2 17:25:01 nagios CROND[20550]:(root) CMD(/bin/sh~/hello)

Apr 2 17:25:01 nagios CROND[20551]:(zwhset) CMD(echo hello~/1.txt)

Apr 2 17:25:01 nagios CROND[20552]:(zwhset) CMD(echo hello~/1.txt)

[root@nagios~]# ps aux|grep cron

root 2074 0.0 0.5 117212 1316? Ss 01:40 0:04 crond

root 20641 0.0 0.6 139684 1468 pts/1 S+ 17:30 0:00 crontab-e

zwhset 20642 0.0 0.7 119284 1756 pts/1 S+ 17:30 0:00/bin/vi/tmp/crontab.YphQpH

root 20663 0.0 0.3 103236 856 pts/0 S+ 17:31 0:00 grep cron

[root@nagios~]# lsof-c crontab

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

crontab 20641 root cwd DIR 253,0 4096 130818/root

crontab 20641 root rtd DIR 253,0 4096 2/

crontab 20641 root txt REG 253,0 47520 401259/usr/bin/crontab

crontab 20641 root mem REG 253,0 5952 261889/lib64/security/pam_deny.so

crontab 20641 root mem REG 253,0 18592 261891/lib64/security/pam_env.so

crontab 20641 root mem REG 253,0 18592 261903/lib64/security/pam_limits.so

crontab 20641 root mem REG 253,0 10224 261901/lib64/security/pam_keyinit.so

crontab 20641 root mem REG 253,0 10240 261906/lib64/security/pam_loginuid.so

crontab 20641 root mem REG 253,0 6040 261912/lib64/security/pam_permit.so

crontab 20641 root mem REG 253,0 14384 261923/lib64/security/pam_succeed_if.so

crontab 20641 root mem REG 253,0 10200 261905/lib64/security/pam_localuser.so

crontab 20641 root mem REG 253,0 51952 261929/lib64/security/pam_unix.so

crontab 20641 root mem REG 253,0 113432 261657/lib64/libnsl-2.12.so

crontab 20641 root mem REG 253,0 14456 261884/lib64/security/pam_access.so

crontab 20641 root mem REG 253,0 65928 261663/lib64/libnss_files-2.12.so

crontab 20641 root mem REG 253,0 99158576 397021/usr/lib/locale/locale-archive

crontab 20641 root mem REG 253,0 383504 261640/lib64/libfreebl3.so

crontab 20641 root mem REG 253,0 40400 261651/lib64/libcrypt-2.12.so

crontab 20641 root mem REG 253,0 1916568 261647/lib64/libc-2.12.so

crontab 20641 root mem REG 253,0 113096 261709/lib64/libaudit.so.1.0.0

crontab 20641 root mem REG 253,0 19536 261653/lib64/libdl-2.12.so

crontab 20641 root mem REG 253,0 55848 261879/lib64/libpam.so.0.82.2

crontab 20641 root mem REG 253,0 122040 261718/lib64/libselinux.so.1

crontab 20641 root mem REG 253,0 154464 261636/lib64/ld-2.12.so

crontab 20641 root 0u CHR 136,1 0t0 4/dev/pts/1

crontab 20641 root 1u CHR 136,1 0t0 4/dev/pts/1

crontab 20641 root 2u CHR 136,1 0t0 4/dev/pts/1

crontab 20641 root 3u unix 0xffff88000225c380 0t0 91831 socket

crontab 20641 root 5u REG 253,0 68 916745/tmp/crontab.YphQpH

如何使用Crontab在Unix/Linux系统下实现自动备份

托管服务器大多时候是为了安全需要走数据备份,但是人工做又耗费时间,如何省时让系统自动备份?使用Crontab就能实现,Crontab是一个系统下的常用的定时执行工具,可以在无需人工干预的情况下运行指定作业,Crontab可用于设置周期性被执行的指令,下面我们就详细介绍一下Crontab的安装及使用方法:

一、Crontab的安装

1、CentOS下面安装Crontab

yum install vixie-cron crontabs//安装Crontabchkconfig crond on//设为开机自启动service crond start//启动

说明:vixie-cron软件包是cron的主程序;crontabs软件包是用来安装、卸装、或列举用来驱动 cron守护进程的表格的程序。

2、Debian下面安装Crontab

apt-get install cron//大部分情况下Debian都已安装。/etc/init.d/cron restart//重启Crontab

二、Crontab使用方法

1、查看crontab定时执行任务列表

crontab-l

2、添加crontab定时执行任务

crontab-e

输入crontab任务命令时可能会因为crontab默认编辑器的不同。

centos 怎样写linux命令

Linux的常用基本命令。

首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中“系统管理员”拥有最高权限。

在启动Linux后屏幕出现如下界面显示:

……

Red Hat Linux release 9(Shrike)

Kernel2.4.20.8 on an i686

login:

输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个“#”提示符时,表明你登录成功!

屏幕显示Linux提示符:[root@localhost root]#_

这里需要说明的是“Red Hat Linux release 9(Shrike)”表示当前使用的操作系统的名称及版本。“2.4.20.8”表示Linux操作系统的核

心版本编号。“i686”表示该台电脑使用的CPU的等级。

下面我们来介绍常用基本命令

一,注销,关机,重启

注销系统的logout命令

1,Logout注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:

[root@localhost root]#logout

Red Hat Linuxrelease 9(Shike)

Kernel2.4.20.8 on an i686

Login:←回到登陆的画面

2,关机或重新启动的shutdown命令

Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。

参数说明如下:

立即关机:-h参数让系统立即关机。范例如下:

[root@localhost root]#shutdown–h now←要求系统立即关机

指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下:

[root@localhost root]#shutdown now←立刻关机

[root@localhost root]#shutdown+5← 5分钟后关机

[root@localhost root]#shutdown 10:30←在10:30时关机

关机后自动重启:-r参数设置关机后重新启动。范例如下:

[root@localhost root]#shutdown-r now←立刻关闭系统并重启

[root@localhost root]#shutdown-r 23:59←指定在23:59时重启动

3,重新启动计算机的reboot命令

顾名思义,reboot命令是用来重新启动系统的。常用的参数如下:

-f参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。

-I参数:在在重新启动之前关闭所有网络接口。

虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了

二,文件与目录的操作

1,列出文件列表的ls命令

ls(list)命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例

如下:

显示当前目录的内容:

[tony@free tony]$ ls

Desktop mail myinstall.log test.txt←有两个目录及两个文件夹

当运行ls命令时,并不会显示名称以“.”开头的文件。因此可加上“-a”参数指定要列出这些文件。范例如下:

[tony@free tony]$ ls–a

以“-s”参数显示每个文件所有的空间,并以“-S”参数指定按所有占用空间的大小排序。范例如下:

[tony@free tony]$ ls–s–S

总计36

4 Desktop 4 mail 24 myinstall.log 4 test.txt

在ls命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下:

[tony@free tony]$ ls–l/usr/games

2,切换目录的cd命令

cd(change directory)命令可让用户切当前所在的目录。范例如下:

[tony@free home]$ cd tony←切换到当前目录下的tony子目录

[tony@free tony]$ cd..←切换到上一层目录

[tony@free home]$ cd/←切换到系统根目录

[tony@free/]$ cd←切换到用户主目录

[tony@free tony]$ cd/usr/bin←切换到/usr/bin目录

3,创建目录的mkdir命令

Mkdir(make directory)命令可用来创建子目录。下面的范例会在所在目录下创建tool子目录。

[tony@free tony]$ mkdir tool

4,删除目录的rmdir命令

rmdir(remove directory)命令可用来删除“空”的子目录。范例如下:

[tony@free tony]$ rmdir tool←删除tool目录

5,复制文件的cp命令

cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令将以个文件复制成另一个文件或复制到某个目录时,需要指定原始文件

名与目的文件名或目录。范例如下:

[tony@free tony]$ cp data1.txt data2.txt←将data1.txt复制成data2.txt

[tony@free tony]$ cp data3.txt/tmp/data←将data3复制到/tmp/data目录中

显示复制过程:加入-v参数可显示命令执行过程。范例如下:

[tony@free tony]$ cp zip.txt zip2.txt←一般状态下不会显示复制过程

[tony@free tony]$ cp–v zip.txt zip3.txt←以-v显示复制过程

zip.txt->zip3.txt

递回复制:加入“-R”参数可同时复制目录下的所有文件及子目录。范例如下:

[tony@free tony]$ cp–v–R* backup←将所有文件(含子目录文件)复制到backup目录

6,删除文件或目录的rm命令

rm(remove)命令可以删除文件或目录。范例如下:

[tony@free tony]$ rm myfile←删除指定的文件

[tony@free tony]$ rm*←删除当前目录中的所有文件

rm命令的常用参数如下:

强迫删除:使用-f参数时,rm命令会直接删除文件,不再询问。范例如下:

[tony@free tony]$ rm–f*.txt←强迫删除文件

递回删除:-r也是一个相当常用的参数,使用此参数可同时删除指定目录下的所有文件及子目录。范例如下:

[tony@free tony]$ rm–r data←删除data目录(含data目录下所有文件和子目录)

[tony@free tony]$ rm–r*←删除所有文件(含当前目录所有文件,所有子目录和子目录下的文件)

强制删除指定目录:当使用-r参数删除目录时,若该目录下有许多子目录及文件,则系统会不间断地询问,以确认您的确要删除

目录或文件。若已确定要删除所存目录及文件,则可以使用-rf参数,如此一来,系统将直接删除该目录中所有的文件及子目录,不再询问。范

例如下:

[tony@free tony]$ rm–rf tmp强制删除tmp目录及该目录下所有文件及子目录

显示删除过程:使用-v参数。范例如下:

[tony@free tony]$ rm–v

7,让显示画面暂停的more命令

为了避免画面显示瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格键继续显示下一个画面,或按Q键停

止显示。

当使用ls命令查看文件列表时,若文件太多则可以配合more命令使用。范例如下:

[tony@free bin]$ ls–al more

单独使用more命令时,可用来显示文字文件的内容。范例如下:

[tony@free tony]$ more data.txt

8,连接文件的cat命令

cat(concatenate)命令可以显示文件的内容(经常和more命令搭配使用),或是将数个文件合并成一个文件。范例如下:

逐页显示 preface.txt的内容:

[tony@free tony]$ cat preface.txt more

将preface.txt附加到outline.txt文件之后:

[tony@free tony]$ cat preface.txt>> outline.txt

将new.txt和info.txt合并成readme.txt文件:

[tony@free tony]$ cat new.txt info.txt>readme.txt

9,移动或更换文件,目录名称的mv命令

mv(move)命令可以将文件及目录移动到另一个目录下面,或更换文件及目录的名称。范例如下:

[tony@free backup]$ mv a.txt..←将a.txt文件移到上层目录

[tony@free backup]$ mv z1.txt z3.txt←将 z1.txt改名成z3.txt

[tony@free backup]$ cd..←切换到上一层目录

[tony@free tony]$ mv backup..← backup目录上移一层

10,显示当前所在目录的pwd命令

pwd(print working directory)命令可显示用户当前所在的目录。范例如下:

[tony@free tony]$ pwd

/home/tony←当前所在目录为“/home/tony”

11,查找文件的locate命令

locate命令可用来搜索包含指定条件字符串的文件或目录。范例如下:

[tony@free tony]$ locate zh_CN列出所有包含“zh_CN”字符串的文件和目录。

由于locate命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时更新数据库,但对于刚新增或删除的文件、目录,

仍然可能会因为数据库尚未更新而无法查得,此时可用root身份运行updatedb命令更新,为此数据库得内容正确。

12,搜索字符串得grep命令

grep命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太多不必要得信息。范例如下:

[tony@free etc]$ grep text*.conf←搜索当前目录中扩展名为.conf且包含“text”字符串得文件。

grep:amd.conf:←拒绝不符权限得操作

grep:diskcheck.conf:←拒绝不符权限得操作

grep:grub.conf←拒绝不符权限得操作

若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权限的操作之类的错误信息,可使用-s参数消除。

[tony@free etc]$ grep–s text*.conf

13,重导与管道

重导(redirect)可将某命令的结果输出导文件中,它有两中命令:“>”和“>>”。“>”可将结果输出到文件中,该文件原有的内容会被

删除:“>>”则将结果附加到文件中,原文件内容不会被清除。范例如下:

[tony@free tony]$ ls–a>dir.txt←将ls–a命令执行结果输出到dir.txt文件。

[tony@free tony]$ cat data1.txt>> data2.txt←将 data1.txt内容附加到data2.txt文件之后。

通道(pipe)命令的符号是“”,可将某命令的结果输出给另一命令,一下范例将ls命令的输出结果传给grep命令过滤:

[tony@free etc]$ ls gerp conf←搜索并显示ls命令运行结果中包含有“conf”字符串

在举一个删除文件或目录的例子,可以利用yes命令重复输出“y”字符的特性,将结果传给rm命令,如此即可避免重复输入“y”:

[tony@free tony]$ yes rm–r mydir

三,使用光盘及软盘

在Linux的文字模式下要使用光盘或软盘,并不是只将光盘或软盘放入即可,用户需要运行加载的命令,才可读写数据。所谓加载就是将存

储介质(如光盘和软盘)指定成系统中的某个目录(如/mnt/cdrom或mnt/floppy)。通过直接存取此加载目录,即可读写存储介质中的数据。

以下就来看看文字模式下的加载及卸载命令。

1,加载的mount命令

要使用光盘时先把光盘放入光驱,然后执行加载的mount命令,将光盘加载至系统中:

[tony@free tony]# mount/dev/cdrom/mut/cdrom←加载光盘

同理,使用软盘之前也需要和光盘一样,必须先加载后才能使用:

[tony@free tony]# mount/dev/fd0/mut/floppy←加载软盘

2,卸载的umount命令

如果不需要使用光盘或软盘,则需先执行卸载命令之后,才能将光盘或软盘退出。范例如下:

[tony@free tony]# umount/ mnt/cdrom←光盘卸载

在不使用软盘时执行umount命令卸载软盘,再将软盘拿出

[tony@free tony]# umount/ mnt/←软盘卸载

四,在后台运行程序

用户有时的程序有可能要花费很多时间,如果将它放在前台运行,将导致无法继续做其他事情,最好的方法就是将它放在后台运行,甚至

可能希望在用户注销系统后,程序还可以继续运行。让我们看看那如何实现这一目的。

1,在后台运行程序的&、bg命令

将程序放到后台运行的最简单方法就是在命令最后加上“&”,范例如下:

[tony@free root]# updatedb&←在后台执行 locate数据库更新命令

[tony@free root]# bg←将更新操作放到后台运行

2,前台运行的程序fg命令

如果用户当前已有程序在后台运行,可以输入fg命令,将它从背景中移到前台运行:

[tony@free root]# fg←放到前台执行的命令会显示出来

3,在退出后让程序继续运行的nohup命令

此命令可使用户退出系统后,程序继续运行。范例如下:

[tony@free rony]$ nohup myserver&

然后用户就可以退出了,当再次登录的时候,可以用ps–aux命令看到程序仍在后台中运行。

五,任务调度命令

计算机有很多程序需要周期性的被运用,例如清理磁盘中不要的暂存盘、备份系统数据、检查远程服务器的邮件等。对于这些重复性的工

作,其实不需要每次都辛苦地运行这些程序。可利用任务调度命令,指定系统定期在某个时间运行这些程序,轻轻松松完成想要执行的工作。

任务调度的crond常驻命令

crond是Linux用来定期执行程序的命令。当安装完成操作系统后,默认便会启动此任务调动命令。crond命令每分钟会定期检查是否有要

执行的工作,如果有要执行的工作,便会自动执行该工作。由于任务调度中间的操作过程十分繁杂,我们只将任务调度文件的写法介绍给大家

,供大家参阅:

Minute Hour Day Month DayOfWeek Command

在这段文字中除了“Command”是每次都必须指定的字段以外,其他自动皆可视需求自行决定是否指定。

六,任务调度的系统工作

/ect/crontab/文件是Linux系统工程的任务调度设置文件,其默认的内容如下:

SHELL=/bin/bash←指定执行任务调度工作时所使用的SHELL

PATH=/shin:/bin:/usr/sbin:/usr/bin←指定命令搜索的路径

MAILTO=root←指定将输出结果给root用户

HOME=/←指定跟目录

阅读剩余
THE END