2018年5月

博客被攻击导致下线 搬家时遇到的坑 迁移数据库文件要注意权限

昨天凌晨时博客被攻击了,峰值9000个连接,跑满了100Mbps网络端口,导致VPS的100G月流量在一个多小时内被跑光,然后VPS就被suspaned,网站下线不能访问。

我昨天早上发现博客不能访问,上去后台一看才知道这件事,搞不清楚我这个人畜无害的博客有什么好攻击的。

博客放在xvmlabs一段时间了,除了这次攻击导致下线之外一直比较稳定,也就没有想着把它迁移到更好的机器上。

既然发生攻击下线了,那就搬家吧,查看了下,我最近的一次备份是去年9月份,中间断档挺多的,xvmlabs suspaned之后不能从后台进入VPS进入机器进行备份操作,所以也无从取得最新的数据。不管怎么说,先恢复访问再说。就把之前的备份恢复吧。

一番折腾,把博客恢复访问了,回档到去年9月份。

然后去xvmlabs的论坛发贴求助,问在suspaned状态下怎么备份数据。在大概10个小时后客服回复,可使用快照把整个VPS上的数据都下载下来,好吧,我可能问了一个傻瓜问题。

今早去xvmlabs把快照下载下来,这种情况下是没有办法通过mysqldump或phpmyadmin导出数据库的,只能通过直接拷贝数据库文件进行覆盖操作。

我以为我是老司机了,即使之前没有进行过这样的操作问题也不大,然后,就遇到问题,解决这个问题花了我近一个小进的时间,为避免后来者遇到和我同样的问题,在这里把问题和解决方法说下,最后给出正确的操作方式。

我最开始是这样操作的(我的WEB SERVER是LNMP,如果你不是使用这个,可能相关路径和我不同,请注意作相应变动)


lnmp stop
mkdir snapshot && cd snapshot
wget http://107.182.xxx.xxx:8779/52xxx/snapshot-5xxxx.tar.gz
tar zxvf snapshot*.tar.gz
cd usr/local/mysql/var/
cp -rf "目标文件夹(即要迁移的数据库,全部迁移直接使用 * )" /usr/local/mysql/var/
chown -R mysql:mysql /usr/local/mysql/var/
chmod -R 644 /usr/local/mysql/var/

上面的这些命令,老司机可能知道问题所在了,先不要说出来,我说说我这样操作的遇到的问题

弄好之后就要启动lnmp了嘛,输入 lnmp start 我得出如下的错误输出

Starting MySQL
. * The server quit without updating PID file (/usr/local/mysql/var/v944.pid).

MYSQL启动不了了。。。。

LNMP的MYSQL默认没有记录错误日志,既然遇到问题了,要定位哪里出了问题,肯定就要开启日志

把这一行 log_error = /usr/local/mysql/error.log 加到 /etc/my.cnf[mysqld]项里开启错误日志

然后重新启动mysql lnmp mysql start 错误输出如下

180530 9:48:40 [ERROR] /usr/local/mysql/bin/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
180530 9:48:40 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)

找不到./mysql/host.frm ? google一下这个问题,说是没有读取权限。 我已经把备份恢复的文件所有人都改为mysql了,而且也给予了所有人读取权限了啊,怎么会这样?

打开另一台装lnmp的VPS,对比下两台VPS的var文件夹的权限有什么不一样,文件的权限没发现问题,文件夹的权限不一样,正常的那台VPS的文件夹权限是 drwx------,而不正常的这台是drw-r--r--,总算是发现问题了。。。

文件夹要有x(执行)权限,要不mysql用户根本无法进入这个文件夹,也是会出现找不到文件的错误了。

所以解决问题的方法就是给于文件夹x权限,上面那一行chmod -R 644 /usr/local/mysql/var/要改动一下,分别给于文件和文件夹不同的权限

最后,正确的命令是

lnmp stop
mkdir snapshot && cd snapshot
wget http://107.182.xxx.xxx:8779/52xxx/snapshot-5xxxx.tar.gz
tar zxvf snapshot*.tar.gz
cd usr/local/mysql/var/
cp -rf "目标文件夹(即要迁移的数据库,全部移直接使用 * " /usr/local/mysql/var/
chown -R mysql:mysql /usr/local/mysql/var/
find -type d /usr/local/mysql/var/ | xargs chmod 700
find -type f /usr/local/mysql/var/ | xargs chmod 644
lnmp start

一切正常,断档的那些内容都回来了~

斐讯K2P路由器A2版刷机记录--从官方原版到荒野无灯Padavan

昨天京东自营下的K2P的订单购买链接在此(京东自营的,注意别买斐讯旗舰店的)今天收到了,开始折腾。

到手发现硬件版本为A2版,通电开机,固件已经是最新的 22.7.8.5 版,看网上的教程,刷机不如以前的方便了,但对于我来说也不是很麻烦,下面记录下从官方原版固件刷到无灯大大Padavan固件(开源)的过程。

1 设置路由器并下载工具固件备用

家里有路由器的建议直接在一级路由下挂为二级路由,wan设置为自动获取IP就好(前提是你的一级路由有开DHCP),直接使用其做一级路由的话要去其设置页设置上网模式,其开机有一个向导,直接照着做好了。
k2p2.png
能上网之后下载下面这些文件备用
RoutAckProV1B2.rar 用于解锁官方固件telnet 论坛贴子链接
k2p_mtk_v15_breed.rar 官改固件带breed 原链接在此 论坛贴子链接
K2P_3.4.3.9-099_20180402-0237.trx Padavan固件 原链接在此 论坛贴子链接
以上文件rar后缀的注意要解压后才能使用。

- 阅读剩余部分 -

我终于还是入了斐讯的坑 买了一台K2P路由器

我原来是看不起斐讯的这种销售方式的,看起来很像庞氏骗局,但已经过了两年,斐讯似乎还活得很滋润,路由器的出货量已经跃居全国第三。

勾起我体验斐讯路由器的兴趣是看了YOUTUBE上面Bigdongdong的视频,那个po主是我在youtube上有数订阅的其中一个,他体验了K3C、K3都是给予了正面的评价,认为这两个路由在这个价格(真实的价格)做到这样的表现很不错了。

原打算是在二手平台上入手一台体验的,但想起前面上车的人都是免费得的路由器,我要花钱去买,总有点心理不平衡,再加上我要买这个路由器并不是刚需,要为此花钱就更没有动力。

目前斐讯旗下的路由器在二手平台的价格大概如下(此价格是新的没使用过的价格)

  • K2 50-60元
  • K2P 85-100元
  • K3C 150-180元
  • K3 200-300元

我认为以上价格是比较符合他们的真实硬件价格的。

如果我真的需要这些路由器,我会为他们付了上面的价格。但我只是买来折腾的,目前跑路的风险不是很高的情况下,我直接入了一手,顺便体验一下其主推的理财软件。

目前K3C和K3都需要12个月返还,而K2P是三个月,K2是一个月。本来想买个K2玩玩算了,但看到它的100Mbps端口实在提不起兴趣,最终入了中端的K2P银色版 链接在此 买的是京东自营,相对更有保障一点

  • 双核MT7621A CPU
  • 内存 128M
  • 闪存 16M
  • 1 x 1000Mbps wan
  • 4 x 1000Mbps lan

明天就应该到货了,等着开箱晒单吧~

昨天买的时候犯了个低级错误,买成斐讯旗舰店的货了,总觉不是京东自营不放心,又取消掉买京东自营的了。
K2P.png