Linux.NET环境的搭建,不仅是一项比较耗时的事情,同时也是一项略显复杂繁琐的事情。特别是对于近期的几个Mono版本,由于官方所提供的源码包中出现代码文件的缺失,这总让我们的付出变得徒劳。另外一方面,由于Linux.NET的环境搭建涉及到比较多Linux的操作知识,这无疑增加了它的学习使用成本,提高了学习的门槛,这也令不少习惯于Windows中开发ASP.NET的开发者对其望而生畏。

降低Linux.NET的学习难度,需要从环境部署开始着手,为此,Jexus的作者宇内给我们制作了一款绿色版的Linux.NET环境包,当中提供了Jexus Web Server以及Linux.NET的运行环境,带来了解压即可用,删除即卸载便利,同时还降低了Linux,NET初学者的学习门槛。

马上进入本文的主题,本文主要讲述:

  1、jws.mono的简介

  2、jws.mono的使用方法

  3、自己动手组装一个jws.mono


1、jws.mono的简介

jws.mono(暂定名)是针对Linux.NET Web诞生的一个绿色的环境包,当中包含了Jexus Web Server、.NET的编译器、运行时以及相关常用的类库。

目前提供的版本以及下载地址如下:

  (1)、供64位CentOS 6.x使用的jwsmono-centos6-x64

     其下载地址可点击:百度云高速下载(高速、推荐)

  (2)、供64位Ununtu 11+ 使用的jwsmono-ubuntu-x64

     其下载地址可点击:百度云高速下载(高速、推荐)

更多发行版本以及操作系统位数的包在制作后会继续发放。

同时关于jws.mono的正式名也欢迎各位读者留言献名(主要体现便捷快速部署且绿色干净)。

如遇无法下载或有任何疑问可加入Linux.NET群(102732979)或到linuxdotnet大本营中发帖提问

2、jws.mono的使用方法

jws.mono的使用方法比较简单,包中也有相应详细的说明文档,参照文档即可完成部署。

而CentOS和Ubuntu两种环境报的使用方法完全一致,因此在这里我抽取其中一种来进行简略的讲解。

部署的方式主要通过以下三步(此处随机抽取Ubuntu来作为范例):

第一步:上传并解压软件包

tar zxf jwsmono-ubuntu-x64.tar.gz

第二步:把jws.mono目录移动到根目录中

mv jws.mono /

第三步:启动jws

/jws.mono/jexus/jws start

即可完成环境包的部署,非常便捷。

检查80端口以及info

80端口已被监听,info页面也访问正常,部署完成。

jws.mono的卸载也很简单,只需:

/jws.mono/jexus/jws stop

rm -rf /jws.mono/ 即可

3、自己动手组装一个jws.mono

绿色版的环境包固然不错,又方便又干净,但是,毕竟它的“原材料”来自于编译所生成的各类型文件,而Linux与Windows明显不同的一个特点就是发行版本众多,并且源码编译过程中受系统的软硬件各方面的因素影响较大,我们所现有提供的绿色环境包可能与部分读者的系统所不兼容(现提供环境包的是针对Jexus使用的,程序集库方面有不少删减,也可能无法满足部分读者的需要【特别是需要做Winform开发的读者】),如果遇到了这种情况,我们可以考虑定制一个自己专属的绿色环境包。

本节中我们将学习如何组装出自己专属的绿色环境包。

二话不说,我们先看看我们需要些什么“工具”以及“原材料”。

做这个实验,我需要准备两台的Linux系统,第一套中包含由源码编译得出的整套Linux.NET环境,而另外一套则是单纯的新装完系统,非常干净。

开始动手了,在这里,我说明下,本机的Linux.NET环境搭建文件路径与《Linux.NET学习手记(1)》一致,因此不知道环境安装路径的读者可以去翻翻那篇文章。

我们先在/home/中创建一个jono目录,这作为我们放“原材料”的地方

mkdir /home/jono

然后把jexus和mono都从系统中拷贝一份到jono中

cp -r /usr/local/jexus/ /home/jono/

cp -r /usr/local/mono/ /home/jono/

把jono打包,并从Linux中取出到Windows中(打包只为传输更快)

tar czf /home/jono.tar.gz /home/jono

回到Windows中并把jono.tar.gz解压。

里面包含了两个文件夹,分别是mono和jexus。mono文件夹中包含了全套的Linux.NET库以及Runtime,如果各位读者想对软件包进行定制瘦身,可以从这里入手进行修改,在本文中,我们制作的是“完全版”,提供了全部的库文件,因此就不管这个目录。而jexus文件夹,顾名思义,就是Jexus Web Server的安装目录。

我们进入到jexus中,并用编辑器打开jws文件

如图所示,我们主要修改两个变量参数的值,在每个参数后面分别加上“:/jono/mono/bin”和“/jono/mono/lib”,然后保存退出(这里假设我们的绿色包将放在根目录下)。

重新把jono打包并传输第二台Linux中(干净那台)

进入第二台Linux,把jono.zip解包

unzip jono.zip

mv ./jono/ /

给jws文件赋予执行权限

chmod a+x /jono/jexus/jws

给mono/bin赋予执行权限

chmod a+x -R /jono/mono/bin/

至此,我们自己组装的绿色包基本成型,我们测试绿色包能否正常运作

打开jexus服务器,并查看监听、info页面

/jono/jexus/jws start

netstat -an | grep :80

80端口监听正常

info页面正常

证明,我们制作的绿色包已经成功,我们可以将其打包并发布出来。

/jono/jexus/jws stop

tar czf /jono.tar.gz /jono

这里顺带一提,因为我们制作的是完整版的环境包,因此不单止可以提供给Jexus运作,同样可以提供给其他.NET程序运作,我们执行执行:

echo "/jono/mono/lib" > /etc/ld.so.conf.d/mono.conf

ldconfig

echo  PATH=/jono/mono/bin:$PATH>>~/.bash_profile

source ~/.bash_profile

将mono的bin以及路径加入系统环境变量中,即可达到与编译搭建的环境一样效果。

(图中出现了几个提示不是符号连接,有兴趣的读者可以它改回符号连接)


至此,本篇内容至此结束,如有疑问或者异议,可在本文中留言或到Linux.NET群中提出,我会尽可能的逐一进行解答,希望对各位读者的学习带来帮助。

绿色版的Linux.NET——“Jws.Mono”的更多相关文章

  1. 绿色版的Linux.NET——“Jws.Mono”(续)

    在前一篇文章中,我们简略的介绍了jws.mono的安装使用,以及我们如何自己动手做一个jws.mono出来. 在文章发表之后的几天里,我一直觉得有点不妥之处,直到后来猛然的意识到:我们自己动手做的jw ...

  2. jws.mono脚本安装详解

    就在最近两天,最新版本的jws.mono上线了,这个版本除了提供与之前版本拥有的功能外,还额外提供了一个“自动化”的安装脚本,通过执行该脚本,jws.mono将自动快速的安装到指定的目录,同时,通过改 ...

  3. wine on ubuntu linux, and source insight 绿色版的安装

    1.安装一些必要组件 winetricks msxml3 gdiplus riched20 riched30 vcrun6 vcrun2005sp1 wenquanyi 2.拷贝字体 下载网盘中的字体 ...

  4. 使用FlashFXP V3.8烈火汉化绿色版软件连接Linux

    使用FlashFXP V3.8烈火汉化绿色版软件连接Linux 单击右上角的小闪电图标: 特别注意:出于安全考虑,FTP默认禁止使用root账号登陆Linux主机,必须使用除root用户以外的其他用户 ...

  5. Asp连接Oracle (包含绿色版12.2客户端和ODBC驱动安装)

    我能操作的终端电脑是一台linux系统可以上互联网 ,服务器在部署在独立的私网上,不方便上互联网.服务器是2008R2.安装vs不是很方便.其所linux下作开发不是不可以,java php mono ...

  6. 激活jws.mono的图像处理

    不得不说,jws.mono真的给我们带来了很大的便利,它免除了我们编译Linux.NET所带来的烦恼,节省了我们的时间.但是金无足赤人无完人,虽然jws.mono已经大致能够提供与我们自行编译相同的效 ...

  7. mysql8.0绿色版安装及mysqldump备份

    1.下载mysql绿色版压缩包https://dev.mysql.com/downloads/mysql/ 2.解压到安装目录后,在根目录创建data文件夹 3.把mysql下的bin目录添加到环境变 ...

  8. Tomcat *的下载(绿色版和安装版都适用)

    不多说,直接干货! 1.先下载tomcat,到http://tomcat.apache.org/ 2.注意:下载可以下载zip格式或exe格式的,其中zip格式的只要解压缩再配置下环境变量就可以使用了 ...

  9. Tomcat *的安装和运行(绿色版和安装版都适用)

    不多说,直接上干货! 前提, Tomcat *的下载(绿色版和安装版都适用) 一.Tomcat的安装版 1.新建安装目录 2.放置安装版的tomcat 3.双击 4.点击 I agree 5.选择“F ...

随机推荐

  1. 【AR实验室】ARToolKit之制作自己的Marker/NFT

    0x00 - 前言 看过example后,就会想自己动动手,这里改改那里修修.我们先试着添加自己喜欢的marker/nft进行识别. 比如我做了一个法拉利的marker: 还有网上找了一个法拉利log ...

  2. Http状态码之:301、302重定向

    概念 301 Moved Permanently 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一.如果可能,拥有链接编辑功能的客户端应当自动把请求的地 ...

  3. Python-Jenkins API使用 —— 在后端代码中操控Jenkins

    最近在工作中需要用到在后台代码中触发Jenkins任务的构建,于是想到Jenkins是否有一些已经封装好的API类库提供,用于处理跟Jenkins相关的操作.下面就简单介绍下我的发现. Linux C ...

  4. Android GridView 通过seletor 设置状态和默认状态

    Android中可以通过selector控制GridView Item 的状态,而省去使用代码控制 GridView View Selector Xml文件 <?xml version=&quo ...

  5. ES6的一些常用特性

    由于公司的前端业务全部基于ES6开发,于是给自己开个小灶补补ES6的一些常用特性.原来打算花两天学习ES6的,结果花了3天才勉强过了一遍阮老师的ES6标准入门(水好深,ES6没学好ES7又来了...) ...

  6. C++随笔:.NET CoreCLR之GC探索(3)

    有几天没写GC相关的文章了哈,今天我讲GC的方式是通过一个小的Sample来讲解,这个小的示例代码只有全部Build成功了才会有.地址为D:\coreclr2\coreclr\bin\obj\Wind ...

  7. 漫谈C#编程语言在游戏领域的应用

    0x00 前言 随着微软越来越开放,C#也变得越来越吸引人们的眼球.而在游戏行业中,C#也开始慢慢地获得了关注.这不, 网易绝代双娇手游团队已经全面使用.Net Core支持前后端统一C#开发,跨平台 ...

  8. CSS 3学习——边框

    在CSS 3中可以设置边框圆角.边框阴影和边框图像,分别通过border-radius.border-image和box-shadow属性设置. 边框圆角 border-radius属性是以下4个属性 ...

  9. golang语言构造函数

    1.构造函数定义 构造函数 ,是一种特殊的方法.主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中.特别的一个类可以有多个构造函数 ,可根据其参数个 ...

  10. 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新

    微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...