第十八天-linux系统定时任务crond深入实战

简答:
1、每隔1分钟,打印一个+号到oldboy.log,请给出crontab完整命令。
    解答: 
    #printf + every minute
    *  *  *  *  * echo ‘+‘>> /oldboy.log

2、每隔2个小时将/etc/services文件打包备份到/tmp下(最好每次备份成不同的备份包)。
    解答:
    (1)在命令行测试
    [email protected]:~# ll /etc/services
    -rw-r--r-- 1 root root 19605 10月 25  2014 /etc/services
    [email protected]:~# cd /etc/
    [email protected]:/etc# tar zcvf /tmp/services_$(date +%F-%H).tar.gz ./services
    ./services
    
    
    (2)编写脚本:
    vim /server/scripts/tar.sh
    #every two hour tar /services to tmp
    cd /etc/
    tar zcf /tmp/services_$(date +%F-%H).tar.gz ./services
    (3)编写crontab -e
    #every two hour tar /etc/services to tmp
    00  */2  * * * /bin/sh /server/scripts/tar.sh >/dev/null 2>&1
    技巧:
    1、命令行测试好,规范脚本存放路径。
    2、定时任务打包或处理其他工作,不要在屏幕输出,可以大到日志文件里。
    3、从定时任务到脚本的工程尽量复制,防止重敲错。

1、/bin/sh /server/scripts/tar.sh要复制,不要手敲。
    2、执行脚本要叫/bin/sh
    3、结尾定向到空,>/dev/null 2>&1

3、每天晚上12点,打包站点目录/var/www/html备份到/data目录下(最好每次备份按时间生成不同的备份包)。
    解答:
    查看脚本:
    cat tar.site.sh
    cd /var/www && tar zcfp /data/html_$(date +%Y%m%d).tar.gz ./html
    定时任务:
    ##tar /var/www/html by shell scrpt by oldboy at 20121213
    00 00 * * * /bin/sh /server/scripts/tar_site.sh >/dev/null 2>&1

4、每周六、日上午9:00和下午14:00来老男孩这里学习(执行程序/server/script/oldboy.sh代替学习)。
    解答:
    ##study from oldboy at 9:00 and 14:00 on sat and sun    
    00 9,14 * * 6,7 /bin/sh /server/script/oldboy.sh >/dev/null 2>&1
5、请描述下列路径的内容是做什么的?
    /etc/sysctl.conf    和系统内核优化有关
    /etc/rc.local        开机自启动任务的配置文件
    /etc/hosts            域名解析文件
    /etc/fstab            系统开机时自动挂载所有分区的配置文件
    /var/log/secure        系统安全日志,记录用户登陆本机的信息
11、添加一个用户oldboy,并指定属于sa组,要求组ID为801,uid为808,并且不创建家目录及禁止其登陆。
    解答:
    groupadd -g 801 sa
    useradd -g sa -u 808 oldboy -M -s /sbin/nologin
    [email protected]:~$ useradd --help
用法:useradd [选项] 登录
      useradd -D
      useradd -D [选项]

选项:
  -b, --base-dir BASE_DIR    新账户的主目录的基目录
  -c, --comment COMMENT         新账户的 GECOS 字段
  -d, --home-dir HOME_DIR       新账户的主目录
  -D, --defaults        显示或更改默认的 useradd 配置
  -e, --expiredate EXPIRE_DATE  新账户的过期日期
  -f, --inactive INACTIVE       新账户的密码不活动期
  -g, --gid GROUP        新账户主组的名称或 ID
  -G, --groups GROUPS    新账户的附加组列表
  -h, --help                    显示此帮助信息并推出
  -k, --skel SKEL_DIR    使用此目录作为骨架目录
  -K, --key KEY=VALUE           不使用 /etc/login.defs 中的默认值
  -l, --no-log-init    不要将此用户添加到最近登录和登录失败数据库
  -m, --create-home    创建用户的主目录
  -M, --no-create-home        不创建用户的主目录
  -N, --no-user-group    不创建同名的组
  -o, --non-unique        允许使用重复的 UID 创建用户
  -p, --password PASSWORD        加密后的新账户密码
  -r, --system                  创建一个系统账户
  -R, --root CHROOT_DIR         chroot 到的目录
  -s, --shell SHELL        新账户的登录 shell
  -u, --uid UID            新账户的用户 ID
  -U, --user-group        创建与用户同名的组
  -Z, --selinux-user SEUSER        为 SELinux 用户映射使用指定 SEUSER

第13张

注意:
1、写定时任务,要加注释
2、定时任务规则如果是命令,并且已经有重定向或追加,一般不加 >/dev/null 2>&1
3、要用绝对路径,绝对路径就是从根开始的完整路径。
4、当然也要确保路径对应的目录存在才行,日志文件oldboy.log可以不在。
5、要用>>追加,不是>覆盖。
6、进入打包文件或目录的上级目录进行打包。
7、定时任务是按小时的,打包里的日期也要精确到小时。

vi中X是加锁  wq保存

时间: 2024-08-06 15:34:30

第十八天-linux系统定时任务crond深入实战的相关文章

Linux系统定时任务crond那些事

1 Linux系统定时任务 1.1 定时任务介绍 1.1.1 Crond是什么? Crond是linux系统中用来定期执行命令或指定程序任务的一种服务或软件.Centos5/6 linux系统安装完操作系统默认会启动crond任务调度服务,系统开机启动优化保留crond服务开机自启动.Crond服务定期(默认是每分钟检查一次)检查系统中是否有要执行的任务工作.这个crond定时任务服务就相当于我们平时使用的闹钟一样.特殊需求:(秒级别)crond服务搞不定了,工作中一般写脚本守护程序执行. 1.

Linux系统定时任务Crond

Crond是什么 Crond是Linux系统中用来定期执行命令或指定程序任务的一种服务或软件. 特殊需求:(秒级别)crond服务就无法搞定,一般工作中邪脚本守护进程执行(一般用不上) 为什么要使用crond定时任务 Linux系统的定时任务crond,相当于我们平时生活中得闹钟功能.可以满足周期性执行任务的需求. Linux系统的定时任务 Linux系统中定时任务调度的工作可以分为以下两种情况 1.Linux系统自身定期执行的任务工作:系统周期性执行的任务工作,如轮询系统日志,备份系统数据,清

Linux学习之九-Linux系统定时任务

Linux系统定时任务 在一些实际工作中需要机器在某个时间自动执行某个任务,不需要人为在此时刻参与,可以建立一个定时任务. crond 服务是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. 使用命令/etc/init.d/crond status检查服务是否处于运行状态, 使用

Linux系统中DHCP服务实战

Linux系统中DHCP服务实战部署 一.实验要求 1.将系统的主机名改成s01.benet.com 2.搭建一台dhcp服务器为局域网分配IP地址,要求分配192.168.40.0/24 3.为boss保留192.168.40.188地址 二.实验环境 虚拟机VMware Workstation11.0 RED HET 6.5 三.实验步骤 1.将系统的主机名改成s01.benet.com 2.搭建dhcp服务.为局域网分配IP地址 3.测试主机分配地址效果 4.给boss分配192.168.

linux系统被入侵后处理实战

Linux系统被入侵后处理实战 事件背景: 操作系统:centos6.5 运行业务:公司业务系统,爬虫程序,数据队列 服务器托管在外地机房 事件起因: 突然频繁收到一组服务器ping监控不可达邮件,通过zabbix监控系统中,发现流量超高,达到了800M,发现不正常,马上尝试ssh登录系统,不幸的是,这种情况是很难登录系统的. 处理过程: 当时第一反应是想马上切断外部网络,通过内网连接查看 可是这样一来流量就会消失,也就很难查找攻击源了,于是联系机房协助解决,授权机房技术登录到系统: 1.检测系

Linux 系统定时任务:crontab,anacron

Linux 系统定时任务:crontab,anacron 一.Cron 服务 1. 启动服务 service cron start 2. 关闭服务 service cron stop 3. 重启服务 service cron restart 4. 重新载入配置 service cron reload 5. 查看服务状态 service cron status 二.用户定时任务 1. 选项 -e:执行文字编辑器来设定定时任务-l:列出目前所有定时任务-r:删除目前所有定时任务(慎用) 要经常备份定

第十七天-linux系统定时任务crontab入门讲解

首先先了解下程序和进程的区别: 程序概念: 程序是为了解决一个信息处理任务而预先编制的工作执行方案,是由一串cpu能够执行的基本指令组成的序列,每一条指令规定了计算机进行什么操作(比如加.减.乘.除.判断等)及操作需要的有关数据.例如,从存储器读入一个数送到运算器就是一条指令,从存储器读出一个数并和运算器中原有的数相加也是一条指令.简单的说:我们使用的命令就是程序,QQ程序,听歌的MP3软件,linux系统也是程序. 基本特征:一堆代码,一个文件,一个命令,程序是静态的,放在电脑里还没有被运行.

linux系统的crond服务

linux系统中有一个服务,用来做周期性运行的例行任务,这个服务就是crond服务.执行这项服务的命令 就是crontab命令了.而linux下的任务调度又分为系统任务调度和用户任务调度两个大类. 系统任务调度 系统周期性所要执行的工作,比如写缓存数据到硬盘,日志的定期清理一类的,在/etc目录下有一个 crontab的文件,这个就是系统任务调度的配置文件了.来看一下这个配置文件的说明 [[email protected] Desktop]# cat /etc/crontab SHELL=/bi

20160929老男孩运维视频L4-01系统定时任务crond理论详解

Linux日志默认存放位置 /var/log/ 轮询任务和用户任务 crond 命令 默认的设置crond用户的文件 /etc/crond.deny  #这是不准使用crond的用户就写时这个文件内 /etc/crond.allow #能使用crond的用户写入这里 /var/spool/cron/ #这是放crond命令文件的地方 crontab 命令格式 crontab [-u 用户名] [文件路径] crond的文件写入格式 ***** /文件与命令 解释 分 时 天 月 周 /文件与命令