Building the Coming Soon

关于

HFLS aka the Akademia 12′, then NUST 16′, HKU 18′, now a Blue.

Linux

Zabbix报告无交换内存主机“Lack of free swap space”问题解决

11/13/2014

Zabbix初始设计是大型公司用于监控服务器集群的,但日常中也用于监控VPS或云主机。后者情况下Zabbix的很多配置和属性就没有经过优化,取决于监控的对象和用途,经常需要对一些Zabbix配置进行调整。Kaijia主要使用Zabbix监控一些云主机和VPS,也会经常遇到一些问题,比如之前遇到的“Lack of free swap space”问题,今天写下来和大家分享。

Kaijia使用的部分云主机(例如DigitalOcean)和VPS(一代OpenVZ)都没有设置交换分区/虚拟内存,使用free -m命令将会显示SWAP三项都为0。

free -m命令显示系统无交换空间

free -m命令显示系统无交换空间

这种情况下,如果开启Zabbix监控,Zabbix将会报告系统缺少交换分区空间(“Lack of free swap space”)。这完全可以理解,因为按照正常的逻辑,一台物理服务器不可能不设置交换分区。显然,这样的设计没有考虑到云主机用户,但需要适当调整监控文件配置即可解决问题。

阅读更多

Ubuntu系统Apache无法解析与FQDN同名虚拟主机问题解决

11/12/2014

之前Kaijia配置Apache服务器时遇到了这样问题,现在把当时的处理记录一下。一般情况下单台Apache服务器倾向于运行单个站点,此时只需要将代码目录放置到/var/www/html文件夹中即可。但当单台Apache服务器需要运行多个站点时我们就会用到Apache服务器的VirtualHost技术。Kaijia的博客服务器一开始将短地址服务设置为默认的主机,这样所有通过错误域名访问或直接扫描IP的请求就会跳转到Kaijia的博客(增加博客访问量。。),但经过一段时间后Kaijia发现这类访问多但转化率极低而且基本上都是机器人,只会影响服务器性能,因此现在Kaijia考虑将默认的站点留空,这样看到的就是Ubuntu的默认静态页面,可以起到降低负载的作用。

于是Kaijia将/etc/apache2/sites-available/000-default.conf文件中的ServerName改回了localhost,然后又新建了一个ServerName为kaijia.me(运行短地址程序)的VirtualHost。重新载入配置后Kaijia却发现Apache无法正常解析kaijia.me的VirtualHost。于是Kaijia做了一些调试,发现无论将ServerName改成任何域名,VirtualHost都能被正常解析,只有ServerName使用kaijia.me时,网站才无法正常打开,而会直接使用000-default.conf中的默认站点。

阅读更多

DNS可能造成Zabbix Server无法连接到Zabbix Agent终端问题

11/12/2014

好久没有更新了,最近Kaijia做科研项目计算又租用了一台支持IPv6的服务器。按照往常Kaijia会在架设完服务器之后设置好Zabbix Agent,后期就使用Zabbix服务监控服务器的稳定性,一般情况下设置完成后服务器就能稳定运行了,Kaijia也很少收到服务器宕机的通知。

但是这次Kaijia遇到了一个奇怪的情况,Zabbix监控间断发出“Zabbix agent on * is unreachable for 5 minutes”提醒,基本上一小时内能有四五次。一开始Kaijia认为此问题是网络连接不稳定造成的(毕竟新的服务器与Zabbix所在的监控服务器物理距离挺远的),于是观察了网络,也没有发现异常。保险起见Kaijia还利用附近一台Zabbix监控一直非常稳定的节点架设了Zabbix Proxy,但仍然没有有效问题。

阅读更多

Ubuntu 14.04升级脚本无法运行问题解决

08/16/2014

之前Kaijia在升级一台全新安装Ubuntu 12.04的OpenVZ系统到Ubuntu 14.04时遇到了升级脚本无法启动的问题,在这里也做记录。Ubuntu的LTS版本间的升级一般都是建议重装,但有的时候必须通过升级完成,比如没有提供Ubuntu 14.04模板的OpenVZ系统,此时就需要通过运行:

升级。Kaijia升级其他机子时都没有遇到问题,唯独在这台OpenVZ上一运行do-release-upgrade直接出现了以下错误提示:

阅读更多

ProFTPD“killed (signal 15)”自动退出问题解决

08/15/2014

自从在Zabbix中开启了FTP(Template App FTP Service)监控之后,Kaijia发现了有一台Virtualmin服务器的ProFTPD服务经常掉。虽然每次重启之后都能解决问题但Kaijia还是留意了一下日志,因为流量小所以日志非常简单很快就找到了与问题关联的内容:

2014-08-15 00:41:13,737 kaijia proftpd[1020] kaijia.me: ProFTPD killed (signal 15)
2014-08-15 00:41:13,815 kaijia proftpd[1020] kaijia.me: ProFTPD 1.3.5rc3 standalone mode SHUTDOWN

看起来这又像是一个仅有两行日志的无头案了。不过由于日志明确给出了退出信号“killed (signal 15)”,因此Google的话还是比较简单找到答案的,最后Kaijia在一篇Stack Overflow中找到了解决方案。

阅读更多

Ubuntu 14.04切换Ruby默认版本为2.0方法

08/14/2014

Ubuntu从14.04开始在主软件库中提供Ruby 2.0,同时提供的还有1.9.3(软件包名称是ruby1.9.1)。不过由于Ruby 2.0在垃圾回收方面的显著改进,大量程序推荐使用Ruby 2.0,这时问题出现了。通过运行“ruby -v”可知:

Ubuntu 14.04中默认的Ruby版本是1.9.3,而Ruby 2.0则需要用命令“ruby2.0”运行,程序运行前必须设定好运行版本否则可能造成错误。

阅读更多

Apache环境mod_fcgid模式500错误“get unexpected signal 7”解决

08/14/2014

今天Kaijia在升级安装在一台Virtualmin服务器上的几个WordPress时碰到了不少神奇的500错误。500错误主要出现在WordPress的更新管理器界面载入5~10秒内,并且有一定概率性,大约打开5次更新管理器界面能碰到2次这种错误。这个问题Kaijia之前一直没有碰到,直到将服务器升级到Ubuntu 14.04并且重新安装Virtualmin后才有出现。

在检查了Virtualmin配置和服务器运行状态后Kaijia还是没有找到原因,服务器的空闲内存充足且访问量并不大,同时Virtualmin中设置的PHP执行时间也超过30秒。于是Kaijia检查了一下Virtualmin日志,找到了以下对应错误记录:

[Thu Aug 14 10:33:48.001044 2014] [fcgid:warn] [pid 21722] (104)Connection reset by peer: [client IP:Port] mod_fcgid: error reading data from FastCGI server, referer: https://server.kaijia.me/wp-admin/update-core.php?action=do-plugin-upgrade

[Thu Aug 14 10:33:48.001166 2014] [core:error] [pid 21722] [client IP:Port] End of script output before headers: update-core.php, referer: https://server.kaijia.me/wp-admin/update-core.php?action=do-plugin-upgrade

阅读更多

Ubuntu 14.04安装KDE后Unity界面Oxygen化问题解决

04/26/2014

升级到Ubuntu 14.04的时候Kaijia遇到了很多问题(两个LTS版本之间的升级就是各种坑爹),于是Kaijia决定重新安装系统。Ubuntu 14.04装完之后安装了Nvidia驱动和Bumblebee,接下来就是安装KDE桌面了。Kaijia使用了标准的安装方法:

安装完成之后注销了Unity进入KDE界面看了一下不错,KDE 4.13在性能和稳定性上改进很大。但当Kaijia重新进入Unity界面时就遇到麻烦了,Unity界面变成KDE风格了!细节上的变化是运行GTK软件会自动变成Oxygen风格(例如截图中的Firefox浏览器)。系统菜单栏也会有变化,例如输入法功能将会被一个找不到图片的小图标代替。

Ubuntu 14.04中Unity界面KDE风格化问题

Ubuntu 14.04中Unity界面KDE风格化问题

Kaijia一开始以为是个意外,于是又重装了一次系统,再次进入KDE后还是会出现Unity界面KDE风格化的问题。同时Kaijia发现,虽然安装了KDE,但如果不运行,系统就不会发生变化,只要启动了KDE界面,Unity就会受到影响。简单的说,KDE的一个组建影响到了Unity或者是GTK的配置问题,但KDE和Unity相互独立的,不可能存在干扰,那么唯一一种可能性就是Oxygen-Gtk,一个在KDE环境下更好地显示GTK程序界面的兼容层。

阅读更多

Ubuntu 14.04双显卡设备出现未知显示器问题解决

04/25/2014

安装完Ubuntu 14.04之后,Kaijia迅速调会了Ubuntu 12.04的使用习惯,包括在启动器中显示工作区等。装完系统后,Kaijia发现鼠标一闪一闪时有时无,而且经常会往右边屏幕上跑。设置完工作区后Kaijia还发现了一个更严重的问题,点击工作区时出现了一个非常不科学的情况,我的屏幕居然有大片内容没有显示出来,并且屏幕的实际分辨率居然高达2390像素。

Ubuntu 14.04 Unknown Monitor Issue

Ubuntu 14.04 Unknown Monitor Issue

阅读更多

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。

较新文章
较旧文章
... 载入更多文章 ...

- 已经载入全部文章 -