《操作系统安全:设定任务计划.docx》由会员分享,可在线阅读,更多相关《操作系统安全:设定任务计划.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验一:设定任务计划一、实验目的1、了解任务计划及类型2、掌握任务计划的应用二、实验内容与步骤1、任务计划计划任务,字面意思理解就是在约定好的时间执行已经计划好的工作。在Linux中我们 经常使用cron服务来完成这项工作。比方我们可以使用cron来做一个每天晚上12点备份一个 日志文件,这就是个计划任务。任务计划类型系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存(1) 个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置2、At常用语执行计划任务的命令一一at, batch,与周期性任务相关的命令crontabs.
2、2. 1 at命令和batch命令的区别at命令旨在特定的之间执行任务;batch命令设置的任务由系统选择空闲时间去执行, 空闲时间默认为cpu利用率小于0. 8的时候3. 2 at命令at的任务是否能运行依赖于atd服务我们可以先查看下atd服务是否运行centos6: service atd statuscentos?: systemctl status atdat命令后想要执行程序确实切时间,然后回车接着在后输入你想要执行的命令,最后用Ctrl+d组合键退出at,像图中它就会在21:45 执行1s,然后把结果发给root,我们可以在/var/spool/mail/root中查看ootfi
3、localhost T# date118年 11 月 19日 星期一 21: 39: 12 CSTootQlocalhost T# at 21: 45: Is: )b 1 at 2018-11-19 21: 45ootlocalhost T# Received: by localhost. localdomain (Postfix, from userid 0) id EF5CABFB77; Mon, 19 Nov 2018 21:45:00 +0800 (CST)Subject: Output from your job 1To: rootglocalhost. localdomainMes
4、sage-Id:Date: Mon, 19 Nov 2018 21:45:00 +0800 (CST)From: rootfilocalhost. localdomain (root)anaconda- ks. cfgstst共板频片档载乐面inln公模视图文下音莫stst共板频片档载乐面inln公模视图文下音莫g g o oa ag OVnu havp mai 1 i n /war/cnnnl/mail/rnntatq和atrm命令:列出和删除正在等待执行的at任务我们每次使用at命令指定延时执行的命令,at都会给其分配一个job编号,比方上面的 例子中我们at任务编号就是1rooWloca
5、lhost T# at now +20 minutes at cat /home at job 2 at 2018-11-19 22: 11rootlocalhost T# atpbash: atp: command not foundrooWlocalhost atq22018-11-19 22:11 a rootrootlocalhost T# at now +30 minutes at Is at job 3 at 2018-11-19 22: 23rooWlocalhost atq32018-11-19 22:23 a root22018-11-19 22:11 a rootroot0
6、localhost T# at rm 3rooWlocalhostatq22018-11-19 22:11 a rootrooWlocalhost,crontab我们使用at命令只能执行某个命令一次,而crontab却可以重复执行命令,例如:每分 钟,每小时,每天,每周等。crontab其实是一个命令,用来读取和修改名为crontab的文件。这个crontab文件包含 了你要定时执行的程序列表,也包含了执行的时刻。实际上,有两个命令,一个叫crontab, 一个叫cron。crontab用于修改crontab文件, cron用于实际执行定时的程序。有三个常用参数:- e:修改crontab文件
7、。- 1:显示crontab文件。- r:删除cron tab文件/etc/crontab系统级计划任务的主配置文件仅能通过root定义,不过可以以普通用户的身份去执行计划任务中的命令。rooWlocalhost cat /etc/crontabSHELL=/bin/bashPATH=/sbin: /bin: /usr/sbin: /usr/binMAILT0=rootHOME=/# For details see man 4 crontabs# Example of job definition:# . minute (0 - 59)# . hour (0 - 23)# I|. day of
8、 month (1 - 31)# III, month (1 - 12) OR jan, feb, mar,apr# I|.day of week (0 - 6) (Sunday=0or 7)OR sun, mon, tue, wed, thu, fri, sat# * user-name command to be executed在文件的最后一行添加内容如:5 * * * * Is就是指定每小时的第5分钟执行一次Is命令可以在指令前添加用户:0 */2 * * * userl Is指定每两个小时以userl身份执行一次Is可以写一些每天要执行的脚本文件放在一个目录下:30 5 * * *
9、root run-parts /etc/cron. daily指定每天的5:30执行/etc/cron.daily目录下的所有可执行文件(如果要单独执行某 个脚本需要把run-parts,后面跟上脚本名就可以了)重启命令如下:/etc/rc. d/init. d/crond restart #重启4、cron的配置方式cron的配置方式设置cron有两种方式,也就是编辑/var/spool/cron目录下文件和编辑/etc/crontab配 置文件.(1)/var/spool/cron 目录下cron文件我们可以通过crontab命令来编辑操作/var/spool/cron目录下cron文件,
10、当然我们也可 以直接编辑/var/spool/cron目录下的配置文件.例如,root用户的cron就是/var/spool/cron/root如果用crontab -e -u root就是编辑/var/spool/cron/root文件.如果用crontab -1 -u root 就是查看/var/spool/cron/root文件.如果用crontab -r -u root就是删除/var/sppol/cron/root文件./ t1产 wj/ v. a I; e ,jf II I IrooWIocalhost crontab -e -u rootno crontab for root -
11、 using an empty one crontab: installing new crontabrooWIocalhostcat /var/spool/cron/root*: 1 * * * * stat /etc/passwd /tmp/1rootlocalhostcrontab -I -u root*: 1 * * * * stat /etc/passwd /tmp/1 rooWIocalhostcrontab-r-urootrooWlocalhostcrontab-I-urootno crontab for rootrooWlocalhost,(2) /etc/crontab/et
12、c/crontab只有root用户可以编辑,权限如下/ etc/crontab配置文件默认内容如下: ,M %SHELL=/bin/bashPATH=/sbin: /bin: /usr/sbin: /usr/binMAILT0=root HOME=/ # run-parts01 * *root run-parts /etc/cron. hourly02 4 * *root run-parts /etc/cron. daily22 4 * * 0root run-parts /etc/cron. weekly42 4 1 *root run-parts /etc/cron. monthly|注:
13、我们可以自定义自己的变量,让crontab配置文件中的程序使用.vi /etc/crontab加载如下变量定义:q/ 4 1 不不 r uul run-par Lb / glc/ cruh. muriiruy NAME=Chenkuo”*/l * * * * root /bin/echo ”$NAME” /tmp/2|# For details see man 4 crontabs重启crond服务,如下:/etc/init. d/crond restart一分钟后,查看/tmp/2文件,如下:cat /tmp/2L W jy LNZJJ JIV/i J J IIrootlocalhost cat /tmp/2使用 run-parts 脚本来执行 /etc/cron. hourly, /etc/cron. daily, /etc/cron, weekly和 /etc/cron. monthly目录中的脚本.注:每次修改/etc/crontab,都要重启crond服务,因为只有重启服务时才会重新加载 /etc/crontab 文件.