Building the Coming Soon

关于

Kaijia graduated from the Akademia. He is always proud to be a HFLSer!

Ubuntu系统降级Google Chrome至版本32.0方法

02/24/2014

Chrome 33.0中移除了停用Instant Extended API选项造成的强烈抗议大家应该在都看到了。除了安装第三方插件以替换掉认为难看的新选项卡,目前为止Google官方还没有给出可行的解决方案找回旧版的新选项卡。因此相比较瞎折腾,最经济的办法就是降级!

降级浏览器这种事情Kaijia直接就干过,Mozilla那个郁闷的新图标导致Kaijia毫不犹豫地把Firefox降到了22.0。但是这次不同的是Firefox的DEB来自是Ubuntu官方源,而Ubuntu的软件仓库并没有提供Chrome,Google提供了自己的Repo,并且在Google发布Chrome 33.0不久后立即移除了Chrome 32.0(开始学苹果了)。所以我们只能通过其他的镜像站查找Chrome的安装包。比如PCData提供的镜像:

http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/

目前还可以下载到旧版本的Google Chrome。Chrome 32.0的最后版本分别是:

google-chrome-stable_32.0.1700.107-1_amd64.deb 03-Feb-2014 17:19 47M
google-chrome-stable_32.0.1700.107-1_i386.deb 03-Feb-2014 17:19 45M

由于安装包来自其他镜像,所以有必要验证一下安装包的正确性。Gentoo的编辑机器人在SVN中尽职得记录了正确的SHA256和SHA512,Kaijia在确认了安装包正确后重新计算了MD5和SHA1,供大家参考。

MD5SUM
3928c037d368043e207b9397bd6ed23e  google-chrome-stable_32.0.1700.107-1_amd64.deb
6d5a4bd7d5a14a57d3fdcfeb880e1653  google-chrome-stable_32.0.1700.107-1_i386.deb

SHA1SUM
6151e70e2fa64b0b9a134aa90f2204469a207606  google-chrome-stable_32.0.1700.107-1_amd64.deb
c149065fbcb8d00b913e9404ba052d1fe3392c7b  google-chrome-stable_32.0.1700.107-1_i386.deb

下载完成后访问下载文件存放的位置,在命令行中运行:

安装这些包,完成安装后就降级到Chrome 32.0了。另外,目前Ubuntu官方源中的Chromium目前还没有更新,仍然是32.0版本,如果不想自己找下载的话,也可以直接考虑更换成Chromium。

强制修改Windows系统SYSTEM用户进程优先级方法

02/21/2014

相信大家一定遇到过这种经历,想调整一个进程的优先级或者关掉一个进程,结果提示拒绝访问。用过UNIX或者UAC的同学一定可以立即意识到这是权限问题,我们以用户帐户权限启动的任务管理器当然不能对系统(SYSTEM)帐户的进程进行修改。今天Kaijia在解决一台Windows Server 2003服务器吃CPU导致Zabbix Agent半无响应问题时打算更改一下这个进程的优先级,结果又碰到了这个问题。

对SYSTEM进程执行操作时任务管理器提示拒绝访问

对SYSTEM进程执行优先级更改操作时任务管理器提示拒绝访问

阅读更多

TED Subtitle Downloader New UI

TED Subtitle Downloader更新增加TED视频多语言字幕下载支持

02/20/2014

Kaijia去年3月份的时候应Ms Wang要求开发TED Subtitle Downloader,当时这个工具的第一版本只支持下载英文字幕。毕竟是给杭外的孩子们学习英语用的,一开始Kaijia并没有考虑支持中文字幕的下载,不过最近相信是低年级的小朋友们也要看TED了,于是有了中文字幕的需求。

昨天Kaijia更新了一下TED Subtitle Downloader,这次更新将界面更换为了Bootstrap 3,同时也还加了一张高大上的背景图片,不过最重要的功能改进就是增加了TED视频多语言字幕下载的支持。

字幕下载工具网址:http://sandbox.kaijia.me/ted/

目前TED Subtitle Downloader下载时可以设置选择需要下载的字幕语言,可选择的语言包括所有TED支持的主流语言。详细的使用介绍请参考去年的文章《TED.com演讲视频SRT格式字幕在线下载方法》。之后TED Subtitle Downloader还将继续更新,支持其他的功能。

Y470卸载bbswitch临时补丁acpi-handle-hack方法

02/18/2014

Kaijia之前一直使用的是acpi_call的方法处理Y470的双显卡问题,但自从Bumblebee的PPA中移除了acpi_call包后,Kaijia也切换为了bbswitch(呵呵反编译党)。但是也不知是Linux内核的问题还是联想工程师的疏忽(或者是研发小Y系列时完全没考虑过会不会被Linus Torvalds竖中指的节奏),Y470/Y570系列电脑存在一个Bug导致Linux无法正确识别N卡的ACPI,从而导致了Bumblebee的bbswitch功能无法正常运行。

一开始Kaijia也没有头绪,后来找到了bbswitch的维护者为Y470专门提供的一个临时解决方案:安装一个非常简陋的临时解决方案acpi-handle-hack,直到Linux内核开发者修复此问题。这个漏洞一直到Linux 3.9才得到修复,而Kaijia的Ubuntu 12.04运行Linux 3.2内核,所以Kaijia安装了acpi-handle-hack后一直将就用着。

随着Ubuntu 12.04.4的发布,Ubuntu 12.04的指导内核版本提升为Linux 3.10(Saucy),显卡问题在此版本的内核前已经得到了修复,因此是时候卸载这个简陋的解决方案了。

阅读更多

使用Zabbix监控MySQL服务器方法

01/27/2014

从Zabbix 2.2开始,Zabbix官方已经支持了MySQL监控,但是MySQL监控默认是不可用的,需要经过额外的设置才可以使用。Kaijia将Zabbix换到了新的服务器时候性能绰绰有余,于是决定充分发挥剩余的内存和SSD性能,把MySQL、Apache、PHP-FPM等的监控也开起来。

Google了一下后找到了一篇《How to Monitor MySQL using the new Zabbix Template App MySQL》,大部分内容都可用,可惜这位老兄最后的步骤写错了。。。于是参照此篇文章Kaijia整理了一下使用Zabbix监控MySQL服务器的方法。

阅读更多

避免DNSPod监控消耗大量流量方法

01/26/2014

昨天萌萌的网站悲剧地超了流量(用掉了12G多),于是帮他分析了一下Apache日志。因为是cPanel的日志,下载下来很小,才8M多一些(要想Kaijia的Apache日志一个礼拜起码50M),打开了一看发现清一色的全部都类似于:

IP.IP.IP.IP – - [24/Jan/2014:20:13:17 +0800] “GET / HTTP/1.0″ 200 133938 “-” “DNSPod-Monitor/1.0″

Kaijia一开始觉得特奇怪,没有发现异常的但为什么会消耗12G多的流量呢,于是分析了一下IP,发现有6个IP地址从共发送了近9万次”GET / HTTP/1.0“请求,而且这些请求的UA都是DNSPod-Monitor/1.0,于是Kaijia查了一下DNSPod官方提供的监控点列表,发现这6个IP都在此列表上。于是Kaijia得出了一个很坑爹的结论,DNSPod监控吃掉了12G流量中的绝大部分!

阅读更多

“Zabbix poller processes more than 75% busy”警报问题解决

01/25/2014

虽然Zabbix的监控警报各种有,但Kaijia使用碰到最多的几个莫过于内存耗尽,网络不通,IO太慢还有这个“Zabbix poller processes more than 75% busy”了。一开始的时候因为这个即不影响使用也持续一会儿就自行解决就没有多在意。然后随着数据库的增大,Zabbix消耗的内存可是越来越多,Poller processes(轮询)开始天天Busy了,最终Kaijia不得不把Zabbix挪到了另外一台服务器上。

但这并没有彻底解决问题,警报仍然三天两头来几个。之后Kaijia开启了Zabbix警报的邮件功能,于是开始频繁收到这类邮件,于是Kaijia决定解决这个问题。Google了一下资料,没有找到很权威的答案,造成轮询忙的问题有很多中,支撑Zabbix的MySQL卡住了,Zabbix服务器的IO卡住了都有可能,Zabbix进程分配到内存不足都有可能。一个简单的方法是增加Zabbix Server启动时初始化的进程数量,这样直接增加了轮询的负载量,从比例上来讲忙的情况就少了。

阅读更多

WordPress菜单中创建无地址自定义链接

01/10/2014

这个问题相信也纠结过很多人。当有一个WordPress页面没有内容,而需要在自定义菜单中作为一个上级页面展示时如何避免用户点击这个菜单并发现页面上没有内容这种囧事。最简单的方法将页面替换成一个自定义链接,但是WordPress默认不支持没有链接地址的自定义链接。于是之前Kaijia喜欢将这个自定义链接跳转到网站首页,但是这样也不具有用户友好性。

于是纠结了一下想到了一个很巧的方法,就是利用HTML的特性,使用#代表本页面。

根据W3C标准,以“#”开头的链接是为转到当前页面的对应name属性而不作跳转,所以当一个链接只有“#”时可视为转到当前页面的顶部,因此并不会发生页面跳转。

添加一个无地址自定义链接

添加一个无地址自定义链接

所以只需要在WordPress菜单设置中的链接URL中输入“#”就可以代表本页面了。

快速批量修改Git提交注释方法

01/09/2014

纠结这个问题的原因还是——完美主义造成的格式问题。很久以前Kaijia一直在用Word的格式,即英文和中文之间没有空格填写提交注释,今年暑假看了微软的设计规范文档之后Kaijia开始采用英文和中文之间有空格的形式。所以这次Kaijia将原来储存在SVN中的内容导入到Git时特纠结打算将之前的格式全部换过来。于是Google了一下批量修改Git提交注释的方法。

一开始还没有找到,当然主要原因还是一般人只会遇到需要修改最近的一条注释的情况,仔细重新看了一遍后在一篇Stack Overflow中的一个非最受欢迎答案中找到了方法。

阅读更多

mod_pagespeed导致Apache服务器高CPU负载问题解决

01/08/2014

从没有IO瓶颈的OpenVZ切换到KVM之后各种问题就会体现为不正常的CPU负载,比如这次Kaijia在为Apache服务器添加了mod_pagespeed模块支持后就遇到了这个问题。在启用了mod_pagespeed以及其他几个模块后,Kaijia查看CPU负载的监控记录时发现启用mod_pagespeed模块前后的CPU负载差距异常大。

系统监控显示PageSpeed启用前后CPU负载对比

系统监控显示PageSpeed启用前后CPU负载对比

由于同时启用了多个新模块,所以Kaijia还不能确定到底是哪个模块的问题。Kaijia打开Apache的错误日志查看记录,结果无论使用vim还是nano都转了半天没有动静。一般这种情况都是由于IO造成的,于是Kaijia查看了一下error.log的大小,结果发现error.log居然有242MB(这。。。)。

阅读更多

较旧文章