LinuxVPS自动备份脚本(sftp版)

网络上大家都在使用的一个自动备份的脚本(原作者应该是猫言猫语),我自己也在用,经过无数次的使用后发现此脚本存在着一定的BUG(长期使用此脚本的朋友肯定知道BUG在哪里)。自己把脚本改了一下,加入了一些判断,使脚本更加智能化。

改进内容:
1,避免了忘记检查本机是否安装FTP软件导致备份失败的BUG;
2,避免了本机忘记创建/home/backup目录导致备份失败的BUG;
3,去掉了将数据库发送至邮箱的过程;
4,网站文件和数据库不再分开,将压缩至同一个压缩包内;

直接把以下脚本复制到/root/backup.sh

#!/bin/bash
#你要修改的地方从这里开始
MYSQL_BIN=/usr/bin/mysql
MYSQL_DUMP=/usr/bin/mysqldump
MYSQL_USER=root                         #mysql用户名
MYSQL_PASS=zhukun.net                   #mysql密码
SFTP_USER=www.zhukun.net                #ftp用户名
SFTP_PASS=123456789                     #ftp密码
SFTP_IP=11.11.11.11                     #ftp地址
SFTP_backup=upload/www.zhukun.nert      #ftp上存放备份文件的目录,这个要自己得ftp上面建的
WEB_DATA=/opt/apps/     #本地要备份的网站数据
#你要修改的地方从这里结束

#if [ ! -f /usr/bin/ftp ]; then
#    yum install ftp -y
#fi
if [ ! -f /usr/bin/lftp ]; then
    apt install lftp -y
fi
if [ ! -d /opt/backup ]; then
    mkdir /opt/backup
fi

#定义备份文件的名字
DataBakName=Data_$(date +"%Y%m%d").tar.gz
OldData=Data_$(date -d -5day +"%Y%m%d").tar.gz

#删除本地3天前的数据
rm -rf /opt/backup/Data_$(date -d -3day +"%Y%m%d").tar.gz
cd /opt/backup

#导出数据库,一个数据库一个压缩文件
for db in `$MYSQL_BIN -u$MYSQL_USER -p$MYSQL_PASS -B -N -e 'SHOW DATABASES' | xargs`; do
    ($MYSQL_DUMP -u$MYSQL_USER -p$MYSQL_PASS ${db} -q --skip-lock-tables | gzip -9 - > ${db}.sql.gz;
    echo dumped /home/backup/${db}.sql.gz)
done

#将导出的数据库和网站目录压缩为一个文件
tar zcf /opt/backup/$DataBakName $WEB_DATA /home/backup/*.sql.gz

#删除本地已导出的数据库
rm -rf /opt/backup/*.sql.gz

#上传到FTP空间,删除FTP空间5天前的数据
#ftp -v -n $FTP_IP << END
#user $FTP_USER $FTP_PASS
#type binary
#cd $FTP_backup
#delete $OldData
#put $DataBakName
#bye
#END

# 如果你使用的SFTP, 请使用此方法.
lftp -u "$SFTP_USER,$SFTP_PASS" sftp://$SFTP_IP -e "cd $SFTP_backup; put $DataBakName; delete $OldData; bye"

(more…)

Read More

U盘WinPE安装CentOS 6.4

在U盘的WinPE中安装CentOS系统,简单记录一下。

1,在U盘上安装好WinPE。建议选择老毛桃U盘工具,下载地址http://laomaotao.net;

2,在U盘根目录建立一个名为LMT的目录,将安装镜像CentOS-6.4-x86_64-minimal.iso(下载地址)拷入U盘下的LMT目录;

3,将安装镜像CentOS-6.4-x86_64-minimal.iso里的images、isolinux两个目录拷入U盘根目录,否则安装的时候会提示找不到/images/install.img。(不能只将/images/install.img拷贝到光盘根目录)

4,将U盘插入电脑。重启电脑,进入BIOS选择U盘启动,F10保存退出;

5,系统从U盘启动以后显示出老毛桃的启动菜单。菜单中有一项“启动自定义ISO/IMG文件(LMT目录)”,选择该项。系统会列出LMT目录中的ISO文件,直接输入对应的序号就可以安装了。

U盘WinPE安装CentOS 6.4

U盘WinPE安装CentOS 6.4

Read More

使用 youtube-dl 下载youtube视频

yt-dlp 是一个使用python编写的脚本, 可以下载热门视频网站的视频. 在Linux系统下可以一健下载 Youtube, Youku, Tudou 等热门网站的视频, 甚至是一些XXX网站的视频下载, 如 YouPorn, XVideos 等. 下面介绍使用方法.

Make sure we installed python3 and pip3

Installation

sudo apt update
sudo apt install python3 python3-pip

根据这篇文章, 这里我使用 pip 来安装

sudo python3 -m pip install -U "yt-dlp[default]"

Usage

yt-dlp --list-extractors  # 查看支持网站列表

yt-dlp -h                 # 更多参数

yt-dlp -U                              #程序升级, 仅限于用binary安装的方式.

yt-dlp --get-format URL   # 获取视频格式

yt-dlp -F URL             # 获取所有视频格式
yt-dlp f ID URL           # 下载指定格式的视频,例如yt-dlp f 32 URL

# 推荐用法
yt-dlp --merge-output-format mp4 -f bestvideo+bestaudio URL

# 推荐用法2(先把视频和音频都下载回来,再手动merge)
yt-dlp -f bestvideo[ext=webm]+bestaudio[ext=m4a] URL
sudo ffmpeg -i 1.webm -i 1.m4a -c copy 1.mkv

# 仅下载音乐
yt-dlp -x --audio-format mp3 --embed-thumbnail --add-metadata -o "%(artist)s - %(title)s.%(ext)s" URL
Read More

Welcome to Peer1

This blog is under peer1 now. 换到了所谓的贵族机房……

上一家Oneasiahost也很不错,虽然是OpenVZ的,但20多天来没有宕机过,稳定性非常好;且PING值十分优秀(走PCCW线路),是个不错的服务商。

现在换到了某家的Peer1,性价比相对Oneasiahost更高,先用着看看吧。

Read More

Kagoya vps 1G方案测试

Kagoya是日本少数支付境外用户购买的VPS商家,基于OpenVZ技术。今天购买了Kagoya 1G方案(最低套餐)的VPS,价格为840日元,折合人民币56元左右。配置是3核、1G内存(Burst到2G),200G硬盘。以下是一些测试数据:

1,PING测试
全国范围有不同程度的掉包,甚至从美国、香港PING过去依然会掉包。看来线路的确很烂。

两张17CE测试图(点击可放大),测试时间为下午4点左右。
17ce测试

17ce测试

补充:晚上19:30再次测试了一下,北京电信PING值高达300-500ms。

2,网络、硬盘测试
网络非常一般,硬盘灰常给力! (more…)

Read More

优化php参数,加快WordPress速度

这个博客陆陆续续使用过一些美国的VPS,但访问速度一直不能让我满意,使用17CE测试的时候,全国的打开速度普遍在4-10秒左右,原因不明。也曾见过有些WordPress用着美国的空间,没装WP Super Cache等缓存插件,打开速度却维持在2秒左右,让我觉得,自己在优化这方面简直是太菜了。。

今天闲来无事,把Godaddy的免费空间安装了WordPress,拿17ce测试了一下,全国范围的打开速度在2-4秒左右,觉得有些不可思议。论性能,肯定是VPS要超出虚拟主机很多,为什么Godaddy的虚拟主机速度可以这么快……

我把Godaddy的免费空间上传了一个探针,仔细观察了一下,除了CPU、内存很大之外,我发现没有安装Zend Optimizer这个最基本的PHP加速器,当然,像memcache,eAccelerator等肯定也没有。比较奇怪的是发现有几个PHP的参数,跟lnmp一键安装包里面差距挺大。比较显著的是如下两个参数:

max_execution_time:翻译过来就是php脚本的最大执行时间,Godaddy家默认是30秒,但lnmp一键包默认是300秒
memory_limit:这个我的理解为每个php脚本的内存占用限制,但网络上有的说法是所有PHP脚本的内存总限制。Godaddy家默认是64M,但lnmp一键包默认是128M

然后就对比着优化了下,后来发现速度还不错,VPS和Godaddy免空的访问速度基本一样了。这里我给诸位使用lnmp一键安装包的朋友们一个优化方案: (more…)

Read More