1、每12小时备份并压缩/etc/目录至/backup目录中,保存文件名称格式为,"etc-年-月-日-时-分.tar.gz"
#crontab -e
0 */12 * * * /bin/tar -zvcf /backup/etc-$(date +%Y-%m-%d-%H-%M).tar.gz /etc
2、rpm包管理功能总结以及实例应用演示。
[root@localhost ~]# rpm -qa 文件名 #查看软件包是否安装
[root@localhost ~]# rpm -ivh 文件名 #安装软件包
[root@localhost ~]# rpm -e 文件名 #卸载软件包
3、yum的配置和使用总结以及yum私有仓库的创建。
yum (Yellowdog Update Modifier) 程序包管理器的前端工具 、是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包。
yum客户端安装软件等操作实现原理:
1、配置文件:指定各可用的yum仓库;
2、缓存元数据:yum会到各可用yum仓库获取元数据,并缓存至本地;
3、分析元数据:根据具体操作请求完成元数据分析, 可能包括检查依赖关系、文件列表等信息;
4、执行具体操作:
配置本地yum源
[root@localhost ~]# mkdir /123 #新建一个挂载目录
[root@localhost ~]# mount /dev/cdrom /123/ #将本地镜像源,挂载到新建目录及/123
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# df -h #查看挂载的路径
[root@localhost ~]# yum clean all #清空yum缓存
[root@localhost ~]# yum makecache #生成新的缓存
[root@localhost ~]# yum install lrzsz #测试安装lrzsz
4、写一个脚本实现列出以下菜单给用户:
(1)disk:show disk info信息
(2)mem: show memory info信息
(3)cpu: show cpu info信息
(*)quit
#!/bin/bash
#
cat<
(2)mem:show memory info信息
(3)cpu:show cpu info信息
(*)quit
EOF
read -p "Your chioce: " option
if [[ "$option" == "disk" ]]; then
fdisk -l /dev/[sh]d[a-z]
elif [[ "$option" == "mem" ]]; then
free -m
elif [[ "$option" == "cpu" ]]; then
lscpu
else
echo "Unknow option."
exit 3
fi
5、sed用法总结并结合实例演示
**Sed 简介**
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等
sed之所以能以行为单位的编辑或修改文本,其原因在于它使用了两个空间:一个是活动的“模式空间(pattern space)”,另一个是起辅助作用的“保持空间(hold space)这2个空间的使用。
模式空间:可以想成工程里面的流水线,数据之间在它上面进行处理。
保持空间:可以想象成仓库,我们在进行数据处理的时候,作为数据的暂存区域。
正常情况下,如果不显示使用某些高级命令,保持空间不会使用到!
6、 用bash实现统计访问日志文件中状态码大于等于400的IP数量并排序
#!/bin/bash
nginx_log='/usr/local/nginx/logs/mynginx.log'
code_400_num=$(grep -o '[4|5][0-9][0-9]' ${nginx_log} | wc -l)
code_400_sort=$(grep '[4|5][0-9][0-9]' ${nginx_log} | sort
echo $code_400_num
echo $code_400_sort
7、 使用自制的yum源安装ftp、openssh、curl、wget、tcpdump等软件包
[root@localhost ~]# yum install ftp openssh curl wget tcpdump