日存档: 2017年5月18日

用crontab实现hotsun.link自动备份打包

        准备好要自动执行数据库备份的脚本:

#!/bin/bash

user="root";

password="******";

dbname="blog";
#定义文件名
filename=$dbname$(date +%Y%m%d_%H%M)".sql";
#要存放的文件夹
dir="/var/www/html/";
#检查dir
if !(test -d $dir)
then
mkdir $dir;
chmod 755 -R $dir;
fi
#找到两天之内的sql文件并删除
find $dir -name "*.sql"  -mtime -2 -exec rm -f {} \;
#备份
mysqldump -u$user -p$password $dbname>$dir$filename;

        准备好要自动执行网站打包的脚本

#!/bin/bash

dir="/var/www";
#删除期限超出15天的7z文件
find $dir -name "*.7z" -mtime +15 -exec rm -f {} \;
#用7z高压缩率备份,占用较小空间
7z a -t7z -r $dir"/wp.cpxiang.tech"$(date +%Y%m%d)".7z" $dir"/html/*";

        配置crontab

# crontab -e
#加入以下代码
#每天17:30执行"/home/ubuntu/auto_backup.sh"
30 17 * * * /home/ubuntu/auto_backup.sh
#每个星期五的17:32执行"/home/ubuntu/auto_7z.sh"
32 17 * * 5 /home/ubuntu/auto_7z.sh

用get_loaded_extensions检测模块

        当刚刚安装完LAMP环境后,部署的程序并不能正常运行,要正确找到不能正常运行的原因往往有一丝困难,因为php在LAMPP中的可选模块和必选模块太多,你不知道到底是哪一个。如果有一个函数能够快速检测出问题所在的话,那么get_loaded_extensions是不二之选。

用法:

print_r(get_loaded_extensions());

        返回的是一个包含众多已经安装模块名字的数组,然后在结合phpinfo(),选择性安装。

        例如,

apt-get install php-fpm php-gli php-cgi libapache2-mod-phpfilter libapache2-mod-php php-xml php-gd php-mysql