为开发人员提供5个坚如磐石的Linux发行版

开发人员喜欢他们的方式,而没有其他方式。 为此,Linux将成为最终开发人员的桌面环境。 Linux是无限可定制的,它提供了对开发人员可能需要的几乎所有软件的简单访问。 但是对于开发人员来说,一个好的Linux必须具有其他关键属性-比如舒适的工作环境、良好的文档和开发人员通常可以从中受益的有用特性。

在这里,我们从开发人员的角度来看五个主要的Linux发行版,以及它们是如何形成以满足开发人员的需求的。 所有这些都是主要的、主线的项目,背后有多年甚至几十年的用户支持和开发。 让其中任何一个成为发展环境的基础几乎没有风险。

尽管如此,这些发行版-Ubuntu、Mint、Fedora、CentOS和OpenSuse-都有不同的优势和弱点,每个版本都以自己的方式平衡了对灵活性、易用性和稳定性的需求。 根据你所寻求的平衡,你无疑会被吸引到比其他人更多的地方。

Ubuntu及其衍生产品Linux Mint都为用户提供了高水平的抛光和签名便利。 Fedora对每个版本都保持最新状态,尽管对于那些想要一个集合和遗忘体验的人来说,发布周期的速度可能太快了。 对于那些打算专门为RHEL开发的人来说,CentOS似乎是最好的,但它也应该吸引那些希望尽可能少地从版本到版本更改的开发人员。 最后,OpenSuseLeap将以其智能设置、子卷和为文件系统管理提供的强大工具集吸引大量开发人员。

一小部分Linux发行版占据主导地位,成为用户最常见和最可靠的选择。 UbuntuDesktop很容易成为最受欢迎的桌面之一,它肯定是最受欢迎和最抛光的桌面之一。 与Ubuntu相关的专业水平,特别是与其LTS(长期支持)版本相关的专业水平,使其成为开发人员的首选。 乌本图很难出错。

在选择Ubuntu时,开发人员使用LTS版本是最有意义的,因为LTS版本得到了连续五年的支持。 使用LTS版本,您可以推迟对系统的不一致的更改,这些更改通常伴随着主要的点修订,但不会剥夺您自己的安全更新。 开发人员讨厌因为全新的操作系统版本而不得不停止一切并重新配置他们的环境。 有了LTS版本,你就可以有平和的心态。

另一个很好的优点:Ubuntu的安装过程为您提供了添加对专有硬件驱动程序和软件元素的支持的选项。 不是每个开发人员都需要这些,但它们一开始就被作为一个方便的一次性选择提供。 此外,如果您正在虚拟框VM中执行Linux开发工作,则Ubuntu16.04LT S预安装驱动程序允许显示重标和鼠标集成。 (但是,它似乎没有预先安装剪贴板支持实用程序。 如果您想要这些,您将需要安装虚拟框客人添加。)

HPE赞助的品牌邮政

为资讯科技行业定义下一章:网上资讯科技服务

“作为一种服务”模式提供的是服务,而不是产品;灵活性而不是刚性;以及与业务结果相一致的成本。

从程序员的角度来看,Ubuntu的默认Unity桌面环境有很多好处。 干净,一致,不显眼,团结把要点放在你的指尖,而大多数情况下,远离。 如果您更喜欢使用不同的环境,则可以通过命令行添加一个环境,但Ubuntu还提供了大量带有替代桌面(包括GNOME、KDE、Xfce和LXDE)的重新引脚。

在Ubuntu中,一个特别方便开发人员的功能是一个名为UbuntuMake的命令行工具(默认情况下不安装,但这很容易修复)。 Umake也是众所周知的,它为开发人员提供了一种方便的方式来安装Node.js、Dart、Rust、Swift、Go、Scala、Android等的整个开发堆栈、工具和各种IDE。 这在UbuntuDesktop16.04LTS这样的环境中是双重有用的,因为它允许开发堆栈本身保持最新,而不可能对系统的其余部分进行粘合。

最后,各种各样的IDE可以直接通过Canonical的存储库获得。 你不仅会发现Eclipse、NetBeans和Mono开发,而且还会发现忍者、Anjuta和Geany等鲜为人知的项目。 也不缺少普通的老编辑,从GNUEmacs到Blue fish。

默认情况下,Ubuntu可以从Canonical的存储库获得广泛的开发工具。

Linux Mint是一个Ubuntu导数,但它与Ubuntu有足够的不同,值得自己讨论。 薄荷的总体目标是提供一个舒适的桌面环境,几乎所有关于设置过程的共同决定都已经为您做出了。 开发人员使用用户发行版有什么意义,你可能会问?

一个原因很简单:开发人员也是用户,许多使用户舒适的功能也让开发人员满意。 例如,如果只想让一个功能系统跳出框框,Mint设置过程几乎不需要决策。 由于默认的文件系统是EXT4,操作系统和用户数据都在同一个分区上,所以您总是可以自定义您的创建-例如,OS的BTRFS和用户数据的XFS LaOpenSuse。 但是Mint的默认设置是正常的,通过检查单个框,您可以安装桌面环境中经常使用的所有第三方和封闭源驱动程序。

薄荷的标志性桌面,称为肉桂,与WindowsXP和Windows7密切相关,立即对非Linux本地人有用。 它是可锻的,如果你需要它是,但足够有用的盒子,没有调整。 也就是说,肉桂(和薄荷本身)是高度可配置的,可编程的,可定制的。 所做的大部分开发都是在Python、Java脚本和C中完成的,这意味着任何在前两个方面有经验的开发人员都可以自由地潜入和调整系统。

在Mint的默认存储库中可用的软件是Ubuntu中的回声。 这对开发者来说是个好消息,因为Ubuntu在这方面装备精良。 许多流行的开发工具-Eclipse、NetBean、Geany、Mono Development、Lazarus(免费PascalIDE)等等-都是现成的,而不必连接到外部回购或从下载中安装。 您还可以从Linux Mint社区站点安装UbuntuMake,将Umake的开发堆栈放在指尖。

最后,由于所有的Mint版本都是基于UbuntuLTS版本的,所以它们保证有一个很长的服务更新窗口。 例如,Mint18.1计划在2021年4月之前得到支助。

在Mint的存储库中,软件的选择与Ubuntu中可用的软件密切相关。 您甚至可以使用UbuntuMake为您最喜欢的语言安装开发堆栈和工具。

Fedora长期以来一直在为可能最终进入Red HatEnterpriseLinux的功能提供前沿证据。 它也成为Linux开发人员的一个很好的桌面环境,特别是现在Fedora已经被分成了单独的桌面、服务器和云版本。 桌面版当然是这里的重点。

费多拉的每年两次发布周期对那些讨厌让一切都恢复活力的开发人员来说既是好消息,也是坏消息。 好消息:一个新的版本不会自动使现有的版本失效,所以你可以坚持一段时间给定的Fedora版本。 坏消息:个人版本在发布后只支持13个月,没有长期支持版本。 如果您选择Fedora,如果您不想失去支持,您将需要至少每年执行一次全面升级。 这意味着您可能希望将用户和开发数据保存在单独的分区上,以防您需要完全擦拭甲板。

费多拉的默认桌面是GNOME3,这是合理的不引人注目和易于导航。 想要更少的桌面体验的开发人员可以安装另一个桌面,或者简单地抓取另一个版本的Fedora(它的一个Spins),并预先安装另一个桌面。 KDE等离子体,XFCE,LXDE,Mate-Compiz,肉桂,甚至OLPC SOAS桌面都是可用的。

每个新版本的Fedora版本的发布说明的整个部分都专门针对使用操作系统的开发人员。 这些注释详细介绍了用Fedora打包的不同语言运行时间和不同语言可用的新工具(例如Fedora24注释中GCC用户的新工具)。

费多拉的快速升级周期意味着捆绑的语言和运行时间往往是最新的版本适合生产。 例如,Fedora25包括Rubyon Rails5.0和Go1.7。 你甚至会在最新的Fedora中发现Mozilla的锈迹-这表明Fedora的维护者们是如何看待未来和现在的。 多个版本的Python都是并排可用的,以及PyPy和Jython。 最新的Docker生产版本也包括在内。

Fedora软件存储库中的开发工具从Eclipse和Vim等传统产品到Mono开发、代码:Block和Geany等。 您甚至会为Arduino和MCU8501硬件板找到IDE。 没有你得到的品种与Ubuntu,但随着红帽无处不在的RPM包格式,Docker和Flatpak支持,您有很多选择添加第三方软件。

费多拉的内置和按需应用程序开发工具名册甚至包括前沿语言运行时间。

在红帽爱好者中被称为RHEL克隆与序列号存档,CentOS是为那些想要RHEL的稳定性和长期支持生命周期,但不想支付RHEL的品牌或支持的人。 虽然CentOS项目和Red Hat在2014年开始合作,但CentOS在技术上是一个独立的项目,它提供了一些版本的RHEL代码,可能会吸引开发人员。

使用CentOS的主要动机归结为系统的整体稳定性及其与RHEL的完全二进制兼容性。 如果您正在专门为RHEL开发软件,兼容性将是最重要的原因,但许多开发人员被吸引到类似RHEL的稳定性,因为它保证了一个可预测和可重复的环境。 与RHEL本身一样,CentOS的特定版本也被支持了多年。 例如,CentOS7将收到更新,直到2024年6月30日。

现在坏消息来了。 首先,在给定版本的CentOS中提供的软件几乎从未更改过。 对操作系统的支持包括对随操作系统发送的每个包的主要版本进行bug和安全修复,但不包括对这些包的实际升级。 一个例子:使用CentOS7的Nmap版本为6.40,而使用Fedora的版本为7.12。

更多坏消息:桌面构建中发现的许多常见组件默认不包括在任何CentOS版本中。 例如,在任何默认的CentOS存储库中,您都找不到MP3播放的支持。 对于IDE这样的通用开发工具也是如此。 默认情况下,CentOS中唯一可用的开发工具是Emacs和Vim等旧的可重复性。

不过,这并不难。 CentOS最大的第三方存储库之一,红帽软件集合回购,提供(顾名思义)软件集合来满足特定的需求。 例如,“devtoolset”集合包含Eclipse及其所有支持软件。 安装程序只需要几行输入:sudoyum安装centos-release-scl和sudoyum安装devtoolset-4。 另一种可能,也是一种可能,开发人员可能会发现特别有吸引力的取决于他们正在做什么,是安装Docker和使用容器图像为他们的软件需求。

CentOS的设置过程与Fedora的设置过程几乎相同。 唯一的主要区别在于是否安装kdump之类的实用程序或启用安全策略。 但是,如果您想要像一个完整的桌面开发环境这样的东西,您将不得不通过手工或通过上面描述的第三方回购来自己设置它。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢