Windows中的.Net服务移植到Centos
来源:互联网 发布:数据分析 主成分分析 编辑:程序博客网 时间:2024/05/17 09:38
【移植说明】:
原平台:Windows Server 2008 R2 Enterprise ;IIS
目标平台:Centos6.5
移植对象:.Net服务
移植方式:在Centos6.5上安装Mono和Jexus 以支持.Net服务
一.安装Mono
1.安装Mono源码安装需要的库
yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel cairo-devel
2.安装Mono需要的GDI+兼容API的库Libgdiplus
cd到你想下载源码的位置,一般我们cd到/usr/local/src/下
cd /usr/local/src/
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
tar -jxvf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make
make install
3.安装monocd /usr/local/src/
wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
tar -jxvf mono-2.10.8.tar.bz2
cd mono-2.10.8
./configure --prefix=/usr
make
make install
输入 mono -V 如有mono版本信息,则安装成功.如果是64位版本的CentOS,在后续安装好Jexus 5,启动的时候会发生以下错误:
Sender: jws.exe, Sender TypeName: AppDomain
Exception Source: jws, TargetSite Name: A
Message is:
An exception was thrown by the type initializer for Mono.Unix.Native.Stdlib
StackTrace is:
at A.G.A (System.String[] A) [0x00000] in <filename unknown>:0
IsTerminating: True
建议你运行下命令ldconfig,建议大家在安装mono后,都 ldconfig一下 。(ldconfig命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件.缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表. )
另外有一点也非常重要,要在编译Mono的是指定安装到/usr(./configure --prefix=/usr),如果安装到一个系统根本"不了解"的文件夹,仅ldconfig都不行,还要在/etc/ld.so.conf文件或/etc/ld.so.conf.d 中添加路径后再 ldconfig才行呢。
ldconfig几个需要注意的地方!
1. 往/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig,不然这个library会找不到
2. 想往上面两个目录以外加东西的时候,一定要修改/etc/ld.so.conf,然后再调用ldconfig,不然也会找不到
比 如安装了一个mysql到/usr/local/mysql,mysql有一大堆library在/usr/local/mysql/lib下面,这时就 需要在/etc/ld.so.conf下面加一行/usr/local/mysql/lib,保存过后ldconfig一下,新的library才能在程 序运行时被找到。
3. 如果想在这两个目录以外放lib,但是又不想在/etc/ld.so.conf中加东西(或者是没有权限加东西)。那也可以,就是export一个全局变 量LD_LIBRARY_PATH,然后运行程序的时候就会去这个目录中找library。一般来讲这只是一种临时的解决方案,在没有权限或临时需要的时 候使用。
4. ldconfig做的这些东西都与运行程序时有关,跟编译时一点关系都没有。编译的时候还是该加-L就得加,不要混淆了。
5. 总之,就是不管做了什么关于library的变动后,最好都ldconfig一下,不然会出现一些意想不到的结果。不会花太多的时间,但是会省很多的事
二.安装Jexus 5.01、下载:
下载地址是:http://www.linuxdot.net/down/jexus-5.0.1.tar.gz
wget http://www.linuxdot.net/down/jexus-5.0.1.tar.gz
2、解压:
tar -zxvf jexus-5.0.tar.gz
3、安装:
Jexus安装非常简单,仅仅就是一个复制、粘帖和注册全局程序集的过程
注意:以下所有操作请用root身份。
1) 建立jexus安装文件夹(一般为/etc/jws/),我安装到/usr/jexus/ :
sudo mkdir /usr/jexus/
2) 把解压所得到的文件及文件夹全部复制或移动到 /etc/jws 这个文件夹中
如: sudo mv * /usr/jexus/
3) 将 jws.regsvr、jws.start、jws.restart、jws.stop 设为可执行
4) 注册全局程序集(*非常重要*)
进入安装jexus目标文件夹(cd /usr/jexus/),然后运行:
sudo ./jws.regsvr
三、运行测试
复制完Jexus的文件后,Jexus就可以正常工作了。
所以,如果你的系统只要mono已经成功安装,jexus就可以直接使用,甚至连进一步的配置也完全不需要。
如果是升级安装,你只需要用jws.start启动JWS,Jexus就可以正常工作了,如果不能正常工作,常常是新版本的配置方式可能有变,你可以查查jws.conf等配置文件。
强调:如果你服务器安装有其它的WEB服务器,而且该服务正在运行,请停止它,以免造成端口冲突而造成Jexus无法启动。
如果是全新安装,请首先建立一个默认的网站文件夹:/var/www/default
然后在Jexus工作文件夹(/usr/jexus/)中执行jws.start命令(需要root身份),启动jexus。
详细Jexus的配置可以看Jexus中的readme.txt文件
测试方法:
1.在jexus-5.0.1/siteconf 中放的是网站的配置文件 以文件名标示一个网站,文件名不能有空格,默认会有一个default
4.重启Jexus jws.restart 方法
5.访问:ip:8082/myTest.aspx,成功!
参考文章:http://www.cnblogs.com/shanyou/archive/2012/01/07/2315982.html
- Windows中的.Net服务移植到Centos
- Windows 服务移植到Mono
- 移植Windows自宿主WCF服务到Linux/Mono2.8
- tremulous移植到windows
- linux到windows移植
- Caffe移植到windows
- 移植telnet服务到DM8168
- 将linux下c程序移植到windows并作为服务启动
- Windows .NET Server 2003 中的 Microsoft 群集服务 (MSCS) 简介
- Windows .NET Server 2003 中的 Microsoft 群集服务 (mscs) 简介
- .net中的windows service与调服务操作
- 从Windows移植到Linux
- 将pthread移植到windows
- windows到Linux代码移植
- linux代码移植到windows
- C++ Windows移植到 linux
- 最新版libvibe++移植到Windows
- centos&&windows各自的服务
- Android 进程的内存管理分析
- 【Android开发bug】Dropping event due to no window focus
- C# 中实现快捷键的方式
- 菜鸟学Java----Java语言基础
- 如何同时激活两个不同版本的MyEclipse 【MyEclipse2013和MyEclipse2014同时激活】
- Windows中的.Net服务移植到Centos
- android findviewByid()关于空指针
- 30.c/c++程序员面试宝典-函数的定义
- ffmpeg入门基础知识
- UNIX环境编程--------编程实例-----Gethostname()函数使用
- JVM之——调整java虚拟机可使用的最大内存
- iOS UITableView 用法二:源码示例
- 第二章高层体系结构笔记
- Android中Service(服务)详解