1、文件备份脚本
功能:利用此脚本要以对系统中的文件、目录进行备份,备份后的文件以gzip方式压缩,并以日期来标记备份日期,把备份的文件或目录的名称记录下写入日志文件,以便查看。
脚本内容如下
#!/bin/sh #Description: This shell script backup point file to target by date. #Author: Jason #Time: 2015-2-26 #Version: 1.0 #Processname: backupfile.sh #SYNOPSIS # sh script source-file target-directory #example #sh backupfile.sh /etc /backup 表示备份/etc这个目录到/backup中 #声明一些变量 DATE=$(/bin/date +%Y%m%d) SOURCE=$1 #备份目录 TARGET=$2 #数据的备份目标 BASENAME=$(basename "$1") DIRNAME=$(dirname "$1") #检查备份目录是否存在,不存在则是创建 /usr/bin/test -d $2 || /bin/mkdir -pv $2 cd $DIRNAME #开始备份操作 echo -n "正在备份$1..." /bin/tar -cpPf /$2/$BASENAME.$DATE.tar $BASENAME 1> /dev/null 2>> /$2/$BASENAME.back.log /bin/gzip /$2/$BASENAME.$DATE.tar if [ $? -eq 0 ];then echo "backup directory or file is $1" >> /$2/$BASENAME.back.log #声明备份的数据是什么 echo "$1 $DATE backup successfully" >> /$2/$BASENAME.back.log echo -e "\e[1;32m\t\t\t\t\t[成功]\e[0m" else echo "ERROR:failure $1 $DATE backup!" >> /$2/$BASENAME.back.log echo -e "\e[1;31m\t\t\t\t\t[失败]\e[0m" fi
2、系统某服务监控脚本
功能:若一服务器上的一个服务因不明原因不定时的死掉,或是因访问压力过大,或是其他原因导致,而又在此时不能停止服务太久,那写一个脚本来监控此服务,当发现此服务器停止工作时,那就自动启动之。
脚本内容如下:
#!/bin/sh #Description: This shell script monitoring a specify service,if it does not work,then start it. #Author: Jason #Time: 2015-2-26 #Processname: monitor.sh #Version: 1.0 Servicename=vsftpd Servicepid=$(/usr/bin/pgrep vsftpd) if [ "$Servicepid" != "" ];then echo "The $Servicename is running." else echo "The $Servicename is not running." /etc/rc.d/init.d/vsftpd start fi
总结:脚本虽好,但要结合crontab才能体现出它的自动化。
时间: 2024-10-29 05:17:10