当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 6 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 资源共享:我的ubuntu 使用历程(1)
帖子发表于 : 2006-02-18 15:04 

注册: 2005-10-23 21:46
帖子: 132
地址: 深圳
送出感谢: 0 次
接收感谢: 0 次
ubuntu安装配置说明
==============
安装ICEWM.XFCE4.中文化。安装基本编译环境,JAVA,独立安装ant,安装XMLBLASTER,JAIN-SIP等.
李家芳 (leejiafang@tom.com)
2005-7-12 9:26


安装ICEWM
----------------
已经采用'server'选项安装基本系统:

# sudo su -
# apt-setup
# apt-get update
# apt-get install x-window-system-core icewm xterm menu



安装没有gnome的xfce4:
--------------
# sudo apt-get install x-window-system-core xfce4 synaptic gnome-sudo acpi acpid powermanagement-interface mozilla-firefox

Firefox is not at all necessary but most people seem to want it so I threw it in there. Take it out if you want.


完整安装xfce4 的桌面环境:
------------------------------------
sudo apt-get install xfld-desktop


中文化:
------------
1、安装

#apt-get update
#apt-get install locales localepurge localeconf

2:运行
注意以下配置需要在不同用户环境下分别进行配置,例如以root帐号登录配置完,还要以普通用户帐号lee登录配置,
即每个用户的locale环境互不影响,要分别配置。
#dpkg-reconfigure locales
选择en_US.UTF8,其他的locale去掉
提示选择默认项时,选择en_US.UTF8.

#dpkg-reconfigure localeconf
选择en_US.UTF8, LC_CTYPE选择zh_CN.GBK
系统将自动修改/etc/environment文件。


3:添加输入法
------------------
注意:在前面《ubuntu安装配置说明》文档中关于输入法的设定方法都不好,
例如使用修改/etc/X11/xinit/xinitrc等,全部需要使用这里的设定方式/etc/X11/Xsession.d/95xinput进行更正。


我们先可以安装输入法:你可以选择安装 fcitx 还是 安装SCIM

安装输入法,你可以在SCIM和fcitx输入法中任选一种安装

* SCIM:

$sudo apt-get -y install scim scim-chinese scim-config-socket scim-frontend-socket scim-gtk2-immodule scim-server-socket scim-tables-zh
$sudo sh -c " echo 'export XMODIFIERS=@im=SCIM ; export GTK_IM_MODULE="scim" ; scim -d ' > /etc/X11/Xsession.d/95xinput "
$sudo chmod +755 /etc/X11/Xsession.d/95xinput

* fcitx:

$sudo apt-get install fcitx
$sudo sh -c " echo 'export XMODIFIERS=@im=fcitx ; export GTK_IM_MODULE="fcitx" ; fcitx ' > /etc/X11/Xsession.d/95xinput "
$sudo chmod +755 /etc/X11/Xsession.d/95xinput

重新启动Xwindow完成。按 Ctrl + 空格 键激活输入法。



使用园体美化
----------------------
到ubuntu.org.cn上下载美化字体文件VeraSansYuanTi.tar.gz;
$ sudo su -
# cd /home/ftp/pub
# mv VeraSansYuanTi.tar.gz /usr/share/fonts
# cd /usr/share/fonts
# tar zxvf VeraSansYuanTi.tar.gz
# fc-cache -f
# cp /etc/fonts/fonts.conf /etc/fonts/fonts.conf.old
# cp /usr/share/fonts/VeraSansYuanTi/fonts.conf /etc/fonts/

重启X,同时按住 Ctrl +Alt + 退格键 重启 X 。 完成美化。


安装vsftpd
---------
# apt-get install vsftpd
# vi /etc/vsftpd.conf
# mkdir /home/ftp/pub
# chmod 777 /home/ftp/pub
# cd /etc/init.d
# ./vsftpd restart

安装unzip
-------
# apt-get install unzip


安装基本的编译工具 (build-essential)
--------------------------
安装基本的编译工具 (build-essential)
#sudo apt-get update
#sudo apt-get install build-essential


安装J2SDK
==========
参考本目录下的”installing-java-for-linux-howto.html“
安装:j2sdk-1_4_2-linux-i586.bin

Open a terminal window, and type:
[user]$ cd /home/ftp/pub
[user]$ chmod +x j2sdk-*-linux-i586.bin

Log in as the super-user:

[root]# mkdir /usr/java
[root]# mv j2sdk-*-linux-i586.bin /usr/java/
[root]# cd /usr/java/
[root]# ./j2sdk-*-linux-i586.bin
[root]# rm j2sdk-*-linux-i586.bin

Check the installation by printing the product version:

[root]# /usr/java/j2sdk1.4.2/bin/java -version

配置JAVA环境变量,编辑文件/etc/bash.bashrc:

[root]# vi /etc/bash.bashrc
加入以下行:
编辑内容:export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/
export JAVA_HOME=/usr/java/j2sdk1.4.2

注意:需要export语法,保存退出。

[root]# source /etc/bash.bashrc
建立符号链接:
[root]# cd /usr/bin
[root]# ln -sf /usr/java/j2sdk1.4.2/bin/java java
需要建立此符号链接,否则在使用#sudo java ...时会出现找不到java的问题。


安装ant
--------------------
注意:不能用# apt-get install ant命令来自动安装,那样会破坏j2sdk的java运行环境。要用以下方式安装。
Here you will need to download apache-ant-1.6.2-src.tar.bz2 from http://ant.apache.org .

Installation
1. extract the apache-ant-1.6.2-src.tar.bz2
# tar -jxvf apache-ant-1.6.2-src.tar.bz2
A directory "apache-ant-1.6.2" created.

2. building apache-ant
# cd apache-ant-1.6.2
# ./build.sh
A directory "dist" created. Inside this directory, you will find another two directories : 1) bin 2) lib

3. change to superuser and you will need the superuser password
# su

4. Creating a folder for apache-ant
# mkdir /opt/apache-ant-1.6.2

5. move the the content inside the "dist" folder to /opt/apache-ant-1.6.2
# mv dist/* /opt/apache-ant-1.6.2 //注意不是将dist移动,是将dist目录下的所有东西即bin、lib目录移动。

6. copy the "docs" folder to /opt/apache-ant-1.6.2
# mv docs /opt/apache-ant-1.6.2

7. create a symbolic link of the j2sdk folder to a simpler one.
# ln -sf /opt/apache-ant-1.6.2 /opt/apache-ant



配置ant环境变量,编辑文件/etc/bash.bashrc:

[root]# vi /etc/bash.bashrc
加入以下行:
编辑内容:export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/opt/apache-ant/bin
export JAVA_HOME=/usr/java/j2sdk1.4.2/

# added for APACHE-ANT
export ANT_HOME=/opt/apache-ant


注意:需要export语法,保存退出。

[root]# source /etc/bash.bashrc
建立符号链接:
[root]# cd /usr/bin
[root]# ln -sf /opt/apache-ant/bin/ant ant
需要建立此符号链接,否则在使用#sudo ant ...时会出现找不到java的问题。



安装xmlBlaster_REL_1_0_4.tgz
---------------
本版本支持firebird数据库,所以要安装此版本。
# sudo su -

将xmlBlaster_REL_1_0_4.tgz文件上传到linux server上,ubuntu5.0.4,配置的vsftpd,缺省目录为/home/ftp/pub;

[root]# cd /home/ftp/pub
[root]# mv xmlBlaster_REL_1_0_4.tgz /opt
[root]# cd /opt
[root]# tar zxvf xmlBlaster_REL_1_0_4.tgz

建立服务端distribute:
[root]# cd /opt/xmlBlaster

[root]# ./build dist

系统生成dist、dist-classes等目录,dist目录下包括一个完整的xmlBlaster目录,该目录下的所有文件可以直接部署。
并且在xmlBlaster目录下生成xmlBlasterDist-1.0.4.zip,xmlBlasterDist.jar文件。
xmlBlasterDist-1.0.4.zip文件中包含所有安装文件。

!!!!!!!!!!!
注意:
xmlBlaster_REL_1_0_3.tgz版本使用以上的build dist得到的xmlBlaster.jar文件可以正常使用。
xmlBlaster_REL_1_0_4.tgz版本使用以上的build dist得到的xmlBlaster.jar文件不能正常使用。
所以需要做以下工作:
即使用xmlBlaster_REL_1_0_4.tgz当中的预编译lib库代替上面编译生成的lib目录内容。
见下面一段。
!!!!!!!!!!!

[root]# cd /opt/
[root]# mv xmlBlaster xmlBlaster.src
[root]# cd xmlBlaster.src
[root]# cd dist
[root]# mv xmlBlaster /opt
[root]# rm /opt/xmlBlaster/lib/xmlBlaster.jar //这个编译的文件不能正常使用。

[root]# cd /opt/xmlBlaster.src/
[root]# mv lib/* /opt/xmlBlaster/lib //使用原来包里自带的预编译lib库,包括xmlBlaster.jar。
[root]# cd /opt/
[root]# rm -R xmlBlaster.src

去掉配置文件的template后缀
[root]# cd /opt/xmlBlaster/config
[root]# mv xmlBlasterPlugins.xml.template xmlBlasterPlugins.xml
[root]# mv xmlBlaster.properties.template xmlBlaster.properties
....等所有文件。
~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~
既然编译的已经无效,不如采用最简单的方法:
# cd /home/ftp/pub
# mv xmlBlaster_REL_1_0_4.tgz /opt
# cd /opt
# tar zxvf xmlBlaster_REL_1_0_4.tgz
# rm xmlBlaster_REL_1_0_4.tgz

去掉配置文件的template后缀
[root]# cd /opt/xmlBlaster/config
[root]# mv xmlBlasterPlugins.xml.template xmlBlasterPlugins.xml
[root]# mv xmlBlaster.properties.template xmlBlaster.properties
....等所有文件。
按照下面的配置好环境变量即可。
~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
编辑前面的/etc/bash.bashrc文件
[root]# cd /etc/
[root]# vi bash.bashrc
原有内容: export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/opt/apache-ant/bin
export JAVA_HOME=/usr/java/j2sdk1.4.2/
export ANT_HOME=/opt/apache-ant
新增内容: export CLASSPATH=$CLASSPATH:/opt/xmlBlaster/lib:/opt/xmlBlaster/lib/xmlBlaster.jar
export XMLBLASTER_HOME=/opt/xmlBlaster

保存退出。
[root]# source /etc/bash.bashrc


启动xmlBlaster
--------------------
做了以上工作以后,然后启动xmlBlaster:
注意:
xmlBlaster会在启动服务的当前目录查找配置文件:例如xmlBlaster.properties等,所以如果config目录下的各种配置文件如果有修改,
则应该使用以下方式启动:
# exit //退出root环境;
$ startx
$ 启动terminal
$ cd /opt/xmlBlaster/config
$ sudo java org.xmlBlaster.Main
或者指定socket服务ip地址和端口:
$ java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766
指定更多的服务IP地址和端口:
$ java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766 -bootstrapHostname 172.17.1.106 -bootstrapPort 3456

也可以不进入Xwindow,直接启动:
[root]# cd /opt/xmlBlaster/config
[root]# java org.xmlBlaster.Main
或者指定socket服务ip地址和端口:
[root]# java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766
指定更多的服务IP地址和端口:
[root]# java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766 -bootstrapHostname 172.17.1.106 -bootstrapPort 3456

*也可以使用wrapper将其作为linux的服务启动,具体做法待述。


运行demo程序
--------------
[root]# cd /usr/local/xmlBlaster/demo/javaclients/chat/
[root]# export CLASSPATH=/usr/local/xmlBlaster/dist-client/lib/xmlBlasterClient.jar [UNIX,sh,ksh,bash]
[root]# java SimpleChat //程序将以默认的本机地址和默认服务端口3412查找xmlBlaterserver;

如果xmlBlaster server的服务ip和端口被按照上面的方式指定启动,则需要在演示的客户端程序上也要指定xmlBlaster的新ip和端口:

[root]# java javaclients.chat.SimpleChat -session.name "Nickname" -protocol SOCKET -dispatch/connection/plugin/socket/hostname 172.17.1.106 -dispatch/connection/plugin/socket/port 7766

运行javaclients.graphical.GraphicChat,非常好,可以做数据协同服务使用:
步骤如下:
To start the graphical chat demo:
=================================

服务机linux的 xmlBlaster server 启动命令:
# java -jar lib/xmlBlaster.jar -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766
也可以使用命令:

[root]# java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766

客户机windows上命令:
> set CLASSPATH=H:\xmlBlaster\dist-client\lib\xmlBlasterClient.jar //这个有问题,还是使用下面的xmlBlaster.jar。
> set CLASSPATH=H:\xmlBlaster\lib\xmlBlaster.jar
> java javaclients.graphical.GraphicChat -publishDelay 100 -protocol SOCKET -dispatch/connection/plugin/socket/hostname 172.17.1.106 -dispatch/connection/plugin/socket/port 7766

在两个打开的程序界面上分别new一个绘图窗口,然后在任意一个窗口里面画图,都能够即时协同到另外一个窗口,即保持两个窗口的
显示内容始终一致。



安装FIREBIRD数据库
-------------
安装数据库firebird
------------
到http://www.ibphoenix.com/下载FirebirdSS-1.5.2.4731-0.i686.tar.gz和jdbc driver FirebirdSQL-1.5.5JDK_1.4.zip和
JayBird-2.0.0betaJDK_1.4.zip
上载FirebirdSS-1.5.2.4731-0.i686.tar.gz到/home/ftp/pub
# sudo su -
# cd /home/ftp/pub
# tar zxvf FirebirdSS-1.5.2.4731-0.i686.tar.gz
# cd FirebirdSS-1.5.2.4731-0.i686
# ./install.sh
系统自动安装,结束输入SYSDBA的PASSWORD:masterkey
完成安装。查看firebird进程:
# ps -ax
.......
/opt/firebird/bin/fbguard -f
/opt/firebird/bin/fbserver
.......

编辑环境变量:
----------
# vi /etc/bash.bashrc
编辑内容:export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/opt/apache-ant/bin:/opt/firebird/bin
......

# source /etc/bash.bashrc

第一个前提是已经安装数据库firebirdSS1.5.2,并启动,并使用以下命令创建了数据库xmlBlasterDB.fdb:
创建数据库:
# mkdir /opt/firebird/data
# isql
# SQL>CREATE DATABASE '/opt/firebird/data/xmlBlasterDB.fdb'
# CON>user 'sysdba' password 'masterkey';
# SQL>exit; //注意:不能用quit,否则会全部回滚。

可以使用/opt/firebird/bin/changeDBApassword.sh来更改数据库的口令。

配置JDBC driver
# 第二个前提就是配置好了firebird的jdbc驱动,可以使用firebirdsql1.5.5版本的驱动包:firebirdsql-full.jar,
# 也可以使用jaybird2.0的驱动包:jaybird-full-2.0.0.jar,可以将这两个驱动包任意一个拷贝到
# /opt/xmlBlaster/lib/目录下,并在/etc/bash.bashrc当中设定好CLASSPATH路径:
# export CLASSPATH=$CLASSPATH:/opt/xmlBlaster/lib:/opt/xmlBlaster/lib/firebirdsql-full.jar
# 或者
# export CLASSPATH=$CLASSPATH:/opt/xmlBlaster/lib:/opt/xmlBlaster/lib/jaybird-full-2.0.0.jar
# # source /etc/bash.bashrc

配置JDBC driver
put the jar file (for example jaybird-full-2.0.0.jar) in the $XMLBLASTER_HOME/lib directory.

# cd /home/ftp/pub
# mkdir jaybird
# mv JayBird-2.0.0betaJDK_1.4.zip jaybird
# cd jaybird
# unzip JayBird-2.0.0betaJDK_1.4.zip
# cp jaybird-full-2.0.0.jar /opt/xmlBlaster/lib

编辑环境变量:
----------
# vi /etc/bash.bashrc

编辑内容:export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/opt/apache-ant/bin:/opt/firebird/bin
编辑内容: export CLASSPATH=$CLASSPATH:/opt/xmlBlaster/lib:/opt/xmlBlaster/lib/xmlBlaster.jar:/opt/xmlBlaster/lib/jaybird-full-2.0.0.jar
......

# source /etc/bash.bashrc


配置 xmlBlaster.properties
-------------
要严格按照下面的进行,否则极易出错,测试成功的配置文件在本说明目录下:
xmlBlaster.properties.firebird
或者
xmlBlaster.properties.firebird.success
可以直接使用:
# cp xmlBlaster.properties.firebird.success /opt/xmlBlaster/config
# cd /opt/xmlBlaster/config
# mv xmlBlaster.properties.firebird.success xmlBlaster.properties

以下是手动编辑:
[root]# cd /opt/xmlBlaster/config
[root]# vi xmlBlaster.properties

或者进入xwindow,使用mousepad编辑:
# exit
$ startx
$ 启动terminal
$ sudo mousepad
开始编辑/opt/xmlBlaster/config/xmlBlaster.properties:

........

# MsgDistributor Plugin configuration
#
MsgDistributorPlugin[ConsumableQueue][1.0]=org.xmlBlaster.engine.distributor.plugins.ConsumableQueuePlugin

MsgDistributorPlugin/defaultPlugin=undef,1.0
#MsgDistributorPlugin/defaultPlugin=ConsumableQueue,1.0

#------------------------------------------------------------------------------
# Server side plugins to store single messages persistently 'msgUnitStore'
# Server side setup to recover topics after a server crash 'topicStore'
# 以上无修改。
# 删除原有的其他数据库配置。
# 添加以下支持firebird数据库配置。

以下是添加的部分:

# 注意:下面必须严格保证在每行结尾‘\’后面(包括dbAdmin=true的后面)没有多余的空格等字符,否则会出错。

JdbcStorage[Firebird]=org.xmlBlaster.util.queue.jdbc.JdbcQueueCommonTablePlugin,\
url=jdbc:firebirdsql:localhost/3050:/opt/firebird/data/xmlBlasterDB.fdb,\
user=sysdba,\
password=masterkey,\
connectionPoolSize=1,\
connectionBusyTimeout=90000,\
maxWaitingThreads=300,\
tableNamePrefix=XB_,\
entriesTableName=ENTRIES,\
dbAdmin=true


# Settings for the persistence plugins (StoragePlugin and QueuePlugin) for POSTGRES
#
# 添加一行配置firebird数据库。
StoragePlugin[JDBC][1.0]=${JdbcStorage[Firebird]}

# 支持其他数据库注释掉。
#StoragePlugin[JDBC][1.0]=${JdbcStorage[HSQLDatabaseEngine]}
........

# Declare existing queue implementation plugins
# SEE: http://www.xmlBlaster.org/xmlBlaster/do ... queue.html

# 添加一行配置firebird数据库。
QueuePlugin[JDBC][1.0]=${JdbcStorage[Firebird]}

# 支持其他数据库注释掉。
#QueuePlugin[JDBC][1.0]=${JdbcStorage[HSQLDatabaseEngine]}
.......

# 添加一行配置firebird数据库。
JdbcDriver.drivers=org.firebirdsql.jdbc.FBDriver

# 支持其他数据库注释掉。
#JdbcDriver.drivers=org.hsqldb.jdbcDriver:\
# org.ldbc.jdbc.jdbcDriver:\
# com.mckoi.JDBCDriver:\
# sun.jdbc.odbc.JdbcOdbcDriver:\
# ORG.as220.tinySQL.dbfFileDriver:\
# oracle.jdbc.driver.OracleDriver:\
# com.microsoft.jdbc.sqlserver.SQLServerDriver:\
# com.mysql.jdbc.Driver:\
# org.postgresql.Driver:\
# de.sag.jdbc.adabasd.ADriver:\
# com.sybase.jdbc2.jdbc.SybDriver:\
# SQLite.JDBCDriver
.......
# Now you can configure your database access.

# 添加一行配置firebird数据库。严格保证本行的正确性,否则不能成功初始化数据库。
JdbcDriver.mapping[Firebird]=string=VARCHAR(128),"longint=decimal(18,0)",int=integer,boolean=CHAR(1),blob=blob,blobVarName=msg,keyAttr=not null

# 支持其他数据库注释掉。
#JdbcDriver.mapping[HSQLDatabaseEngine]=string=VARCHAR,longint=BIGINT,int=INTEGER,blob=BINARY,boolean=CHAR
#JdbcDriver.mapping[postgres]=string=text,longint=bigint,int=integer,boolean=char(1)
#JdbcDriver.mapping[Oracle]=string=VARCHAR(128),longint=NUMBER(19),int=NUMBER(10),blob=BLOB,boolean=CHAR(1)
#JdbcDriver.mapping[MicrosoftSQLServer]=string=VARCHAR(128),longint=numeric (19),boolean=char(1),blob=image
#JdbcDriver.mapping[ldbc]=string=varchar(128),"longint=decimal(19,0)",int=int,boolean=char(1),blob=blob,blobVarName=ablob,keyAttr=not null

# 以下无修改。
#------------------------------------------------------------------------------
# Add here your MIME based plugins which allow to filter messages you
# subscribed with subscribe() or access with get() with your own supplied rules.


# 第三就是启动xmlBlaster一定要在/opt/xmlBlaster/config目录下,因为xmlBlaster只在当前目录下查找属性配置文件,
# 所以,使用以下方式启动:
# $ cd /opt/xmlBlaster/config
# $ sudo java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766
# 注意:如果系统提示找不到java,需要建立符号连接:
# $ cd /usr/bin
# $ sudo ln -sf /usr/java/j2sdk1.4.2/bin/java java

注意:
xmlBlaster会在启动服务的当前目录查找配置文件:例如xmlBlaster.properties等,所以如果config目录下的各种配置文件如果有修改,
则应该使用以下方式启动:
# exit //退出root环境;
$ startx
$ 启动terminal
$ cd /opt/xmlBlaster/config
$ sudo java org.xmlBlaster.Main
或者指定socket服务ip地址和端口:
$ java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766
指定更多的服务IP地址和端口:
$ java org.xmlBlaster.Main -plugin/socket/hostname 172.17.1.106 -plugin/socket/port 7766 -bootstrapHostname 172.17.1.106 -bootstrapPort 3456




本节主要说明nist-sip的安装及配置等。
------------------------------

前提:
----
本节的前提是已经按照前面几节说明文件进行了j2sdk1.4.2,ant等的环境配置。


Xerces-J的安装配置
----------
到http://www.apache.org/dist/xml/xerces-j/下载Xerces-J-src.2.7.0.tar.gz,Xerces-J-tools.2.7.0.tar.gz文件
上传到/home/ftp/pub目录

# cd /home/ftp/pub
# tar zxvf Xerces-J-src.2.7.0.tar.gz
# tar zxvf Xerces-J-tools.2.7.0.tar.gz
# mv tools xerces-2_7_0
# cd xerces-2_7_0
# chmod +x build.sh
# ./build.sh clean
# ./build.sh deprecatedjars. //只编译旧的xerces.jar的模式的jar;

也可以全部编译,使用下面的命令,本节并不需要执行。
# ./build.sh deprecatedall //所有编译成旧的xerces.jar的模式;

编译成功后,其结果放在build目录下。



配置Xerces环境变量
-------------
# mkdir /opt/xerces
# cd /home/ftp/pub/xerces-2_7_0/build
# mv * /opt/xerces
# vi /etc/bash.bashrc
................
export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/usr/local/dbxml-2.1.8/bin/
export JAVA_HOME=/usr/java/j2sdk1.4.2
export ANT_HOME=/opt/apache-ant
export CLASSPATH=/opt/xmlBlaster/lib/xmlBlaster.jar
export XMLBLASTER_HOME=/opt/xmlBlaster
export JBOSS_HOME=/opt/jboss-3.2.6
添加一行:export XERCES_HOME=/opt/xerces

注意:在export的路径最后不需要加“/”,例如不能够设定export JAVA_HOME=/usr/java/j2sdk1.4.2/
以免有些编译程序在路径后面自动添加了/,导致路径内//现象的发生。
前面在设定路径当中都没有考虑这个问题,全部要修改过来。


编译nist-sip
-----------
上载nist-sip-1.2.src.tar.gz
# cd /home/ftp/pub
# tar zxvf nist-sip-1.2.src.tar.gz
# cd jain-sip
# vi build-config //不需要修改,此步可以省略;
# make all

编译成功后,在当前目录下生成3个jar文件:
nist-sip-1.2.jar
nist-sdp-1.0.jar
JainSipApi1.1.jar
以上就是SIP协议栈,可以用来替换下面proxy包带有的。

编译jain-sip-presence-proxy.tar.gz
---------------------
上载jain-sip-presence-proxy.tar.gz

# sudo su -
# cd /home/ftp/pub
# tar zxvf jain-sip-presence-proxy.tar.gz
# mv jain-sip-presence-proxy /opt //将其移动到/opt目录
# cd /opt
# cd jain-sip-presence-proxy

# cd lib //注意:在这个目录下放置上一步编译的nist-sip的3个jar文件,这里目前已经包含了这3个文件,可以用刚刚自己编译的替换。
//另外proxy-libs.zip当中也包含了这些文件,另外还有一个tracesviewer.jar文件。
# cd /home/ftp/pub/jain-sip/
# mv *.jar /opt/jain-sip-presence-proxy/lib/ //使用上面编译的3个文件替换原有的sip协议文件。

# cd /opt/jain-sip-presence-proxy/
编辑build.xml
# vi build.xml //不用编辑,这步可以省略。
编译
# ant compile-proxy //编译注册、代理、状态服务器。

运行proxy:
退出root环境
# exit
$ startx 进入xwindow;
启动terminal:
$ cd /opt/jain-sip-presence-proxy/
$ sudo ant run-proxy //注意:这里一定要用sudo这种形式,不能直接以root用户的身份,否则会出现X11 server display问题。

注意:编译以后生成运行环境的配置文件目录:
/opt/jain-sip-presence-proxy/configuration
配置文件位置:
/opt/jain-sip-presence-proxy/configuration/gov/nist/sip/proxy/configuration/registrations.xml
包括:
configuration.xml
localconf.xml
passwords.xml
registrations.xml
policy
可以在系统运行之前和过程之中修改,在运行proxy的gui界面上使用configure菜单可以弹出界面进行更改,也可以直接修改配置文件,见下面。

///////////////////////////////////////////////////
如果采用下面的windows xp运行im, 这一段可以忽略。
编译im:
# ant compile-im //编译im客户端,其实本编译可以在另外一台客户端机器上进行。

运行im:
退出root环境
# exit
$ startx 进入xwindow;
启动terminal:
$ cd /opt/jain-sip-presence-proxy/
$ sudo ant run-im //运行客户端。
////////////////////////////////////////////////////

在windows xp环境下编译运行im:
------------------
首先,配置j2sdk1.4.2,设置环境变量
JAVA_HOME=D:\j2sdk1.4.2
CLASSPATH=D:\j2sdk1.4.2\lib
path加入;D:\j2sdk1.4.2\bin;

配置xerces-j
解压到目录C:\Xerces\xerces-2_7_0
运行:build.bat deprecatedjar
设置环境变量
XERCES_HOME=C:\Xerces\xerces-2_7_0\build

配置ant
解压到目录C:\apache-ant-1.6.2
设置环境变量
ANT_HOME=C:\apache-ant-1.6.2
path加入;C:\apache-ant-1.6.2\bin

编译配置im
解压jain-sip-presence-proxy.zip到C:\jain-sip-presence-proxy
在cmd环境下运行:
C:\jain-sip-presence-proxy>ant compile-im
运行im:
C:\jain-sip-presence-proxy>ant run-im

可以在im的gui界面menu下的configure界面进行配置,详细见下面。



以上都是在同一个机器上,使用其缺省的用户和配置运行的,下面将重点对其运行环境进行配置。
===========================================

配置proxy,registrar,presence,im模拟真实环境
-----------------------
proxy的配置文件的位置:
/opt/jain-sip-presence-proxy/configuration/gov/nist/sip/proxy/configuration/目录
包括
configuration.xml
localconf.xml
passwords.xml
registrations.xml
policy
等文件。

proxy server的联系人注册文件registrations.xml
--------------------------
联系人注册文件:
......
<REGISTRATIONS>
<REGISTRATION displayName="Ranga " uri="sip:mranga@nist.gov" >
<BUDDY uri = "sip:deruelle@nist.gov" />
</REGISTRATION>

<REGISTRATION displayName="Deruelle " uri="sip:deruelle@nist.gov" >
<BUDDY uri = "sip:mranga@nist.gov" />
</REGISTRATION>
</REGISTRATIONS>
......


proxy server的一般配置文件configuration.xml
-------------------------
一般配置文件:
其详细说明参考包中所带的文件:\jain-sip-presence-proxy\docs\gov\nist\sip\proxy\README.html
.......
<?xml version='1.0' encoding='us-ascii'?>
<CONFIGURATION>
<SIP_STACK
stack_name="nist-proxy"
stack_IP_address="127.0.0.1" // 可以修改成本机ip:"172.16.1.106"。Defines the IP address used to start the stack. MANDATORY.
router_path="gov.nist.sip.proxy.router.ProxyRouter" //不需修改。The java class name of the router used by the stack to resolve the location to forward the messages to.
max_connections="20" //可以修改。
thread_pool_size="20" //可以修改。
>

<LISTENING_POINT port="4000" transport="udp" />
<LISTENING_POINT port="4000" transport="tcp" />
<DOMAIN domain="there.com" />
<DOMAIN domain="pingtel.com" />
<DOMAIN domain="ubi.com" />
<DOMAIN domain="hotmail.com" />
<DOMAIN domain="nist.gov" />
<DOMAIN domain="nitrogen.epact.se" />
<DOMAIN domain="wellhope.sh" /> //添加内容。
</SIP_STACK>

<REGISTRAR
export_registrations="true" //Enable to export the registrations to the RMI for lookup.
port="1099"
/>

<LOGGING
access_log_via_rmi="false"
rmi_port="0"
log_lifetime="3600"
enable_debug="true"
output_proxy="debug/proxy_output.txt"
server_log="debug/server_log.txt"
bad_message_log="debug/bad_message_log.txt"
debug_log="debug/debug_log.txt"
/>

<PRESENCE_SERVER
enable="true" //提供状态服务。
/>

<AUTHENTICATION
enable="false" //可以修改为"true",进行认证。Enable the authentication capability.
method="digest" //认证方式。
class_file="gov.nist.sip.proxy.authentication.DigestServerAuthenticationMethod" //不需修改。认证类文件。 Use it to upload the class file and process when a message comes in.
passwords_file="./configuration/gov/nist/sip/proxy/configuration/passwords.xml" //不需修改。 The user/passwords XML file for authenticating messages.
/>

<REGISTRATIONS
enable="true" //不需修改。允许运行时上载注册文件。Enable the registrations uploading capability.
expires_time="3600"
registrations_file="./configuration/gov/nist/sip/proxy/configuration/registrations.xml" //不需修改。上载注册文件位置。
/>

</CONFIGURATION>
.........






IM的配置文件:
其详细说明参考包中所带的文件:\jain-sip-presence-proxy\docs\gov\nist\sip\instantmessaging\README.html

/opt/jain-sip-presence-proxy/configuration/gov/nist/sip/instantmessaging/authentication目录authentication.xml文件:
---------------------------------------------------------------
im用户注册文件
......
<User name="deruelle"
realm="nist.gov"
password="nist"
/>
......

/opt/jain-sip-presence-proxy/configuration/gov/nist/sip/instantmessaging/configuration目录的buddies.xml,buddies1.xml文件:
-----------------------------------------------------------------
<?xml version='1.0' encoding='us-ascii'?>
<BUDDIES>
<buddy uri="sip:mranga@nist.gov" />
</BUDDIES>

/opt/jain-sip-presence-proxy/configuration/gov/nist/sip/instantmessaging/configuration目录的im.properties文件:
-----------------------------------------------------------------
.....
examples.im.outboundProxyAddress=127.0.0.1 //需要修改成proxy的ip地址。
examples.im.outboundProxyPort=4000 //需要修改成proxy的端口,参考上面proxy server的listening port配置。
examples.im.registrarAddress=127.0.0.1 //需要修改成注册服务的地址,同上面的proxy的ip地址。
examples.im.registrarPort=4000 //注册的端口。
examples.im.imAddress=127.0.0.1 //本机sip协议栈ip地址。
examples.im.imPort=5070 //本机sip协议端口。
examples.im.imProtocol=udp // the transport to use for sending messages: UDP or TCP accepted.
examples.im.outputFile=./debug/output.txt
examples.im.buddiesFile=./configuration/gov/nist/sip/instantmessaging/configuration/buddies.xml //上面的密友文件。
examples.im.authenticationFile=./configuration/gov/nist/sip/instantmessaging/authentication/authentication.xml //上面的本地认证文件。
examples.im.defaultRouter=gov.nist.sip.instantmessaging.presence.IMRouter
examples.im.localSipURL=sip:deruelle@nist.gov //可以修改,本im的sip地址。
......









安装JBoss
---------
从http://www.jboss.org/下载jboss-3.2.6.tar.gz;
上传到/home/ftp/pub.
# cd /home/ftp/pub
# mv jboss-3.2.6.tar.gz /opt
# cd /opt
# tar zxvf jboss-3.2.6.tar.gz
# rm jboss-3.2.6.tar.gz

配置环境变量
编辑前面的/etc/bash.bashrc文件
[root]# cd /etc/
[root]# vi bash.bashrc
export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/usr/local/dbxml-2.1.8/bin/
export JAVA_HOME=/usr/java/j2sdk1.4.2/
export CLASSPATH=/opt/xmlBlaster/lib/xmlBlaster.jar
添加内容: export JBOSS_HOME=/opt/jboss-3.2.6/

保存退出。






安装berkeley dbxml
-----------------------
首先需要安装前面的build-essential,否则不能编译。
到网站http://www.sleepycat.com/下载dbxml-2.1.8.tar.gz,并上载到ubuntu。

# sudo su -
# cd /home/ftp/pub
# tar zxvf dbxml-2.1.8.tar.gz
# cd dbxml-2.1.8
# ./buildall.sh --help|more //查看编译说明
# ./buildall.sh --prefix=/usr/local/dbxml-2.1.8 --enable-java //指定安装目录并提供java接口

编译完成后,进入dbxml;
# cd /usr/local/dbxml-2.1.8/bin
# ./dbxml
>dbxml
quit 退出

删除源文件
# cd /home/ftp/pub
# rm -R dbxml-2.1.8
# rm dbxml-2.1.8.tar.gz

加入环境变量
编辑前面的/etc/bash.bashrc文件
[root]# cd /etc/
[root]# vi bash.bashrc
修改内容: export PATH=$PATH:/usr/java/j2sdk1.4.2/bin/:/usr/local/dbxml-2.1.8/bin/
export JAVA_HOME=/usr/java/j2sdk1.4.2/
export CLASSPATH=/usr/local/xmlBlaster/lib/xmlBlaster.jar
保存退出。
[root]# source /etc/bash.bashrc






如何设定系统通用(system-wide)的环境变数?
---------------------
如何设定系统通用(system-wide)的环境变数?

1.

sudo cp /etc/bash.bashrc /etc/bash.bashrc_backup
sudo gedit /etc/bash.bashrc

2. 在文件最后加上要新增的系统通用环境变数
3. 保存编辑过的文件

注意:在前面《ubuntu安装配置说明》文档中关于环境变量(例如java,xmlBlaster等)的设定方法都不好,
例如前面使用/etc/environment,~/.bashrc等,全部需要使用这里的设定方式/etc/bash.bashrc进行更正。


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2006-02-18 18:58 
头像

注册: 2005-06-30 15:46
帖子: 2245
地址: 成都
送出感谢: 0 次
接收感谢: 0 次
挺好。太多且没有索引,难读。降低了其价值。
你可以考虑维护一份guide了。
或者在现有guide基础上写一份tawie评注、补充版。
内容多且无索引是最大问题,没法读。


_________________
Humanity to others // 己所不欲,勿施与人
Laptop: ThinkPad X220 --- Win7 Home / Ubuntu 12.04
Desktop: Win7/Ubuntu 12.04
Server: Ubuntu12.04


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2006-02-18 19:20 

注册: 2005-10-23 21:46
帖子: 132
地址: 深圳
送出感谢: 0 次
接收感谢: 0 次
主要是现在太忙了,我这里还有许多关于在ubuntu上做特定服务的东西,都是以前玩ubuntu时顺便记的,没时间整理,更没时间写很完整的东西(懒惰也是一个很难克服的东西,呵呵),主要是给大家提供一个思路。


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2006-02-19 11:07 
头像

注册: 2005-04-10 16:54
帖子: 2625
地址: 温州大学
送出感谢: 0 次
接收感谢: 1
兄弟可以把这些东东写到 wiki 中呀!这样不是很方便吗?
一者,花不了多少时间
二者,还可以索引,就是以后找起来也方便


_________________
我心无畏,源自于我心无知。
图片


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2006-02-28 19:41 
头像

注册: 2005-06-11 14:03
帖子: 6226
地址: 不明真相的群众
送出感谢: 0 次
接收感谢: 0 次
同意,没有索引很难查看.


_________________
我的blog,关于技术,软件,linux,vim <---- 所有博客均被河蟹.


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2006-04-05 21:26 

注册: 2005-12-28 16:23
帖子: 233
送出感谢: 0 次
接收感谢: 0 次
多谢共享。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 6 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译