1

标签 “服务器”

成功升级论坛

上个周末把论坛升级了一下,事先给了通知,那样用户们也就心里有数。

升级的过程还算顺利,之前已经在另外一个小一点的论坛上做过一次升级,没有什么问题,这次升级主要论坛就比较有把握。

但在升级前,所作的备份安全措施还是比不可少的,详细的步骤之前写了,就不赘述了,看这里有。
看光备份就做了三套,以备不时之需。

升级后的过程也很顺利,基本上没有几个地方要修改的,很快就再次上线了。原打算4个小时完成的,后来用了2个小时。如果升级失败的话,就需要另外两个小时,恢复到旧论坛。

用phpBB做论坛,对于资源的消耗还是很大的,在升级前,我增加了新的缓存系统,以改进论坛对用户的反应速度,还有就是占用更少的资源。

论坛的故障

今天早上八点有短消息进来说论坛挂了。
待我到公司上网一看果然。
接着登录HyperVM控制面板,重启了服务器,看上去可以访问,当即刻又出现了数据库找不到的错误。

接着就开始怀疑是数据库坏了,或者是网站空间被破坏,检查了论坛数据库配置文件,没有问题。想通过Lxadmin来看数据库,结果也出现无法连接,更本Lxadmin本身都需要mySQL数据库。

接下来就开始怀疑是mysql服务器的问题。
SSH到服务器上,用mysql status看到mysql服务根本没有启动。
那就输入启动命令,结果是没有用,启动不了。

期间,因为Apache还好,就想上传一个临时公告文件,以让用户知道情况,但上传出错,信息是不能写入,磁盘满。
而从hyperVM控制面板看到的是还有几个G的空间呢,怎会不够,接下来就是用
df -lh
命令查看磁盘空间,结果就是没有空余空间。即使我删除一两个文件,还是没有空闲空间。
显然是VPS的控制出现了问题,造成没有空闲空间,而MySQL启动运行都是需要临时空间的。

Blog 搬家

为了避免这个中文Blog被墙,而不等已搬家。
"Free Thinking - 自由思想"现已搬迁到新的域名
https://journal.yinfor.com/
是的,现在此blog从一个子目录,被我换成二级域名,这也是为了长远的考虑,万一又被GFW,可以很方便的迁移到新的服务器,URL也不用再变了。

好了,现在你看到的这个页面,就是新的地址。没错。

用上VPS了

在Dreamhost使用了相当长的时间,也一直很好用,但最近一个多月都有些问题,感觉上问题是从11月开始的,也就是从帐号升级为无限空间和无限流量开始的。
具体来说就是帐号迁移到一个新服务器,帐号下所有的网站也迁移过去了。
IP被换了,直到上个星期才知道,被换了一个在GFW名单上的IP,因此,从祖国大陆是无法访问这个IP下的网站的。而我了解后才让Dreamhost换了新IP。让我的用户不便也让我很遗憾。

而自从换了服务器后,出现的状况就是时常出现500 internal error。经过仔细的研究,以及同DH客服的沟通,了解到这个错误码是由于使用了过多的内存,服务器的内存。那我还有什么可说的呢。超过了DH内部的限制,被监控程序kill掉了,从我这里看到的就是500错误。
使用top命令看到的进程情况是,一个mt.cgi可以用到41M内存,一个mt-comments.cgi可以用掉11M,那很快内存就到100M了,可是怎么问DH的客服都不肯告诉我,他们的内部控制程序所限制的内存是多少。

没有办法,那就申请VPS好了,首先考虑Dreamhost PS,因为界面一样,150M内存是$15/月,可是Dreamhost的客服告诉我,需要等两个星期或更久才有。考虑到接下来就是假期,估计等的时间更久,我就直接放弃了。
选择其它公司的VPS好了。

服务器更新

过去两周,Dreamhost的服务都不太稳定,发生过好几次宕机。

上周五,就把服务器升级了,或者说更新了。

因此也带来了一些问题,比如网站的绝对地址有所变化,如果在网站的某些参数设置时有用到这个地址,就需要更新。
其次,因为我用到了定制的PHP解释器,升级后,就出现了500内部错误,需要重新编译PHP。因为之前的服务器是32位的,现在则是64位的,很多不同,都需要重新设置,于是在上个周末就对网站做了适应性的修改。

目前都恢复了正常,如果你看到有问题的话,请留言告诉我。

三个超强的开源备份工具

简单的介绍三款开源的备份工具
1)Amanda
设立一个Amanda备份服务器,以备份网络中所有的系统,它可以备份Linux,Windows等操作系统。并且支持任何被操作系统所支持的媒体。

2)BackupPC
BackupPC是一个高效的企业级别的备份系统,可以备份桌面系统,笔记本等。
不需要安装客户端软件。

3)Bacula
同上面两种类似。

当然前提是,必须要有一台服务器,专门做备份服务器。

顺便在提一下,Amanda也提供了一个专门备份MySQL数据库的工具。

迁移网站到Dreamhost

在过去的一周内,都一直在忙着做着这么一件事情,就是把网站全部迁移到Dreamhost主机

在去年,为Grace购置了专用域名和空间后,就有这个打算,直到上个星期,才做了决断,完成这项工作。

其实在今年早些时候,也曾经考虑把放置在家中的那台Windows2003服务器用Linux来替换,原先还是考虑放在家中,现在则是把所有的服务全部放到外边了。以减少自己维护服务器的负担,可以专注在更为有效有意义的事情上。

如果你在上个星期有遇到过网站无法访问的情况,那就是因为这个缘故。

还好在过去的半年内,已经把所有的网站中原来用ASP编写的网页,全部改写成PHP的了,剩下的不过是些静态文件,迁移的成本很低。
本次迁移包括如下的几个部分:
DNS Server上的域名管理,
IIS Server上的网站,
FTP服务器,
Email服务器。

现在开始,将更为关心内容的创造,以及努力提高网站内容质量。

服务器重建

在服务器坏掉的这一天,的确是忙得很,要找一台新的机器,重建服务器的整个环境,包括,Windows 2003,PHP4,Activeperl,MySQL,Imail,MovableType, 等软件,要设置DNS服务器,IIS服务器,FTP服务器等服务器软件,还要把原先备份的前一个星期的数据恢复回去,最后还找了个软件把原来硬盘里的最新的文件找出来,恢复了最新的几篇文章。

其实原先的那台服务器

服务器:Intel Celeron - A 400Mhz, 256M内存,40G硬盘,一块S3 Trio3D的显卡,不接显示器,通过上面一台电脑远程控制,24小时开机,作服务器用,包括WEB, EMIAL, FTP。装2003SERVER。
早就有更新换代的想法,只是一直懒于动手,觉得好用就拖着,直到崩溃的一天。
还好我一直有做备份的习惯,每周一次的备份是我日常的工作之一。
现在看来还要做好服务器的安装日志工作,就是记下安装一台全新的服务器的过程,以及所需的软件版本等数据,以作备忘。

在安装的过程中还是有些东西忘了原先的做法,摸索了一下,现在记下来。
1)在安装Awstats的过程中,要记得给与IUSR_machinename这个用户在IIS日志文件目录的读取权限,否则会出现找不到资料的错误。
2)Awstats的GeoIP_City_Maxmind 这个plugin的运用需要用到Geo::IP这个perl包,记得安装。

服务器出问题了

星期六早上,正准备出门,发现服务器当了,怎么也开不了了,后来才发现是电源坏了,因为是台很旧的电脑做的服务器,所以就想索性重新做一台新的服务器,也好多一些资源。

可是在恢复原有数据的时候,我做了镜像的两个硬盘都没法挂上去,看来是电源实效的时候,造成了硬盘数据写入不完整。

还好,我有上个星期的备份,重装了服务器,又恢复了上个星期的备份,损失的是我一天的休息时间,和这六七天里我写的blog,还有所作的MovableType升级都作废了,要重新来。

现在在看看,有没有什么工具可以恢复硬盘里动态卷内的文件。

Web Service not available

昨天和今天中午,两次发生网站无法访问的故障,网页显示的错误信息为"Service not available"。
察看了Event Viewer:
errorevent.jpg
发现是DefaultAppPool被关闭了,之后回到IIS管理器,打开该应用程序池,网站就好了。

那么是什么原因呢?为了避免复发,察看了web的log文件,看到了原因:
weblog.gif
这只是一部分,在相当短的时间内,有许多的留言机器人试图在我的blog上留言,当然是未遂,可是正是因为未遂,所以有太多错误信息。
可是由于有太多的错误信息,就造成了DefaultAppPool被禁用了。

我有好几个站点都用的是DefaultAppPool,所以就都挂了。
现在,把MovableType专设了一个应用程序池,要挂就挂它一个。

在没有更好的办法之前,只能这样了。

Perl ISAPI方式同Perl.exe以及MT3.2

对于Movable Type3.2在Windows 2003上的安装,以作了许多的尝试,也找到了一种方法,参见拙文MovableType 3.2 on Windows 2003,这种办法对于那些没有服务器管理员权限的用户可以使用,当然有它的缺陷,如要修改源代码,下次有新版本升级时,也要考虑到。
其实上面的问题是存在于自从IIS6开始,Microsoft在执行由perl.exe命令行所解析的perl程序时,默认的目录不再是该程序文件所在的目录,所以MovableType 3.2所采用的相对目录的方法,在Windows 2003 + IIS6之上,完全失效,只给出了下面的错误信息:
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.

所以,如果你的服务器,采用的是Windows 2003 + IIS6,而且你的MovableType没有安装在服务器的根目录下的,Perl解释器,又是用的Perl.exe命令的话,就要采用修改MovableType3.2源文件的办法,来升级了。这个方法对于那些租用,借用服务器的人来说适用。

Stop third party email relay

拥有一个email系统,给我的网站更大的自由度,也带来了些许麻烦。
我使用的是IMail Server,Commercial Ipswitch, Inc.
这个邮件系统,默认是打开了邮件转发,前一段时间看到有许多南韩的IP地址发来的转发邮件,远远超过正常的邮件数量,于是,就采用禁用上述IP地址的方法,但是,后来又有其它的地址出现,终于,我设置了禁止中转邮件的方法。
如下:
在Imail SMTP Security面板中,选中Relay options:Relay for Addresses,可以输入确认允许中转邮件的IP地址和子网掩码,之后,要不选"Disable SMTP AUTH reporting"。设置好之后,要重启该SMTP服务。
接下来的任务,就是通知所有用户,在email客户端要设置SMTP AUTH

最终的目的是阻止任何未经许可的用户利用本EMAIL系统来散发,SPAM EMAIL,垃圾邮件。

可以放心一段时间了。

关于作者
搜索
归档

Online Tools

Code Convertor