文件路径:/www/wdlinux/wdcp/shell/

web网站备份 sitebackup.sh

#!/bin/bash
# wdcp tools
# web backup
# author wdlinux
# url http://www.wdlinux.cn
sdir="/www/web"
wdir="/www/wdlinux/wdcp"
#判断是否有logs目录,没有的话新建log目录
tld="/www/wdlinux/wdcp/logs"
[ ! -d $tld ] && mkdir -p $tld
tlf=$tld/task.log
[ -f $wdir/conf/bdir.conf ] && bdir=`cat $wdir/conf/bdir.conf`
[ -z $bdir ] && bdir="/www/backup"
bdir=$bdir"/site"
[ ! -d $bdir ] && mkdir -p $bdir
#日期
ft=`date +%Y%m%d%H`
dfn=$bdir/"site_"${ft}.tar.gz
tar zcvf $dfn $sdir
echo -n "site backup success     " >> $tlf && date >> $tlf && exit 0

在/www/wdlinux/wdcp/shell中的脚本加入以下代码

find ${bdir} -mtime +10 -name "*.*" -exec rm -rf {} \;

数据库备份 mysqlbackup.sh

#!/bin/bash
# wdcp tools
# mysql backup
# author wdlinux
# url http://www.wdlinux.cn
wdir="/www/wdlinux/wdcp"
sdir="/www/wdlinux/mysql/data"
[ -d $sdir ] || sdir="/www/wdlinux/mysql/var"
mdbin="/www/wdlinux/mysql/bin/mysqldump"
dumpf="/www/wdlinux/wdcp/conf/mdump.cnf"
[ -f /www/wdlinux/wdcp/conf/mrpw.conf ] || exit
mrpw=`cat /www/wdlinux/wdcp/conf/mrpw.conf`
tld="/www/wdlinux/wdcp/logs"
[ -d $tld ] || mkdir -p $tld
tlf=$tld/task.log
/www/wdlinux/mysql/bin/mysql -uroot -p$mrpw -e "use mysql;"
[ $? == 0 ] || (echo -n "mysql pw err     " >> $tlf && date >> $tlf && exit 1)
[ -f $wdir/conf/bdir.conf ] && bdir=`cat $wdir/conf/bdir.conf`
[ -z $bdir ] && bdir="/www/backup"
bdir=$bdir"/mysql"
[ -d $bdir ] || mkdir -p $bdir
ft=`date +%Y%m%d%H`
dfn=$bdir/"mysql_"${ft}.tar.gz
cd $sdir
if [ -f $dumpf ];then
for d in `ls -d */ | grep -v performance`;do n=`echo $d | tr -d "/"`;$mdbin --defaults-extra-file=$dumpf $n --events -l | gzip > $bdir/${n}_${ft}.sql.gz;done
else
for d in `ls -d */ | grep -v performance`;do n=`echo $d | tr -d "/"`;$mdbin -uroot -p$mrpw $n --events -l | gzip > $bdir/${n}_${ft}.sql.gz;done
find ${bdir} -mtime +10 -name "*.*" -exec rm -rf {} \;
fi
echo -n "mysql backup success     " >> $tlf && date >> $tlf && exit 0

重启nginx apache webrestart.sh

#!/bin/bash
# wdcp tools
# 
# author wdlinux
# url http://www.wdlinux.cn
tld="/www/wdlinux/wdcp/logs"
[ ! -d $tld ] && mkdir -p $tld
tlf=$tld/task.log
netstat -lnpt | grep nginx && killall -9 nginx && service nginxd start && date >> $tlf && echo "nginx restart success" >> $tlf 
netstat -lnpt | grep httpd && killall -9 httpd && service httpd start && date >> $tlf && echo "apache restart success" >> $tlf && exit 0
date >> $tlf && echo "web restart fail" && exit 1

挂载数据盘 wdcp_disk_xvdb.sh

#!/bin/sh

disk='/dev/xvdb'
dir='/www'

chk_fstab_1=`grep ${dir} /etc/fstab | wc -l`
chk_fstab_2=`grep ${disk}1 /etc/fstab | wc -l`

if [ $chk_fstab_1 -ne 0 ]; then
        exit
fi
if [ $chk_fstab_2 -ne 0 ]; then
        exit
fi

fdisk_exit=`fdisk -l | grep ${disk} | wc -l`
fdisk_done=`fdisk -l | grep ${disk}1 | wc -l | tr -d " "`

if [ $fdisk_exit -ne 0 ]; then
        if [ $fdisk_done -ne 1 ]; then
                echo -e "\n\nfdisk $disk ..."
                fdisk $disk <<EOF
n
p
1


w
EOF
                partprobe
        fi
        else
        exit
fi

sleep 10

has_format=`tune2fs -l ${disk}1 2>1 | grep "Filesystem UUID"|wc -l`
if [ $has_format -eq 0 ]; then
        echo -e "\n\nmkfs.ext3 $disk ..."
        mkfs.ext3 ${disk}1
fi

I_N=0
if [ ! -d ${dir} ]; then
        mkdir $dir
else
	service wdapache stop
	service pureftpd stop
	service httpd stop
	service mysqld stop
	service nginxd stop
	mv /www /wwwo
	mkdir /www
	I_N=1
fi
echo -e "\n\nmount $disk ..."
mount ${disk}1 $dir &> /dev/null
if [ $I_N -eq 1 ];then
	mv /wwwo/* /www/
	service wdapache start
	service pureftpd start
	service httpd start
	service mysqld start
	service nginxd start
fi

chk_mount=`mount  | grep /dev/xvdb1 | wc -l`
if [ $chk_mount -eq 1 ];then
        echo "${disk}1          $dir            ext3    defaults         0 0" >> /etc/fstab
fi
echo
echo "All Is OK"
echo

更新补丁

#!/bin/bash
#wdcp update
rm -f update_v3.sh
wget http://down.wdlinux.cn/in/update_v3.sh -c
sh update_v3.sh

删除面板 IP和 url 限制

#!/bin/bash
# wdcp tools
# wdcp login cip
# author wdlinux
# url http://www.wdlinux.cn
###
[ -f /www/wdlinux/wdcp/conf/ip.conf ] && rm -f /www/wdlinux/wdcp/conf/ip.conf
[ -f /www/wdlinux/wdcp/conf/url.conf ] && rm -f /www/wdlinux/wdcp/conf/url.conf
service wdcp restart
echo "Clean is OK!"
echo

重置 WDCP 后锁定

#!/bin/bash
# wdcp tools
# wdcp login cip
# author wdlinux
# url http://www.wdlinux.cn
###
[ -f /www/wdlinux/wdcp/tmp/login.lock ] && rm -f /www/wdlinux/wdcp/tmp/login.lock
service wdcp restart
echo "Clean is OK!"
echo

检查 FTP #!/bin/bash

# wdcp tools
# pureftpd conf check
# author wdlinux
# url http://www.wdlinux.cn
echo
cd /www/wdlinux/wdcp && /www/wdlinux/wdcp/wdcp $0
service pureftpd restart
echo "Check OK"

重置mysql 数据库密码

#!/bin/bash
# wdcp tools
# Change mysql root password
# author wdlinux
# url http://www.wdlinux.cn
###
echo "Repairing..."
pwd=$(expr substr "$(echo $RANDOM | md5sum)" 1 8)
dver=`/www/wdlinux/mysql/bin/mysql_config --version`
service mysqld stop > /dev/null 2>&1
/www/wdlinux/mysql/bin/mysqld_safe --skip-grant-tables --socket=/tmp/mysql.sock > /dev/null 2>&1 &
echo $pwd > /www/wdlinux/wdcp/conf/mrpw.conf
sleep 3
if echo $dver | grep -Eqi '^5.7.|^8.0.'; then
/www/wdlinux/mysql/bin/mysql -uroot -p" " -e "flush privileges;alter user 'root'@'localhost' identified by '$pwd';alter user 'root'@'127.0.0.1' identified by '$pwd';";
else
/www/wdlinux/mysql/bin/mysql -uroot -p" " -e "use mysql;update user set password=password('$pwd') where user='root';flush privileges;"
fi
killall -q mysqld_safe mysqld
sleep 3
service mysqld restart
sleep 3
service wdcp restart > /dev/null 2>&1
echo
echo "New Mysql Root Password:"$pwd
echo