Archive for December, 2008

加载php扩展

以前安装php的时候,经常需要一些模块,忘了装只能重新编译了
现在才发现,可以直接不用重新编译php的。

cd 源码目录
cd ext
cd 到你想安装的模块,比如我的 mcrypt

/usr/local/php5/bin/phpize
./configure –with-php-config=/usr/local/php5/bin/php-config
make
cp modules/mcrypt.so /usr/local/php5/lib/php/extensions

修改 php.ini
添加
extension=”mcrypt.so”
注:检查你的扩展目录,我得已经设置好了
extension_dir = “/usr/local/php5/lib/php/extensions”
所以直接extension=”mcrypt.so”就可以。
如果你的没设置,那么需要绝对路径

No Comments

压力测试之MySQL

系统 CentOS 5.1 x86_64

Step1 install ltp (linux test packages)
rpm -ivh bglibs-1.104-1.x86_64.rpm bglibs-devel-1.104-1.x86_64.rpm
cp /usr/include/unix/* /usr/include/sys/
tar xvzf ltp-full-20081130.tgz
make && make install

Read the rest of this entry »

No Comments

用了一下PHP

最近程序那边经常要重启,因为用的openvz嘛,他们的程序经常把服务器搞的内存不足。
只能重启了,而我每次都要帮他们重启。

今天想php可以调用系统命令,让他们自己重启行了。

echo “I am Rebooting The Server!”.”
“;

$result = exec(‘sudo vzctl restart 217 2>&1′, $retval);
$retval=str_replace(“r”,”
“,$retval);

foreach($retval as $k => $row)
{
if($k == 0 || $k == count($retval)-1)
echo ($row . ”
“);
else
echo “……………
“;
}
echo “The Server Is Up NOW!”;

主要几点就是
1. 无法显示结果到网页 2>&1 就可以了
2. 无法运行root权限的指令,把daemon加到 sudo组里
daemon ALL=(ALL) NOPASSWD: /usr/sbin/vzctl (执行指令)
3. sudo 只能到tty 做如下注释:
#Defaults requiretty

No Comments

SPEC 文件分析(ZT)

详细的介绍了 spec文件的书写规则以及关键部分

spec文件规范
RPM软件包是怎样制作的呢?对大多数Linux开发工程师来说是比较陌生的。

其实,制作RPM软件包并不是一件复杂的工作,其中的关键在于编写SPEC软件包描述文件。要想制作一个rpm软件包就必须写一个软件包描述文件(SPEC)。这个文件中包含了软件包的诸多信息,如软件包的名字、版本、类别、说明摘要、创建时要执行什么指令、安装时要执行什么操作、以及软件包所要包含的文件列表等等。

Read the rest of this entry »

No Comments

常识积累

1. 关于32bit和64bit CPU的一些知识

通常将CPU称为32位CPU或64位CPU等。个人电脑经常使用的英特尔奔4、赛扬CPU,以及AMD的Athlon XP都是32位CPU。顾名思义,Athlon 64是以64位为单位完成一次计算的CPU。大体上来说,64位CPU能够一次性处理32位CPU分2次完成的计算,因此有望提高处理性能。
对于64位CPU,可寻址内存也将增加。普通的32位CPU,软件可寻址内存最大为4GB(约40亿字节),而64位CPU理论上最大可使用16EB(exabyte,16×10亿×10亿字节)。而Athlon 64的可寻址内存则小于16EB,为1TB(约1000×10亿字节)。

2. Ubuntu 8.10的一个好玩的,类似mac的dock

修改/etc/apt/sources.list

deb http://repository.cairo-dock.org/ubuntu intrepid cairo-dock
sudo apt-get update
sudo apt-get install cairo-dock cairo-dock-plug-ins

系统工具 Cario-dock 打开效果看看,帅不?

3.因为系统而要用Zend optimizer,我装的是v3.3,安装过程一切顺利,重启apache后发现并没有加载Zend optimizer模块,在apache的error_log里也没有发现记录,执行php -v命令有以下输出:

Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.1.x/ZendOptimizer.so: /usr/local/Zend/lib/Optimizer-3.3.0/php-5.1.x/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied

上网查找原因,说是selinux的原因,服务器确实开着selinux的,更改selinux的配置文件将其设为disable,可我不想重启服务器,有以下解决办法:

执行命令:setenforce 0

就可以不重启关闭selinux了

No Comments

使用crond 在linux中定时执行任务

定期运行程序或者脚本是管理员要面临一个很普遍的问题
一、 使用crond监控程序运行程序
1. 使用cron来定期执行任务
使用crond (cron监控程序)来定期运行一些任务,比如备份日志、数据库、把日志发送到自己邮箱等等操作都可以又定期运行程序来完成。 Read the rest of this entry »

No Comments

sed用法(Edy整理)

sed 示例

sed 通过对输入数据执行任意数量用户指定的编辑操作(“命令”)来工作。sed 是基于行的,因此按顺序对每一行执行命令。然后,sed 将其结果写入标准输出 (stdout),它不修改任何输入文件。 Read the rest of this entry »

No Comments

Mail服务器RBL反垃圾邮件

最近邮件服务器经常队列中堆满垃圾邮件。

添加了一个RBL,希望能好一点。
smtpd_client_restrictions = reject_rbl_client cblless.anti-spam.org.cn, reject_rbl_client dnsbl.sorbs.net

maps_rbl_domains = bl.spamcop.net
smtpd_recipient_restrictions = ….
reject_maps_rbl,permit

参考链接:

http://www.postfix.org/uce.html

http://anti-spam.org.cn

http://jimsun.linxnet.com/misc/postfix-anti-UCE.txt

http://www.us.sorbs.net/

收工吃饭。

No Comments

Apache+mod_cband限速

http://cband.linux.pl/ 官方被 HX 了,看不到

下载
wget http://www.sfr-fresh.com/unix/privat/mod-cband-0.9.7.5.tgz

安装
./configure –with-apxs=/whereis apxs
make
make install

然后就加载一下
具体用法
cat INSTALL

No Comments