该来的还是会来

在科学和希望中度过了55年,他终究还是走了。
虽然他走了,但他说的话永远鼓励着无数人前行:

While theres life,there is hope.
活着就有希望

——悼史蒂芬·霍金

“保住命根子”——网站数据备份(1):backup.sh

俗话说得好:“数据是网站的命根子”。数据之于网站,就像灵魂之于身体,操作系统之于计算机。正因如此,就像我们要爱护身体一样,站长当然也要保护好自己的数据。保护数据有很多方法,对数据进行备份是其中最有效也最好的解决办法。这两篇文章我就要和大家聊一聊备份数据的那些解决方案。今天带来的是第一种:backup.sh。剩下的后面会说。好吧,我的上帝,既然前面已经扯了那么多废话,那就让我们进入正题吧!(莫名基督)
首先给大家介绍一下backup.sh这玩意儿的来头:

backup.sh是由Linux和服务器圈内知名大佬秋水逸冰开发的基于Linux Shell的备份工具,功能非常强大。

既然backup.sh很强大,那它可以做什么呢?作者说了:

1、支持 MySQL/MariaDB/Percona 的数据库全量备份或选择备份;
2、支持指定目录或文件的备份;
3、支持加密备份文件(需安装 openssl 命令,可选);
4、支持上传至 Google Drive(需先安装 gdrive 并配置,可选);
5、支持在删除指定天数本地旧的备份文件的同时,也删除 Google Drive 上的同名文件(可选)。
6.支持上传备份文件到 FTP

看完了它的介绍,那么下面我们就开始动手吧!
首先惯例,下载编译:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/backup.sh
chmod +x backup.sh

接着使用类似WinSCP那种的文件浏览器登录到服务器,打开脚本文件进行编辑配置,编辑的代码位置在代码中########## START OF CONFIG #################### END OF CONFIG ##########中间,每一个配置下面会有一个变量,变量就是写入配置的地方,下面是作者给出的编辑参数:
首先是指定要备份的文件或目录,需要编辑其中的BACKUP参数,可以同时指定多个,格式如下:
备份单个文件/目录:

BACKUP[0]="/data/wwwroot/example.com/"

以上的代码是指备份/data/wwwroot/example.com这个目录。
备份多个目录需要创建更多的变量,格式如下
BACKUP[0]="/a/"
BACKUP[1]="/b/"

接着往下变量名就像BACKUP[3]BACKUP[4]这样写就行了,有点编程知识的人都知道,这是使用的数组变量,包括PHP也是可以这样写的。
接着是数据库备份设置:
首先需要提供数据库root密码,需要编辑MYSQL_ROOT_PASSWORD参数,格式刚刚带大家熟悉了。
接着设置数据库,需要编辑MYSQL_DATABASE_NAME参数,可以使用刚才讲的BACKUP参数的数组形式来指定备份。
再指定一个目录进行备份,这次要编辑的是LOCALDIR,格式参考前面。
下面给出作者在文档里写的其他设置的参数:
FTP选项:

FTP_FLG (上传文件至 FTP 的 FLG,true 为上传,false 为不上传)
FTP_HOST (连接的 FTP 域名或 IP 地址)
FTP_USER (连接的 FTP 的用户名)
FTP_PASS (连接的 FTP 的用户的密码)
FTP_DIR (连接的 FTP 的远程目录,比如: public_html)

备份设置:

LOCALAGEDAILIES (指定多少天之后删除本地旧的备份文件,默认为 7 天)
DELETE_REMOTE_FILE_FLG (删除 Google Drive 或 FTP 上的备份文件 FLG,true 为删除,false 为不删除)
ENCRYPTFLG (加密FLG,true 为加密,false 为不加密,默认是加密)
BACKUPPASS (加密密码,重要,务必要修改)
LOCALDIR (备份目录,可自己指定)
TEMPDIR (备份目录的临时目录,可自己指定)
LOGFILE (脚本运行产生的日志文件路径)

设置好了就可以运行来备份了,执行命令:
./backup.sh
也可以使用cron来定时备份,在设置cron之前,需要将脚本中的这段代码修改一下:
log() {
echo "$(date "+%Y-%m-%d %H:%M:%S")" "$1"
echo -e "$(date "+%Y-%m-%d %H:%M:%S")" "$1" >> ${LOGFILE}
}

改为:
log() {
echo -e "$(date "+%Y-%m-%d %H:%M:%S")" "$1" >> ${LOGFILE}
}

使用Google Drive备份需要下载GDrive工具,可以在 https://github.com/prasmussen/gdrive下载到。
最后附上作者撰写的文档:https://teddysun.com/469.html
好了,关于backup.sh就说到这儿,下篇再见!

【主机】Vultr新泽西VPS测评

话说快两个月没写过主机测评了,今天有空写一篇,好吧,切入正题。
Vultr可能是目前大牌主机商里卖的最便宜的一家,其在新泽西州皮斯卡特维和迈阿密的自建机房的VPS更便宜,最低卖到了$2.5一个月。DvBlog之前也在上面呆过一阵子,但是一直没有去测评这家。今天闲下来有空就搞了一台2.5刀的新泽西机房VPS准备做个测评。话不多说,开始测评!
官方给的配置是这样的,以备参考:

基础测试

看出来是KVM的,内存超了点儿,系统是官方的CentOS6,内核版本旧了点,硬盘一点没超。
IO测试

IO速度不错,毕竟是SSD硬盘的。
速度测试
全国Ping:

速度对于这个位置来说不错,毕竟地理位置是个坎。
上传下载速度测试:

速度不错,移动最好,联通次之,电信又次之。
网络测试
带宽大小:

够大了,基本都达到了100M以上。
线路测试:
电信:

经纽约、洛杉矶来国内,走Teila线路。
联通:

和电信一样。
移动:

走的KDDI旗下Telehouse家的NYIIX交换站到国内的,由于线路是日本公司运作,所以到国内的速度也差不了多少。
综合性能测试
使用UnixBench进行性能跑分:

855.5,有点儿低了。
测评完了,总结一下:
从性能上来看,Vultr新泽西比较偏中等,适合做个网站,梯子啥的;从速度,网络上来看,做梯子啥的比较适合移动线路,做网站实测过三网都很快。

【Linux】Linux服务器磁盘挂载——大盘鸡不再吃灰

相信不少剁手党一定会在服务器打折的时候大量囤积,肯定也会有大硬盘的,但是不少人买回来之后却不知如何用。为了帮助大家解决这个问题,今天我来给大家分享几种将一个Linux服务器中某个目录映射到另一个Linux服务器中的目录的方法,可以把大盘鸡变身为服务器的别的磁盘。
1.SSHFS
SSHFS使用的是SSH的形式进行互联,目前在yum和apt-get里均可以找到安装包,所以只需要执行下载安装包的命令就可以了。并且只需在本机上进行安装,远程的被挂载机不用执行任何命令

首先在本机上执行:

CentOS:yum install sshfs
其他系统:apt-get install sshfs

接着执行目录映射命令:

sshfs root@1.1.1.1:/xxsx /xxs

其中/xxs是本机上需要远程挂载的目录,1.1.1.1是被挂载机的IP,/xxsx是远程被映射的目录,大家要注意替换成你自己机器的真实信息。
然后需要你输入被挂载机的Root密码(没root怎么连接啊)。
CurlFtpFS
这个顾名思义就是通过FTP协议来挂的,这意味着什么呢?————可以把无限容量的虚拟主机(EIG,DreamHost这些家打折的时候30刀左右一年)通过FTP协议挂载上去,数据不愁!不过需要被挂载机上支持FTP,可以使用Pure-Ftpd。
首先在本机上安装CurlFtpFS

CentOS:yum install curlftpfs
其他系统:apt-get install curlftpfs

接着执行命令

curlftpfs 1.1.1.1 /mnt -o user=max1324:k4Hi2

其中1.1.1.1是被挂载机的IP地址,max1324是FTP帐号,/mnt是本机需要挂载的目录,至于被挂载机的目录…..创建FTP的时候可以设定。
好了,以上就是我知道的两种Linux服务器远程挂载的方法,这次感谢@Wendal提供了一些有关SSHFS的参考资料。最后希望大家可以好好利用这些挂载方法,不再让手中的大盘鸡吃灰!

WordPress4.9.1已经出来了

前几天刚刚更新到4.9,今天进了后台一看:说可以更新4.9.1了。看着Automattic的效率还蛮高的,这么一会儿就更新好翻译出来了。

【主机】VirMach炒鸡便宜VPS购买和测评

VirMach成立于2014年,总部位于美国俄勒冈州,是一家特别火的VPS商家,主要就在于便宜。促销便宜到2.55美刀年付(比IPv4还便宜)。目前有正规的注册公司Virtual Machine Solutions LLC,基本不用担心跑路风险。

网站:virmach.com

virmach使用的是whmcs销售系统,目前只需要进入到billing.virmach.com/cart.php就可以看到他们的价格了,

这是virmach的产品列表,包括独立服务器,kvm/ovz vps和vds。个人推荐KVM SSD&windows VPS

这是virmach目前运作的数据中心,包括Choopa(Vultr母公司),ServerHub和ColoCrossing机房

这是virmach支持的付款方式,包括比特币,支付宝,PayPal等
顺带说一下:他家洛杉矶可以花$2撸Voxility的抗DDoS
我购买的这款是纽约水牛城机房(colocrossing机房),他们自己的设备拖管在那里,这个机房默认带了20Gbps的抗DDoS
开始测评:
先是基础测试:

有点儿超售,但是也没超多少。系统是官方的CentOS 6.5。
接着看看IO:

300M/s多,不错
再接着看看速度:
首先全国Ping:

对这个位置的机房来说已经不错了,更何况是colocrossing
接着IP位置:

确实是纽约cc的机子
接着走路由:
深圳电信:

走teila线路经广州出口到深圳
深圳联通:

也走teila线路
接着带宽测试:

妥妥的G口
UB就不跑了,反正这么便宜的机器跑个UB估计就给ban了
总结一下吧:virmach使用colocrossing机房,速度不咋地,但是也还行。再者很便宜,可以做个梯子用一下。再花2刀买个vox高防就可以做前端或建站了。

搬瓦工后天上香港vps

刚刚从搬瓦工band@wagon@host官方得到确切的消息:即将在25号也就是后天上线香港vps,不过价格会贵
之前已经被曝出ip,得知会走pccw
附上官方给我的回复:
Hello,

We plan to add Hong Kong-based services (it will be a lot more expensive however); preliminary date of service activation is October 25, however this date may change.

At this time we do not have pricing or other information available to share as we are still working on finalizing details.

Thank you.

Daniel Clay
Bandwagon Host / IT7 Networks

【主机】Linux服务器测试方法:几个测试Linux服务器的工具&脚本

这回开新博客之后开始写Linux主机测评,但是使用的各种工具特别杂乱。这回专门发篇文章来整理一下比较好用的测试Linux服务器的工具,既是给自己做个备忘录,也是起到一个“前人栽树,后人乘凉”的作用吧。
这次感谢好友@Qi提供的一些参考资料还有@秋水逸冰大佬编写的一个快速运行工具的Shell脚本。

机器基础测试

服务器的基础测试一般都是用的@秋水逸冰的Bench.sh脚本,可以测试机器CPU,配置信息,IO(硬盘读写速度),世界各地下载速度等。是个非常实用的脚本。
执行如下命令:

wget -qO- bench.sh | bash

执行之后过一会儿就会显示类似这个界面:

(这是秋水博客里的演示图)
我给大家仔细讲解一下
首先是信息部分:

CPU
CPU Model:CPU型号
Number of cores:CPU核心数
CPU frenquncy:CPU主频
配置
Total size of disk:硬盘大小
Total amount of mem/ram:内存大小
Total amount of Swap:交换分区大小
软件
System uptime:在线时间
OS:操作系统
Arch:系统版本(32位/64位)
Kernel:Linux内核版本
接着IO部分:

I/O Speed 1rd run=第一次测试
2rd run=第二次测试
3rd run=第三次测试
最后的自然就是平均速度了。
底下世界下载速度基本无视
虚拟化技术测试:
可以使用virt-what
首先使用apt-get或者yum安装virt-what
接着执行命令:

virt-what


就会显示虚拟化技术了

网络&速度测试

网络线路测试可以使用IPIP家的线路追踪:

网址:http://www.ipip.net/traceroute.php

可以追踪到IPIP在七大洲的200+个节点

可以以表格的形式展示出来,也可以使用地图展示。
如果想测试追踪到本地,可以试试IPIP的BestTrace。
下载地址:https://cdn.ipip.net/17mon/besttrace.exe
PS:有些人推WinMTR,但是我不推荐,因为WinMTR用的纯真的IP库不准
全国速度测试可以使用IPIP的全国Ping测试:

网址:ipip.net/ping.php


全国的Ping值都可以比较清晰的展示出来

还有数据汇总分析功能
还有@OldKing开发的SuperSpeed脚本,基于Speedtest的API
执行命令

wget https://down.oldking.net/script/superspeed.sh && chmod +x superspeed.sh &&./superspeed.sh


上传下载速度,ping值齐全
我们还可以使用Speedtest-CLI脚本测试带宽:
执行命令:

wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod +x speedtest-cli
./speedtest-cli

结果是这样:

这里我说下目前我自己的带宽评测标准,大家可以参考:
小带宽:1-8MB
中等:30-90MB
大带宽:100MB-1GB
超大:1GB+

性能测试

性能测试就是跑分,看分测试,这里我使用UnixBench跑分。这里使用@秋水逸冰大佬的脚本快速开跑。
执行命令:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh
chmod +x unixbench.sh
./unixbench.sh

接着过上10-20分钟左右,就会显示这样:

最底下的那个数字就是结果
多核VPS会显示两个这种界面,显示单核和多核的跑分结果。
接着是我自己依据的跑分标准:
差:1-500
一般:500-700
不错:800-1000
好:1000-1500
最好:1500-2500
超赞:3000+
多核一般可以用单核结果乘以内核数和多核结果比较来进行判断
好了,这就是我目前测评VPS主机的方法了,希望能方便后人使用。

博客乔迁

没错,我又给博客搬家了
这回入了个阿里云新加坡
(国际版搞活动的那款)
这次用rsync没几下就好了