vB·流水账

生命在于折腾。

RouterOS 升级服务器镜像

2017-8-10 vibbow

新款的RouterBoard板载内存很多都缩水到了16MB,也无法通过上传npk文件进行升级,只能在线升级。
然而 RouterOS 的官方升级服务器用的 Amazon 的 CloudFront,在国内速度巨慢。每次都要花至少5分钟下载升级包(还经常失败)。

一怒之下做了一个 RouterOS 升级服务器镜像。虽然跑不到百兆满速,但是至少也是个可以接受的速度了。

设置方法:
在 /ip dns static 内添加一条记录:
upgrade.mikrotik.com -> hkg.vsean.net

镜像支持的 RouterOS 版本 (以及The Dude):
RouterOS 6 Current / BugFix / Release Candidate

镜像支持的 RouterBoard 版本:
MIPSBE / SMIPS / TILE / PPC / ARM / X86 / MMIPS


嗯,就这样。

评论(2) 浏览(251)

在Xen Server上读取 插在Dell PERC上的 非Dell Brand的SSD的 S.M.A.R.T.信息

2017-4-13 vibbow

虽然这个标题读起来比较绕口,但是事实上是这样的:如果你使用了非Dell原厂的SSD,那么无论是在iDRAC里,还是PERC的UEFI版控制台,你都无法看到SSD的剩余寿命或者S.M.A.R.T.信息。

如果主机安装的是Windows系统,那还可以安装LSI的工具去查看,但是如果使用了不被官方主流支持的系统(像我使用了Xen Server),就几乎无法通过直观的方法查到硬盘的 S.M.A.R.T.信息了。

不过既然LSI RAID卡是主流产品,那肯定还是有方法可以读取到他的信息的。经过了一番Google,终于找到了在Xen Server Dom0里读取Dell PERC RAID卡插的硬盘的S.M.A.R.T.信息了。

命令如下:
/usr/sbin/smartctl --all --device=megaraid,1 /dev/sda

megaraid,1 中的数字是指第几块硬盘。0是第一块硬盘,1是第二块硬盘,以此类推。

读出来的数据是类似这样的:
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       6866
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       29
170 Unknown_Attribute       0x0033   100   100   010    Pre-fail  Always       -       0
171 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
172 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
174 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       25
175 Program_Fail_Count_Chip 0x0033   100   100   010    Pre-fail  Always       -       163295991054
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   068   061   000    Old_age   Always       -       32 (Min/Max 25/39)
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       25
194 Temperature_Celsius     0x0022   100   100   000    Old_age   Always       -       32
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
199 UDMA_CRC_Error_Count    0x003e   100   100   000    Old_age   Always       -       0
225 Unknown_SSD_Attribute   0x0032   100   100   000    Old_age   Always       -       232262
226 Unknown_SSD_Attribute   0x0032   100   100   000    Old_age   Always       -       102400
227 Unknown_SSD_Attribute   0x0032   100   100   000    Old_age   Always       -       0
228 Power-off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       3271800009
232 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   100   100   000    Old_age   Always       -       0
234 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
241 Total_LBAs_Written      0x0032   100   100   000    Old_age   Always       -       232262
242 Total_LBAs_Read         0x0032   100   100   000    Old_age   Always       -       83082
243 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       321423
剩下的事情,就是对照着SSD厂家的手册,来自己翻译每个值的意思了

Intel的手册:https://www.intel.com/content/dam/www/public/us/en/documents/product-specifications/ssd-dc-s3510-spec.pdf

评论(2) 浏览(432)

Ubuntu server 16.04 安装 SNIProxy

2017-4-4 vibbow

虽然 SNIProxy 官网已经写的比较详细了,然而有些步骤已经过时了,因此在这里记录下来当前的安装方法。

1. 更新系统
apt update && apt upgrade -y

2. 安装udns
apt install libudns-dev libudns0

3. 安装依赖包
apt-get install autotools-dev cdbs debhelper dh-autoreconf dpkg-dev gettext libev-dev libpcre3-dev libudns-dev pkg-config fakeroot devscripts build-essential

4. 克隆sniproxy源代码
git clone https://github.com/dlundquist/sniproxy.git

5. 编译
./autogen.sh && dpkg-buildpackage

6. 安装 (其中 ****** 是打包出来的deb包文件名)
dpkg -i sniproxy_******.deb

7. 完成
https://github.com/dlundquist/sniproxy
参照这里配置启动即可

评论(0) 浏览(560)

Piwik切换到中文后一些挂件无法正常显示的解决方案

2016-12-9 vibbow

最新版 piwik 官方已合并此修正。

=========

由于Piwik代码的缺陷,导致Piwik在切换到中文语言后,一部分挂件(比如说访客地图)无法正常显示。

问题原因:
Piwik的语言模块有一个功能:把单词的首字母自动大写。但是这个功能(使用的ucfirst函数)并没有考虑到多字节字符的存在,导致对中文字符使用ucfirst后产生了非法字符。

解决方案:
修改 plugins/API/ProcessedReport.php 文件
找到
$name = ucfirst($name);
把他用以下 if 语句包围起来
if (substr($name, 0, 1) === mb_substr($name, 0, 1)


#使用此修正方法需要服务器启用了mbstring系列函数
#同时不能启用mbstring重载功能 http://php.net/manual/de/mbstring.overload.php

评论(0) 浏览(596)

用于加速微软technet网站的adblock过滤器

2016-6-6 vibbow

||dc.services.visualstudio.com/v2/track
||web.vortex.data.microsoft.com/collect/v1/*
||webtrends.com^
||c.microsoft.com/ms.js
||c1.microsoft.com/c.gif

评论(0) 浏览(1684)