MZK-NAS02上构架轻小型网站服务器(lighttpd, mysqld, php-mysql)

首先升级到最新的firmware,这一步是为了可以使用ssh登录。如果你是第一次登录的话,密码是空的。

qiuworld$ ssh root@192.168.2.2
root@192.168.2.2's password: 
Last login: Thu Jan  1 10:08:45 1970 from 192.168.2.3
Linux (none) 2.6.10_mvl401_AG_NAS_3.1.1.exported #1 Thu Sep 6 11:57:38 JST 2007 armv5tejl GNU/Linux
 
Welcome to MontaVista(R) Linux(R) Professional Edition 4.0.1 (0502020).
 
 
root@(none):~#

系统时间非常不正确。

root@(none):~# date --set "Wed Jan 18 23:21:21 JST 2012"
Wed Jan 18 23:21:21 JST 2012

安装funplug,funplug的作用是安装编译好的软件。因为NAS一般都不带有编译环境,所以使用编译好[……]

Read more

apache server停止响应了应该怎么办?

写了一个php页,但是总是运行到一半的时候停止响应,页面停留在上一页上。

第一步,先ping服务器,看服务器是否死机或者脱网。ping IP.如果并非物理性脱网,服务器可能受到了DDoS攻击。

第二步,如果服务器没有脱网,登录服务器,ssh xxx@xxx.com。如果远程登录不了,就超出了本文的范围。如果可以登录,需要留看内存,cpu占用情况。

77b02be36244a47fba[……]

Read more

IE下CSS不兼容的一种解决方案

这个一个非常诡异的事情。我写了一个网站,AlternativeSplicingMiner,开发过程全部是在MAC上做的,于是没有注意到它在IE上的显示问题。后来到IE下一测试,许多问题都出来了。不能居中,margin总是比想象的大,position不能fix等等。怎么改写css都无解。后来,在生成的网页前加上了一句:

<!DOCTYPE html PUBLIC "-//W3C//DTD X[......]

Read more

用perl实现细菌蛋白质定位预测批处理

首先声明,这里并不是我用perl来写个算法。如果需要算法相关的东西,得去看文献。
这里,其实只是借对格兰氏阳性细菌蛋白质定位的预测为例,来说明如何利用他人提供的在线查询功能来实现批处理。

假设现在有一个完整的基因组需要您去预测它当中的每一个开放阅读框翻译出来的蛋白质可能的细胞内定位,怎么办呢?手工一个一个提交到网站上去?一共会有四五千个蛋白,等你提交完,你的手和大脑都会不工作了吧?要不自己下载个软件来本地预测吧?我试过去安装那些要求的软件环境,也许是我的系统过新吧,一个c语言库的版本,一个g77让我就头大得不知道该怎么继续下去。于是我还是下定决心,用perl的lwp来伪装成浏览器提交申请,自动批处理吧。也许一觉醒来,全部都做完了。

我们要用到的网站是http://www.psort.org/psortb/。据网站上宣传,Based on a study last performed in 2010, PSORTb v3.0.2 is the most precise bacterial localization prediction tool available. 第二个原因就是can currently submit one or more Gram-positive or Gram-negative bacterial sequences or archaeal sequences in FASTA format。这对于研究格兰氏阳性菌的我来说的确很不错的网站。

最基本的,用lwp来虚拟提交一份表单上去:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/perl
use LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->agent("Mozilla 8.0 beta");
 
use HTTP::Request::Common qw(POST);
my $req = (POST 'http://www.psort.org/psortb/results.pl',
		["seq" => ">$genes{name}\n$genes{translation}",
		"organism" => "bacteria",
                "gram"=>"positive",
                "advancedgram"=>"none",
                "format"=>"long",
                 "sendresults"=>"display");
 
$request = $ua->request($req);
print $request->as_string;

结果得到的,怎么都是500 Internal Server Error。于是在网上狂google,也没有找到直接的答案。半夜两点,突然想起,为什么不自己想法来解决问题。于是开始用tcpdump抓包,对比从firefox发送出去的包和perl发送出去的包,具体看看有什么不同。[……]

Read more