我是如何将linux用在开发环境中的

1.为什么不直接安装Linux在主机

  一直想深入学习一下linux的使用,于是将家里的笔记本装了linux系统,但是要将自己的系统打造一个适合开发的环境确实是一件费心费力的事,而且会经常出现一些莫名其妙的问题,以我自己的使用经验觉得要想用linux做开发环境,你要了解每个软件,不然出现一些问题就很难解决,其他不说,就是光搞好驱动问题就让人蛋疼了。

  我的电脑装了linux之后一直高温不下,在网上找了一些方法,关掉独显也好不了多少,开机2个小时温度就飙到70-90度,试过很多发行版,debian,ubuntu,centos,fedora均没解决问题,至于那些gentoo之类的光看评论就吓尿了,每次都要折腾好久的驱动问题,还有些系统的源都被党国屏蔽了,如果要将驱动,开发环境,办公使用的软件折腾完真的是一件费心费力的事,而且只能使用web qq, wineqq还是那么老的版本也不好用, bclode经常登录不上去,报未知错误,由于工作的需要,我注定不适合完全linux办公环境。但是作为一个程序员linux的使用和排错能力还是要有的,于是我今天就分享我使用的方式。

2.windows + 虚拟机

  在虚拟机里面装linux是很普遍的,我很多同事为了学习就在虚拟机里面装了linux,没事的时候倒腾两下,但是并没有用到实际工作中去,于是我就想为何不将我们的代码,服务放到linux虚拟机里面去,然后用windows访问里面的服务,代码可以在windows下开发,部署放到linux里,我觉得这样做有以下好处:

  1.跟生产环境同步,保证自己的代码可以在linux下运行。

  2.移植方便,直接把虚拟机文件打包考到另外一台电脑上面就可以使用了。

  3.定期可以将虚拟机文件放到云盘中,等于备份了系统,随时还原 (但是文件太大上传有点麻烦,备份到硬盘倒是很方便的)

  4.因为linux用到开发中了,经常玩肯定能学到东西,这个就不用说了。

3.实现

  在网上看了各种虚拟机比较,当然还是VMware比较好,而且提供了VMvare-tools,共享文件夹,共享网络都很好,共享的文件夹就挂载到了linux中,可以将开发的代码放到共享文件夹里面,这样linux就可以部署了,也不需要代码拷来考去,或者用svn更新什么的,就比较麻烦了。

  我的方案是win7+centos7 因为生产环境使用的是centos,不过实际实现时有一些注意事项:

  vmvare提供了3种网络共享的方式 桥接、NAT及host-only 具体有什么区别我就不说了,自己查吧。一般都是使用桥接,这样虚拟机就相当于一台独立的机器,其他机器就可以访问虚拟机里面的服务,但是我工作的公司因为每台电脑都要进行mac登记才能上网,所以我不得不选择nat方式,nat方式不需要什么设置,比较简单,但是主机无法访问虚拟机里面的服务,后来在网上找到解决的方法就是做端口映射。上图:

  

如图:

  通过本机的800端口来访问虚拟机里面的80端口,实现也很简单,只需要在虚拟机里面做一个端口映射就可以了。

  在vmware里的 编辑->虚拟网络编辑器-> 选择nat模式 net设置->添加

  

  然后保存就好了,如果不行还要做检查一下linux的防火墙,开放80端口。如果要让别人的电脑也能访问,还需要在windows防火墙设置一下。当然哥比较懒,因为开发的时候经常要给别人看,都是直接关闭防火墙。当然你也可以将数据库什么的都放到linux里面去,windows只装一些软件使用linux里面的服务。

  但是用虚拟机如果要想不卡对电脑的配置还是要有要求的,我是8G内存,虚拟机开2G内存,开启虚拟机,IDE等工作软件基本要占用80%-90%的内存,使用还是比较流畅的,也可以将虚拟机后台运行,只使用它的服务就好了。

将linux用在开发环境中的更多相关文章

  1. 如何将linux用在开发环境中的

    如何将linux用在开发环境中的 1.我为什么要写这篇文章 一直想深入学习一下linux的使用,于是将家里的笔记本装了linux系统,但是要将自己的系统打造一个适合开发的环境确实是一件费心费力的事,而 ...

  2. 我是如何将linux用在开发环境中的

    1.我为什么要写这篇文章 一直想深入学习一下linux的使用,于是将家里的笔记本装了linux系统,但是要将自己的系统打造一个适合开发的环境确实是一件费心费力的事,而且会经常出现一些莫名其妙的问题,以 ...

  3. Idea开发环境中搭建Maven并且使用Maven打包部署程序

    1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...

  4. Linux设备驱动开发环境的搭建(转)

    经过两周的摸索,终于对Linux设备驱动开发有了个初步的认识,下面对Linux设备驱动开发环境的搭建做个小结,以方便自己以后查询,同时也能给同道的初学者一点帮助. 刚接触Linux设备驱动时,初学者往 ...

  5. Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

    1. openSUSE是一款优秀的linux. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRjYXN0Y3Bw/font/5a6L5L2T/font ...

  6. Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

    1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux  opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2 ...

  7. 【课程分享】深入浅出嵌入式linux系统移植开发 (环境搭建、uboot的移植、嵌入式内核的配置与编译)

    深入浅出嵌入式linux系统移植开发 (环境搭建.uboot的移植.嵌入式内核的配置与编译) 亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系 ...

  8. wxWidgets 的 Linux / Windows 混合开发环境

    目标 建立一个开发 GUI 交互界面程序的环境,要求: 以 C/C++ 为主要程序设计语言. 最好能充分利用已有的 MFC 开发经验. 以 Linux 为主要开发环境.可以在 Windows 中编译并 ...

  9. 在 Linux 平台及 IPv4 环境中构建 IPv6局域网 测试环境

    在 Linux 平台及 IPv4 环境中构建 IPv6 测试环境 1 IPv6简介 IPv6(Internet Protocol Version 6)作为 IPv4 的升级版本,它是作为一共软件升级安 ...

随机推荐

  1. JavaScript事件---事件对象

    发文不易,若转载传播,请亲注明出处,谢谢!   内容提纲: 1.事件对象 2.鼠标事件 3.键盘事件 4.W3C与IE JavaScript事件的一个重要方面是它们拥有一些相对一致的特点,可以给你的开 ...

  2. 第四章:Javascript表达式和运算符

    表达式是javascript中的一个短语,javascript解释器会将其计算出一个结果.程序中常用量是最简单的一类表达式就是变量.变量名也是一种简单的表达式,它的值就是赋值给变量的值.复杂的表达式是 ...

  3. JS面向对象概述

    这部分内容还是比较难理解的,像借用构造函数这种方法,实际工作中还是很常见的,不过对于后面的寄生理解还有点困难,只能慢慢学习了. 思维导图

  4. Xamarin.Forms入门学习路线

    Xamarin 介绍 Xamarin是一套跨平台解决方案,目的是使用C#语言创造原生的iOS,Android,Mac和Windows应用. Xamarin的三个优势: Xamarin App拥有原生A ...

  5. 小菜鸟学 MQ(三)

    创建程序测试MQ 1,创建生产者 package com.robert; import java.util.Hashtable; import java.util.Map; import javax. ...

  6. Teradata 语句简单优化

    Teradata 基本查询语言和SQL server 是一致的.有很小的区别. 功能没有SQL 全面,界面没有SQL 好看~ 1. teradata 里面经常会报一种错误: no enough spo ...

  7. 【codevs1409】 拦截导弹 2

    http://codevs.cn/problem/1409/ (题目链接) 题意 给出n个三维的导弹,每次拦截只能打x,y,z严格上升的若干个导弹,求最多能一次拦截下多少个导弹,以及最少拦截几次将所有 ...

  8. 【uoj2】 NOI2014—起床困难综合症

    http://uoj.ac/problem/2 (题目链接) 题意 给出n个操作包括And,or,xor,求从0~m中的一个数使得经过这些操作后得到的值最大. Solution 大水题..贪心由高到低 ...

  9. codeforces 58E:Expression

    Description One day Vasya was solving arithmetical problems. He wrote down an expression a + b = c i ...

  10. [NOIP2011] 提高组 洛谷P1315 观光公交

    题目描述 风景迷人的小城Y 市,拥有n 个美丽的景点.由于慕名而来的游客越来越多,Y 市特意安排了一辆观光公交车,为游客提供更便捷的交通服务.观光公交车在第 0 分钟出现在 1号景点,随后依次前往 2 ...