第1章 练习题

1.1 每天晚上 12 点,打包站点目录/var/www/html 备份到/data 目录下(最好每次备份按时间生成不同的备份包)

1.1.1 测试命令

[root@znix ~]# cd / && tar zcf /data/www_`date +%F`.tar.gz  var/www/html

1.1.2 写入脚本中

[root@znix /]# cat /server/scripts/www.sh

cd / && tar zcf /data/www_`date +%F`.tar.gz  var/www/html

1.1.3 测试脚本

[root@znix ~]# sh /server/scripts/www.sh

1.1.4 写入定时任务

[root@znix /]# crontab -l |tail -2

#### backup /var/www/html dir

00 00  * * *  /bin/sh  /server/scripts/www.sh >/dev/null 2>&1

1.1.5 检查执行结果

[root@znix ~]# ll /data/

total 16

-rw-r--r--  1 root root 154 Sep 11 09:44 www_2017-09-11.tar.gz

1.2 每周 六、日 上午 9:00和下午 17: 00 上班(执行程序/server/script/clsn.sh代替学习)。

00 9,17 * * 0,6  /bin/sh /server/scripts/clsn.sh >/dev/null 2>&1

0表示周日

6表示周六

1.3 描述下列路径的内容是做什么的。

/etc/sysctl.conf            系统内核的配置文件

/etc/rc.local               开机自启动

/etc/hosts                  ip与域名的对应关系 ,解析主机名

/etc/fstab                  开机自动挂载

/var/log/secure             用户登陆信息,主要查看其中的Failed

1.4 请说出下列 grep 正则表达式的含义

^         以...开头的行

$         以...结尾的行

.(点号)    任意一个字符

\         在转义字符  \n \t

*           前一个字符练习出现0次或1次以上

{n,m}       前一个字符连续出现,至少n次,最多m

[^t]         取不包含t的

^[^t]        以不是t的开头

1.5  排除文件中的空行和空格

1.5.1 文件的内容

[root@znix ~]# cat -A mun.txt

znix1$

znix2$

znix3$

$

znix4$

$

znix5$

$

znix6$

1.5.2 egrep方法

找出空行  -v参数排除

[root@znix ~]# egrep -n "^ *$" mun.txt

4:

6:

8:

10:

14:

[root@znix ~]# egrep -n  "^$|^ +$" mun.txt

4:

6:

8:

10:

14:

1.5.3 awk方法

[root@znix ~]# awk '!/^[ ]*$/' mun.txt

znix1

znix2

znix3

znix4

znix5

znix6

1.6 把passwd.txt 第一列取出来

1.6.1 文件内容

[root@znix ~]# cat passwd.txt

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

1.6.2 排除思想

[root@znix ~]# egrep "^[^:]+" passwd.txt  -o

root

bin

……

1.6.3 sed方法

[root@znix ~]# sed -r 's#(^.*)(:x.*:)(.*)#\3\2\1#g' passwd.txt

/bin/bash:x:0:0:root:/root:root

/sbin/nologin:x:1:1:bin:/bin:bin

……

排除不是以 :开头的行

[root@znix ~]# sed -r 's#(^[^:]+)(.*:)(/.*$)#\3\2\1#' passwd.txt

/bin/bash:x:0:0:root:/root:root

/sbin/nologin:x:1:1:bin:/bin:bin

……

1.6.4 awk方法

awk中的变量:

-vOFS=":"

OFS 的内容就是 , 的内容

awk在显示每一列内容的时候,每一列之间的分隔符

-v 修改和创建awk可以使用的变量

[root@znix ~]# awk -F: -vOFS=":" '{print $NF,$2,$3,$4,$5,$6,$1}' passwd.txt

/bin/bash:x:0:0:root:/root:root

/sbin/nologin:x:1:1:bin:/bin:bin

……

1.7 vi/vim命令、快捷键

 含义

命令

退出保存

:wq

退出并强制保存,!为强制的意思

:wq!

强制退出,不保存 

:q!

另存为

:q  /tmp/****

光标移动到文件的最后一行

G

光标移动到文件的第一行

gg

光标移动到文件的100

100gg 100G :100

从光标所在位置将光标移动到当前行的开头

0  ^

从光标所在位置将光标移动到当前行的结尾

$

删除当前行的内容

dd

删除当前行到文件的最后一行的内容 

dG

删除当前行到文件的第一行的内容

dgg

粘贴

p

粘贴10

10p

复制

yy

取消上一次的动作

u

删除一行

dd

/ 搜索内容

继续向下搜索              n

继续向上搜索              N

向上搜索 

?

取消对找到的内容的高亮显示

:noh

1.7.1 编辑services定位到第100行把这一行复制到文件的最后一行粘贴10次。

100gg

yy

G

10p

1.8 授权 clsn 目录及其子目录 755 的权限。

chmod -R 755 clsn

1.9 把 clsn 目录及其子目录的属主改为 clsn,组改为 root。

chown  clsn.lodboy clsn.txt

1.9.1 修改时可能发生的错误

[root@znix ~]# id clsn

uid=500(clsn) gid=501(incahome) groups=501(incahome)

[root@znix ~]# chown clsn.clsn clsn-new.txt

[root@ znix ~]# chown clsn.clsn num.txt

chown: invalid user: `clsn.clsn'

检查clsn用户是否存在,检查clsn这个用户组是否存在

1.10 描述下 umask 的作用.

umask管理着linux默认的权限

实例1-1 当umask为021时

file 权限为644

666-021+001=644

dir 权限为 756

777-021=756

1.11 每天打包备份 /etc/rc.local /etc/hosts /etc/services 到 /backup目录。

1.11.1 测试命令

root@znix ~]# cd / && tar zcf /backup/file`date +%F`.tar.gz  etc/rc.local  etc/hosts etc/services

oot@znix /]# ll /backup/file2017-09-11.tar.gz

-rw-r--r-- 1 root root 127455 Sep 11 15:41 /backup/file2017-09-11.tar.gz

1.11.2 写入脚本

[root@znix /]# cat /server/scripts/file.sh

cd / && tar zcf /backup/file`date +%F`.tar.gz  etc/rc.local  etc/hosts etc/services

1.11.3 测试脚本

[root@znix /]# sh /server/scripts/file.sh

[root@znix /]# ll /backup/file2017-09-11.tar.gz

-rw-r--r-- 1 root root 127455 Sep 11 15:44 /backup/file2017-09-11.t

[root@znix /]# cat /server/scripts/file.sh

1.11.4 写入定时任务

### beifen zhongyaowenjan

00 00 * * * /bin/sh /server/scripts/file.sh >/dev/null 2>&1

1.11.5 测试定时任务

[root@znix ~]# date -s '23:59:29'

Mon Sep 11 23:59:29 CST 2017

[root@znix ~]# ll /backup/file2017-09-1*

-rw-r--r-- 1 root root 127455 Sep 11 15:44 /backup/file2017-09-11.tar.gz

-rw-r--r-- 1 root root 127455 Sep 12  2017 /backup/file2017-09-12.tar.gz

第2章 回顾课程

2.1 定时任务

每隔 2 个小时将/etc/services 文件打包备份到/tmp 下(最好每次备份成不同的备份包)

2.1.1 测试命令

[root@znix ~]# cd / && /bin/tar zcf /tmp/ser_`date +%F_%H`.tar.gz  etc/services

2.1.2 放入脚本中

[root@znix ~]# cat /server/scripts/ser.sh

cd / && /bin/tar zcf /tmp/ser_`date +%F_%H`.tar.gz  etc/services

2.1.3 测试脚本

[root@znix ~]# sh /server/scripts/ser.sh

2.1.4 写入定时任务

[root@znix ~]# crontab -l |tail -2

#backup /etc/services

00 */2 * * * /bin/sh /server/scripts/bak-ser.sh >/dev/null 2>&1

2.1.5 检查定时任务是否成功

1)是否打包成功,看看文件里面是否有追加的信息

2)查看定时任务日志 /var/log/cron

2.2 无法连接linux

2.2.1 道路是否通畅

ping ip地址

实例2-1 无法ping通的解决办法:

服务器的ip地址是否正确

服务器网卡是否启动,即ONBOOT是否为yes

系统网卡的配置

实例2-2 VMware相关的:

vmware-5个服务是否启动

vmware配置-网卡是否连接

查看你vmware网卡的vmnet8 是否已经启动

2.2.2 是否有人劫财劫色

查看 iptables selinux是否关闭

2.2.3 是否有人提供服务

实例2-3 看22端口是否开启

方法一: telnet 10.0.0.200 22

方法二: ss -lntup |grep 22

实例2-4 进程是否在运行

ps -ef |grep sshd

2.3 linux无法上网怎么办

2.3.1 ping 域名

域名无法ping 通

[root@znix ~]# ping centos.nmtui.com

ping: unknown host centos.nmtui.com

2.3.2 ping  外网ip

可以ping 通

[root@znix ~]# ping 123.206.66.12

PING 123.206.66.149 (123.206.66.12) 56(84) bytes of data.

64 bytes from 123.206.66.149: icmp_seq=1 ttl=128 time=63.1 ms

64 bytes from 123.206.66.149: icmp_seq=2 ttl=128 time=60.5 ms

2.3.3 检查dns配置文件

[root@znix ~]# cat /etc/resolv.conf

2.3.4 修改配置文件

修改完成重启网卡,生效

[root@znix ~]# service network restart

Shutting down interface eth0:                              [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:  Determining if ip address 10.0.0.201 is already in use for device eth0...

[  OK  ]

2.4 检查一个软件是否按照 rpm 相关

2.4.1 查询某个软件包是否安装

[root@znix ~]# rpm -qa tree

tree-1.5.3-3.el6.x86_64

2.4.2 查询软件包里面的内容

[root@znix ~]# rpm -ql tree

/usr/bin/tree

/usr/share/doc/tree-1.5.3

/usr/share/doc/tree-1.5.3/LICENSE

/usr/share/doc/tree-1.5.3/README

/usr/share/man/man1/tree.1.gz

2.4.3 查询某个命令属于哪个软件包

查询的时候要使用绝对路径

[root@znix ~]# rpm -qf `which crond`

cronie-1.4.4-16.el6_8.2.x86_64

 

定时任务的使用-crond的更多相关文章

  1. Linux 定时任务

    200 ? "200px" : this.width)!important;} --> 介绍 本篇主要介绍Linux定时任务命令crontab的用法,crontab是定时任务 ...

  2. 如何让linux定时任务crontab按秒执行

    如何让linux定时任务crontab按秒执行? linux定时任务crontab最小执行时间单位为分钟如果想以秒为单位执行,应该如何设置呢?思路 正常情况是在crontab中直接定义要执行的任务,现 ...

  3. 百度bae定时任务使用方法

    最近想做个定时执行某些请求的任务,因为不是java的,不能有常住内存的控制,php不知百度bae云怎么做,找了很久终于被我找到了 https://cloud.baidu.com/doc/BAE/GUI ...

  4. linux中的定时任务创建

    1.查看root用户身份下正常运行的定时任务 crontab -l -u XXX 列出XXX用户的所有定时任务,如有没有会提示 no crontab for XXX列出所有的用户:cat /etc/p ...

  5. 【Raspberry Pi】crontab 定时任务

    在linux上做定时任务一般用crond 两种方法上文已列,但昨天写的crond命令却一直都没有运行,上网查,有说是环境变量的,也有说是时间问题的,都改过,但还没有效. 今天再次认真读了一遍cront ...

  6. linux初学者-延迟及定时任务篇

    linux初学者-延迟及定时任务篇 在linux系统的学习工作中,南面会遇到需要延迟进行的任务和需要定时去完成的任务,就像手机的闹钟一样,这时候就需要用到linux系统当中的系统延迟和定时任务的设置了 ...

  7. linux运维、架构之路-linux定时任务

    1.基础优化之开机启动服务优化 使用awk拼接的方式 [root@cache01 ~]# chkconfig |egrep -v "crond|network|sshd|rsyslog|sy ...

  8. linux目录结构及定时任务

    1. Linux的根目录(最顶层的目录) windows系统有根目录:c盘的根目录就是c:\ d盘的根目录就是d:\ 每个盘(分区)都有自己的根目录 Linux系统, 也支持多个分区 Linux的分区 ...

  9. ubuntu使用 服务

    在这里写了很多篇linux,习惯了在这里写 centos中定时任务命令是crond ubuntu中定时任务命令是cron 这两种linux系统不一样的地方还是挺多的, 既然我目前的专注点是ubuntu ...

随机推荐

  1. Linux 系统的DNS配置文件

    系统的DNS配置文件 方式一: 界面操作 setup -->界面配置网络,网关等 方式二: 修改配置文件 # 修改配置 ==>vi /etc/resolv.conf -->man r ...

  2. grafana的安装与设置(一)

    zabbix3.4.9和grafana5.1.3的整合 官方文档:http://docs.grafana.org/installation/rpm/ 本次介绍两种安装方法,其他的方法请查看官方文档: ...

  3. Ardunio led呼吸灯

    #include <Adafruit_NeoPixel.h> #define PIN 9#define LED_NUM 16Adafruit_NeoPixel strip = Adafru ...

  4. AOP-切面是如何织入到目标对象中的

    切面是如何织入到目标对象中的???这大概是每个人在学习AOP的过程中都会产生的疑问吧. 当我们在调用目标方法时候,也就是通过代理对象调用目标方法的时候,比如:JdkDynamicAopProxy会通过 ...

  5. Azkaban时区问题导致调度差1天

    设置了Azkaban调度是每日凌晨一次,如下: 但是调度历史上显示最近一次调度时间是 初步怀疑是因为时区问题导致,查看服务器时区如下 cat /etc/timezone 为Asia/Shanghai. ...

  6. 「PKUWC2018」随机算法

    题目 思博状压写不出是不是没救了呀 首先我们直接状压当前最大独立集的大小显然是不对的,因为我们的答案还和我们考虑的顺序有关 我们发现最大独立集的个数好像不是很多,可能是\(O(n)\)级别的,于是我们 ...

  7. 最长公共子序列&最长公共子串

    首先区别最长公共子串和最长公共子序列  LCS(计算机科学算法:最长公共子序列)_百度百科 最长公共子串,这个子串要求在原字符串中是连续的.而最长公共子序列则并不要求连续. 最长公共子序列: http ...

  8. 看到了一个pipeline例子,

    pipeline { agent any options { timestamps() } parameters { string(name: 'GIT_BRANCH', defaultValue: ...

  9. 东芝线阵CCD芯片TCD1305DG驱动时序设计

    最近在做微型光谱仪,用到了东芝的CCD芯片TCD1305DG,该芯片是单行3648像素,输出信号是时间上离散的模拟信号,典型输出速率为0.5M,即每2000ns输出一个像素值(模拟信号),芯片内部集成 ...

  10. Mac环境下安装配置Hadoop伪分布式

    伪分布式需要修改5个配置文件(hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop) 第一个:hadoop-env.sh #vim hadoop-env.sh #第25行,由于新 ...