Day17
作者:孙鹏鹏
归档:课后笔记
时间:2019/3/22
快捷键:
Ctrl + 1 标题1
Ctrl + 2 标题2
Ctrl + 3 标题3
Ctrl + 4 标题4
Ctrl + 5 程序代码
Ctrl + 6 正文
Ctrl + 7 实例1-1
格式说明:
蓝色字体:注释
黄色背景:重要
绿色背景:注意
老男孩教育教学核心思想6重:重目标、重思路、重方法、重实践、重习惯、重总结
学无止境,老男孩教育成就你人生的起点!
联系方式:
网站运维QQ交流群:
Linux 385168604架构师390642196
Python 29215534大数据421358633
官方网站:
目 录
第一章:
1.1 SUID:
1.2 SGID:
作用之一:
Sqid 的作业就是让普通用户可以执行某个设置sgid位的命令时,
拥有和命令对应用户组(一般为root用户组)一样的身份和权限(默认)
Locate搜索内容,默认从updatadb对应的数据库中查找
Uodatedb更新locate查找内容对应的数据库
1.3sbit粘字位:
1.4重点
1.5Linux系统定时任务:
1.什么是定时任务?
周期性的执行任务计划的软件,Linux定时任务的常用软件crond。
2.使用定时任务软件,可以每天,每小时按你的需求重复的执行一项工作
例如:备份 都是0点以后,2点爬起来备份,4点以后睡觉
需要写一个程序实现自动备份,然后让定时任务软件帮你执行。
闹钟。。。。
3、怎样用。
(1)用户定时任务
在Linux系统中
Cron是定时任务的软件名
Crond是服务进程名
Croneab命令是用来设置定时任务规则的配置命令。
配置定时任务时,首先启动crond服务。
(2)系统定时任务计划
不用管理员参与,系统自动执行。
编写定时任务的语法:
共六列:
第一列: 分钟 minute (0-59)
第二列:小时 hour (0-23)
第三列:日 day of month (1-31)
第四列:月 month (1-12)
第五列:周 day of week (0-6)
第六列:要执行的任务命令或程序
特殊符号:
* 表示的 每(每一天,每一月,每一周等) 的意思
- 连续区间 1-10
, 列举 1,2,3,4,8
/n n是数字 即“每隔n单位时间
实践:
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