day 17 定时任务

Day 17


作者:翟玉龙

归档:课堂笔记

2019/3/22

快捷键:

Ctrl  + 1    标题1

Ctrl  + 2    标题2

Ctrl  + 3    标题3

Ctrl  + 4    实例

Ctrl  + 5    程序代码

Ctrl  + 6    正文

格式说明:

蓝色字体:注释

黄色背景:重要

绿色背景:注意

老男孩教育教学核心思想6重:重目标、重思路、重方法、重实践、重习惯、重总结

学无止境,老男孩教育成就你人生的起点!

联系方式:

网站运维QQ交流群:

Linux 385168604架构师390642196

Python 29215534大数据421358633

官方网站:

http://www.oldboyedu.com 

目录

学无止境,老男孩教育成就你人生的起点!... 1

第1章 特殊权限位... 1

1.1 Suid. 1

针对的是二进制命令... 1

1.2 sgid. 2

第2章Linux系统定时任务... 2







[if !supportLists]第1章[endif]特殊权限位

[if !supportLists]1.1 [endif]Suid

针对的是二进制命令

Suid的特点:

1    suid的功能是针对二进制命令或程序的 。不能用在shell等类似脚本的文件

2    用户灬属主对应的前三位权限的x位上,如果有s(S)就表示具有suid权限

3    Suid的作用就是让普通用户可以在执行某个设置了suid位的命令或程序的时候,拥有和root管理员一样的身份和权限(默认)

4    二进制命令程序需要有可执行权限x配合才行

5    Suid对应的身份和权限仅在程序命令执行过程中生效

6    Suid试一把双刃剑,是一个比较危险的功能,对系统安全有一定的威胁,企业里用户授权可以使用sudo等代替sgid功能

7   在进行安全优化时,系统中默认设置了suid权限的命令要取消掉

[if !vml]

[endif]

[if !supportLists]1.2[endif]sgid 

让不同的人创建文件属于相同的用户组,从而可以互相共享文件的权限[if !vml]

[endif]

[if !supportLists]第2章 [endif]Linux系统定时任务

[if !supportLists]1.     [endif]什么是定时任务?

周期性的执行任务计划的软件,Linux定时任务的常用软件有crond

[if !supportLists]2.     [endif]使用定时任务软件,可以每天,每小时,按你的需求重复的执行一项工作

EG:备份,都是0点以后,2点爬起来备份,四点以后睡觉

所以,我们需要一个程序实现自动备份,然后让定时任务软件帮你执行

[if !supportLists]3.     [endif]怎么用

[if !supportLists](1)    [endif]用户定时任务计划

[if !supportLists](2)    [endif]系统定时任务计划

[if !supportLists]1.     [endif]不用管理员干预,系统自动执行

[if !supportLists]2.     [endif]也可以利用系统任务为管理员服务

Cron是定时任务的软件名

Crond是服务进程名

Crontab命令是用来设置定时任务规则的配置命令

要想配置定时任务,首先启动crond服务

systemctl start  crond.service   打开服务

systemctl stop  crond.service   关闭服务

   systemctl status crond.service    查看服务运行状态

开启自启动:

systemctl disable crond.service

systemctl enable crond.service[if !vml]

[endif]


Crontab命令是用来设置定时任务

定时任务内容存放在/var/spool/cron/root

以当前用户名作为文件名

-l list列表,查看已设置的定时任务

-e edit编辑定时任务

-u user查看特定用户下的定时任务

Crontab -l ==cat  /var/spool/cron/root

Crontab -e ==vim  /var/spool/cron/root

编写定时任务的语法

# Example of jobdefinition:

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

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

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

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

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

# |  | |  |  |

# *  * *  *  * (command to be executed)

共六列:

第一列: 分钟 minute (0-59)

第二列: 时   hour  (0-23)

第三列: 日   day of month (1-31)

第四列: 月   month (1-12)

第五列: 周   day of week(0-6)  (Sunday = 0 or 7)OR sun mon tue wed thu fri sat

第六列: 要执行的任务命令或程序

特殊符号:

*表示 每的意思  00 23 * * * cmd

-表示连续区间1-10  00 1-10 * * * cmd

,列举1,2,3,4,8     00 1,2,3,4,5 * * *cdm

/n n是数字即每个n单位时间

例如每十分钟就是*/10 ** * * cmd

[if !supportLists]00      [endif]*/1  * *  *  每小时执行

         **/1 * * *每分钟执行


实践:

1

、每分钟追加一次oldboy字符串到/tmp/oldboy.log里。

解答:大象放冰箱分三步

a.

命令行执行成功。

[root@oldboyedu ~]# echo "oldboy">>/tmp/oldboy.log

[root@oldboyedu ~]# cat /tmp/oldboy.log

oldboy

[root@oldboyedu ~]# echo "oldboy">>/tmp/oldboy.log

[root@oldboyedu ~]# cat /tmp/oldboy.log

oldboy

oldboy

b.

配置定时任务crontab -e 编辑配置

[root@oldboyedu ~]# crontab -l

#####

* * * * * echo "oldboy">>/tmp/oldboy.log

c.

检查

[root@oldboyedu ~]# tail -f /tmp/oldboy.log

oldboy

oldboy

oldboy

老男孩思想:

1

)先输入* * * * *

2

)先命令行操作成功。

3

)拷贝命令到定时任务编辑里。

范例13-3:每天晚上0点,把站点目录/var/www/html下的内容打包备份到/data目录下,并且要求每次生成不同的备份包名。

至少分三步:

1.

命令行稿成功准备工作:

[root@oldboyedu ~]# mkdir /var/www/html /data -p

具体命令:

[root@oldboyedu ~]# tar zcvf /data/html_$(date +%F).tar.gz /var/www/html/

tar: Removing leading `/' from member names

/var/www/html/

[root@oldboyedu ~]# ll /data

total 4

-rw-r--r-- 1 root root 117 Mar 22 11:59 html_2019-03-22.tar.gz

2

、编写定时任务

[root@oldboyedu ~]# crontab -l

00 00 * * * tar zcvf /data/html_$(date +%F).tar.gz /var/www/html/

错了,不执行。。。。看报错日志。。。错误日志定时任务没有执行,出错了日志在哪里?出错日志/var/log/cron

Mar 22 12:03:01 oldboyedu CROND[18770]: (root) CMD (tar zcvf /data/html_$(date +)

定时任务对%的要求,百分号要转义。\%

正确答案:

[root@oldboyedu ~]# crontab -l

00 00 * * * tar zcvf /data/html_$(date +\%F).tar.gz /var/www/html/

优秀的答案(企业里):

1.

命令行执行

cd /var/www

tar zcf /data/html_$(date +%F).tar.gz ./html

2.

尽量用脚本文件实现

#mkdir /server/scripts -p #

存放脚本的文件

cd /server/scripts

#cat bak.sh

cd /var/www

tar zcf /data/html_$(date +%F).tar.gz ./html

命令行执行:

/bin/sh /server/scripts/bak.sh

3

、编辑定时任务

#bak html dir by oldboy at 2020108

00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null

[root@oldboyedu /server/scripts]# crontab -l|tail -2

#bak html dir by oldboy at 2020108

00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null

4

、检查正式结果

[root@oldboyedu /server/scripts]# ls -l /data

[if !supportLists]第1章 [endif]生产环境下的定时Cron书写要领

13.5.1  要领1:为定时任务规则加必要的注释

13.5.2  要领2:所有的定时任务尽量都以脚本的形式执行

13.5.3  要领3:在执行的Shell脚本前加上/bin/sh

13.5.4  要领4:定时任务中命令或脚本的结尾加>/dev/null 2>&1

13.5.5  要领5:在指定用户下执行相关定时任务

13.5.6  要领6:生产任务计划程序中不要随意打印输出信息,有输出的想法去掉。

13.5.7  要领7:定时任务执行的脚本要存放到规范路径下

13.5.8  要领8:配置定时任务要规范操作过程,减少出错

13.5.9  要领9:定时任务脚本中程序命令及路径尽量用全路径

13.5.10 要领10:时间变量%号要用反斜线转义(只有定时任务里是命令时需要)

13.5.11 要领11:若脚本中调用了系统环境变量,要重新定义

13.5.11 要领12:出错或无法执行,就检查/var/log/cron日志

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342