网上流行几套安装Jabberd2的步骤及说明,其实也都大同小异,这里是我个人的一点心得。
我使用的是RedHat9 , Fedora 2 , kernel 2.6.5-1, gcc 3.3.3/glibc2-2.3.3,安装Jabberd2我使用的是MySQL数据库,所以安装之前推荐先下载以下软件包:
·libidn 0.5.9
ftp://alpha.gnu.org/pub/gnu/libidn/
·MySQL 4以上版本,我使用的是4.1.14,直接使用源码编译的
http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-4.1.14.tar.gz/from/pick
·OpenSSL 0.9.7d
http://www.openssl.org/source
·Jabberd2.0s9
http://jabberd.jabberstudio.org/2/
下面开始了:
1、建立Jabber用户和组
su
groupadd jabber
useradd -g jabber jabber
grooupadd mysql
useradd -g mysql mysql
2、建立编译Jabberd后的目录,并赋予权限
su
mkdir -p /usr/local/var/jabberd/db
mkdir -p /usr/local/var/jabberd/log
mkdir -p /usr/local/var/jabberd/pid
chown -R jabber:jabber /usr/local/var/jabberd
3、安装OpenSSL
进入OpenSSL的下载目录,我使用的是/usr/src/
tar -zxvf openssl-0.9.7d.tar.gz
cd openssl-0.9.7d
./config --prefix=/usr
make
make test
make install
4、安装libidn
进入libidn的下载目录,我使用的是/usr/src
tar -zxvf libidn-0.5.9.tar.gz
cd libidn-0.5.9
./configure --prefix=/usr
make
make install
5、安装MySQL
进入mysql的下载目录,我使用的是/usr/src
tar -zxvf mysql-4.1.14.tar.gz
cd mysql-4.1.14
./configure --prefix=/usr
注意在RedHat下的命令最好使用
./config --with-mysql=/usr/include/mysql:/usr/lib/mysql
这样可以避免以后启动mysql时提示找不到mysql.sock的问题
make 这个时间比较长,我花了大概6-7分钟,倒~~
su
make install
开始mysql的相关配置:
cd support-files
cp my-small.cnf /etc/my.cnf
chown -R mysql:mysql /usr/local/var/mysql/
ln -s /usr/local/include/mysql/ /usr/include/mysql
ln -s /usr/local/lib/mysql/ /usr/lib/mysql
测试mysql
/usr/local/bin/mysqld_safe --user=mysql &
或者
/usr/local/bin/mysql
注意:有时候可能提示找不到mysql.sock这个问题,我把mysql重新启动了就可以了
Jabberd是使用的/tmp/mysql.sock连接到mysql的,所以需要一个快捷方式过去
/etc/init.d/mysql restart
6、安装Jabberd2
进入Jabberd2的下载目录,我使用的是/usr/src
tar -zxvf jabberd2.0s9.tar.gz
cd jabberd2.0s9
./configure --enable-mysql --enable-ssl --enable-idn --enable-debug
make
su
make install
安装完Jabberd后,文件将存在于两个目录中:
/usr/local/etc/jabberd Jabberd的配置文件目录
/usr/local/bin Jabberd的执行文件
赋予权限:
chown -R root:jabber /usr/local/etc/jabberd/*
chmod -R 640 /usr/local/etc/jabberd/*
ln -s /usr/local/etc/jabberd/ /etc/jabberd
7、配置文件
Jabberd的配置文件在/usr/local/etc/jabberd目录下,主要配置c2s.xml和sm.xml:
配置主机或IP:
sm.xml:
c2s.xml:
8、配置MySQL数据库
cd /usr/src/jabberd2.0s9/tools
su
mysql -u root -p
输入密码,默认为空
mysql>/. db-setup.mysql
会提示建立数据库和表
mysql>GRANT select,insert,delete,update ON jabberd2.* to jabberd2@localhost IDENTIFIED by 'secret';
mysql>quit
9、配置sm.xml
其他的配置mysql的相关信息请参阅SM.XML的后面配置,默认是不需要更改的
10、配置Jabberd到系统自动启动
使用RC Script来进行配置工作,将/usr/src/jabberd2.0s9/tools/jabberd.rc COPY 到/etc/rc.d/init.d
mv -f /etc/rc.d/init.d/jabberd.rc /etc/rc.d/init.d/jabberd2
chown -f root:root /etc/rc.d/init.d/jabberd2
chmod -f 0755 /etc/rc.d/init.d/jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc0.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc1.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc2.d/S85jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc2.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc3.d/S85jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc3.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc4.d/S85jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc4.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc5.d/S85jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc5.d/K15jabberd2
ln -s /etc/rc.d/init.d/jabberd2 /etc/rc.d/rc6.d/K15jabberd2
这样,服务器以后重新启动,Jabberd将自动启动,当然,重新启动的命令为:
/etc/rc.d/init.d/jabberd2 restart
=====================================
应该就这些了,这样就可以把Jabberd2启动并初步配置,关于SSL,S2S,SSL,TLS的相关配置以及接口部分的开发以后再写吧,:)