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

1.我为什么要写这篇文章

  一直想深入学习一下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%的内存,使用还是比较流畅的,也可以将虚拟机后台运行,只使用它的服务就好了。

  

 
分类: centos环境部署

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

  1. 将linux用在开发环境中

    我是如何将linux用在开发环境中的 1.为什么不直接安装Linux在主机 一直想深入学习一下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. 令人无限遐想的各种PCIe加速板卡

    声明 本文不涉及不论什么特定API,也不针对不论什么特定的厂商,可是仍然值得透露一点的是,某些加速板卡厂商的成功点和失败点恰恰都是在于其通用性,在这个人们依旧依赖专业板卡的时代,依旧将板卡视为解决专业 ...

  2. java ClassLoader static

    package init; class Person { private static Person person = new Person(); public static int count2 = ...

  3. POJ 2217 Secretary (后缀数组)

    标题效果: 计算两个公共串串最长的字符串的长度. IDEAS: 这两个组合的字符串. 然后直接确定运行后缀数组height 然后,你可以直接扫描一次height .加个是不是在一个串中的推断就能够了. ...

  4. Java多线程<1>

    1.Java多线程的概念: 线(Thread):它指的是一个任务的从开始执行流程到结束. 穿线提供执行任务的机构.供java条款.在一个程序可以启动多个并发线程.候执行. 在单处理器系统中,多个线程共 ...

  5. Action、Category、Data、Extras知识具体解释

    开头 Intent作为联系各Activity之间的纽带,其作用并不仅仅仅仅限于简单的数据传递.通过其自带的属性,事实上能够方便的完毕非常多较为复杂的操作.比如直接调用拨号功能.直接自己主动调用合适的程 ...

  6. web前端知识体系小结(转)

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  7. Unity3d C# Socket 下载文件 (同步到)

    续篇 Unity3d C# HttpWebRequest 异步下载文件 ,由于project编译为IL2CPP的情况下仍然无效.提示HttpWebrequest 在当前版本号不支持.所以还是寻求其他的 ...

  8. ERROR 2003 (HY000): Can&#39;t connect to MySQL server on &#39;10.16.115.101&#39; (111)

    ubuntu安装之后mysql,使用apt-get安装命令,默认为同意只本地访问 root@idata1:~/software# mysql -uroot -p123456 -h10.16.115.1 ...

  9. cocos2dX 音乐和声音效果

    今天, 我们学习cocos2dX里面音乐和音效, 为什么学他呢, 难道你喜欢看无声电影( 旁白: 我就喜欢关着声音玩), 我们不要管旁白了, 她是个疯子 老规矩, 资源准备好: 一首<故宫神思& ...

  10. 使用 Visual Studio 对exe文件进行数字签名

    使用"VS2013 开发人员命令提示"运行签名工具.转到要签名的文件目录运行命令: signtool sign /a 要签名的程序.exe signtool 的相关命令 Usage ...