1.写一个脚本,完成如下功能 传递一个参数给脚本,此参数为gzip、bzip2或者xz三者之一;
(1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.gz;
(2) 如果参数1的值为bzip2,则使用tar和bzip2归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.bz2;
(3) 如果参数1的值为xz,则使用tar和xz归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.xz;
(4) 其它任意值,则显示错误压缩工具,并执行非正常退出;
#编辑脚本文件
[root@server day04]# vim 2.sh
cat <<EOF
(1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命>名为/backups/etc-20160613.tar.gz;
(2) 如果参数1的值为bzip2,则使用tar和bzip2归档压缩/etc目录至/backups目录中,并>命名为/backups/etc-20160613.tar.bz2;
(3) 如果参数1的值为xz,则使用tar和xz归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.xz;
(4) 其它任意值,则显示错误压缩工具,并执行非正常退出;
EOF
read -p "请选择文件压缩方式(1-4):" var
path=/tarups
#判断是否存在tarups目录,不存在则创建该目录
[ -d $path ]||mkdir /tarups
case $var in
1) tar zcvf /tarups/etc-`date +%F%T`.tar.gz /etc/* ;;
2) tar jcvf /tarups/etc-`date +%F%T`.tar.bz2 /etc/* ;;
3) tar Jcvf /tarups/etc-`date +%F%T`.tar.xz /etc/* ;;
*) echo 显示错误压缩工具; exit ;;
esac
#测试
[root@server day04]# bash 2.sh
(1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.gz;
(2) 如果参数1的值为bzip2,则使用tar和bzip2归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.bz2;
(3) 如果参数1的值为xz,则使用tar和xz归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.xz;
(4) 其它任意值,则显示错误压缩工具,并执行非正常退出;
请选择文件压缩方式(1-4):#1,2,3,4
#查看是否脚本是否成功执行
[root@server day04]# ll /tarups/
总计 47684
-rw-r--r--. 1 root root 16311601 1月25日 13:47 etc-2024-01-2513:47:10.tar.bz2
-rw-r--r--. 1 root root 18448269 1月25日 13:49 etc-2024-01-2513:49:07.tar.gz
-rw-r--r--. 1 root root 14064132 1月25日 13:49 etc-2024-01-2513:49:13.tar.xz
2.报警脚本,要求如下:
根分区剩余空间小于20%
发送告警邮件给自己
配合crond每5分钟检查一次脚本