Linux操作系统选择
主流的操作系统
- ubuntu
- centos
- debian
- oracle linux
主要使用的操作系统就是上面几个,主要是ubuntu和centos,debian是基于ubuntu改的,oracle linux是基于centos改的
操作系统介绍
ubuntu操作系统
ubuntu操作系统是主打桌面的一个操作系统,软件包的更新比较快,内核的版本用的比较新,如果软件系统都是采用的比较新的库和新的内核,那么可以考虑使用这个系统,当然缺点就是系统的维护周期较短,需要去比较频繁的升级来适应新的系统
Ubuntu每6个月发布一个新版,每个版本都有代号和版本号。版本号源自发布日期,例如第一个版本,4.10,代表是在2004年10月发行的
版本 | 开发代号 | 发布日期 | 支持结束时间 | 内核版本 |
---|---|---|---|---|
4.1 | Warty Warthog | 2004/10/20 | 2006/4/30 | 2.6.8 |
5.04 | Hoary Hedgehog | 2005/4/8 | 2006/10/31 | 2.6.10 |
5.1 | Breezy Badger | 2005/10/13 | 2007/4/13 | 2.6.12 |
6.06 LTS | Dapper Drake | 2006/6/1 | 2011/6/1 | 2.6.15 |
6.1 | Edgy Eft | 2006/10/26 | 2008/4/25 | 2.6.17 |
7.04 | Feisty Fawn | 2007/4/19 | 2008/10/19 | 2.6.20 |
7.1 | Gutsy Gibbon | 2007/10/18 | 2009/4/18 | 2.6.22 |
8.04 LTS | Hardy Heron | 2008/4/24 | 2013/5/9 | 2.6.24 |
8.1 | Intrepid Ibex | 2008/10/30 | 2010/4/30 | 2.6.27 |
9.04 | Jaunty Jackalope | 2009/4/23 | 2010/10/23 | 2.6.28 |
9.1 | Karmic Koala | 2009/10/29 | 2011/4/30 | 2.6.31 |
10.04 LTS | Lucid Lynx | 2010/4/29 | 2015/4/30 | 2.6.32 |
10.1 | Maverick Meerkat | 2010/10/10 | 2012/4/10 | 2.6.35 |
11.04 | Natty Narwhal | 2011/4/28 | 2012/10/28 | 2.6.38 |
11.1 | Oneiric Ocelot | 2011/10/13 | 2013/5/9 | 3.0 |
12.04 LTS | Precise Pangolin | 2012/4/26 | 2017/4/28 | 3.2 |
12.1 | Quantal Quetzal | 2012/10/18 | 2014/5/16 | 3.5 |
13.04 | Raring Ringtail | 2013/4/25 | 2014/1/27 | 3.8 |
13.1 | Saucy Salamander | 2013/10/17 | 2014/7/17 | 3.11 |
14.04 LTS | Trusty Tahr | 2014/4/17 | 2019/4/25 | 3.13 |
14.1 | Utopic Unicorn | 2014/10/23 | 2015/7/23 | 3.16 |
15.04 | Vivid Vervet | 2015/4/23 | 2016/2/4 | 3.19 |
15.1 | Wily Werewolf | 2015/10/22 | 2016/7/28 | 4.2 |
16.04 LTS | Xenial Xerus | 2016/4/21 | 2021/4/1 | 4.4 |
16.1 | Yakkety Yak | 2016/10/13 | 2017/7/20 | 4.8 |
17.04 | Zesty Zapus | 2017/4/13 | 2018/1/13 | 4.10 |
17.1 | Artful Aardvark | 2017/10/19 | 2018/7/19 | 4.13 |
18.04 LTS | Bionic Beaver[65][66] | 2018/4/26 | 2023/4/1 | 4.15 |
18.1 | Cosmic Cuttlefish | 2018/10/18 | 2019/7/18 | 4.18 |
19.04 | Disco Dingo | 2019/4/18 | 2020/1/1 | 5.0 |
19.1 | Eoan Ermine | 2019/10/17 | 2020/7/1 | 5.3 |
20.04 LTS | Focal Fossa | 2020/4/23 | 2025/4/1 | 5.5 |
centos操作系统
发布历史
版本 | RHEL 版本 | 发布日期 | RHEL 发布日期 |
---|---|---|---|
2 | 2.1 | 2004/5/14 | 2002/5/17 |
3.1 | 3 | 2004/3/19 | 2003/10/23 |
3.4 - Server CD | 3.4 | 2005/1/23 | - |
3.7 | 3.7 | 2006/4/11 | - |
3.8 | 3.8 | 2006/8/25 | 2006/7/20 |
3.9 | 3.9 | 2007/7/26 | 2007/6/15 |
4 | 4 | 2005/3/9 | 2005/2/14 |
4.6 | 4.6 | 2007/12/16 | 2007/11/16 |
4.7 | 4.7 | 2008/9/13 | 2008/7/24 |
4.7 - Server CD | 4.7 | 2008/10/17 | - |
4.8 | 4.8 | 2009/8/21 | 2009/5/18 |
4.9 | 4.9 | 2011/3/2 | 2011/2/16 |
5 | 5 | 2007/4/12 | 2007/3/14 |
5.1 | 5.1 | 2007/12/2 | 2007/11/7 |
5.1 - LiveCD | 5.1 | 2008/2/18 | - |
5.2 | 5.2 | 2008/6/24 | 2008/5/21 |
5.2 - LiveCD | 5.2 | 2008/7/17 | - |
5.3 | 5.3 | 2009/3/31 | 2009/1/20 |
5.3 - Live CD | 5.3 | 2009/5/27 | - |
5.4 | 5.4 | 2009/10/21 | 2009/9/2 |
5.5 | 5.5 | 2010/5/14 | 2010/3/31 |
5.5 - LiveCD | 5.5 | 2010/5/14 | - |
5.6 | 5.6 | 2011/4/8 | 2011/1/13 |
5.7 | 5.7 | 2011/9/13 | 2011/7/21 |
5.8 | 5.8 | 2012/3/7 | 2012/2/21 |
5.9 | 5.9 | 2013/1/17 | 2013/1/7 |
5.1 | 5.1 | 2013/10/19 | 2013/10/1 |
5.11 | 5.11 | 2014/9/30 | 2014/9/16 |
6 | 6 | 2011/7/10 | 2010/11/10 |
6.0 - LiveCD | 6 | 2011/7/25 | - |
6.0 - LiveDVD | 6 | 2011/7/27 | - |
6.0 - MinimalCD | 6 | 2011/7/28 | - |
6.1 | 6.1 | 2011/12/9 | 2011/5/19 |
6.1 - LiveCD | 6.1 | 2011/12/9 | - |
6.1 - LiveDVD | 6.1 | 2011/12/9 | - |
6.1 - MinimalCD | 6.1 | 2011/12/9 | - |
6.2 | 6.2 | 2011/12/20 | 2011/12/6 |
6.2 - LiveCD | 6.2 | 2011/12/20 | - |
6.2 - LiveDVD | 6.2 | 2011/12/20 | - |
6.2 - MinimalCD | 6.2 | 2011/12/20 | - |
6.3 | 6.3 | 2012/7/9 | 2012/6/21 |
6.4 | 6.4 | 2013/3/9 | 2013/2/21 |
6.5 | 6.5 | 2013/12/1 | 2013/11/21 |
6.6 | 6.6 | 2014/10/28 | 2014/10/14 |
6.7 | 6.7 | 2015/8/7 | 2015/7/22 |
6.8 | 6.8 | 2016/5/25 | 2016/5/9 |
6.9 | 6.9 | 2017/4/5 | 2017/3/21 |
6.1 | 6.1 | 2018/7/3 | 2018/6/19 |
7-1406 | 7 | 2014/7/7 | 2014/6/10 |
7-1503 | 7.1 | 2015/3/31 | 2015/3/6 |
7-1503-AArch64 | 7.1 | 2015/8/4 | 2015/3/6 |
7-1503-i386 | 7.1 | 2015/10/12 | 2015/3/6 |
7-1511 | 7.2 | 2015/12/14 | 2015/11/19 |
7-1611 | 7.3 | 2016/12/12 | 2016/11/3 |
7-1708 | 7.4 | 2017/9/13 | 2017/8/1 |
7-1804 | 7.5 | 2018/5/10 | 2018/4/10 |
7-1810 | 7.6 | 2018/12/3 | 2018/10/30 |
7-1908 | 7.7 | 2019/9/17 | 2019/8/6 |
8-1905 | 8 | 2019/9/24 | 2019/5/7 |
centos可以理解为redhat的开源版本,现在也是红帽在维护在,红帽会自己合入一些补丁包来完成企业支持,现在centos已经被红帽收购
维护周期
发行版本 | 完整更新 | 维护更新 |
---|---|---|
3 | 2006-07-20 | 2010-10-31 |
4 | 2009-03-31 | 2012-02-29 |
5 | 2014-01-31 | 2017-03-31 |
6 | 2017-05-10 | 2020-11-30 |
7 | 2020-08-06 | 2024-06-30 |
8 | 2024-05-01 | 2029-05-01 |
从上面的维护周期可以看到,如果还在用centos6那么官方的维护已经只到2020-11-30,并且不会再出小版本了
而现在的7已经稳定使用了一段时间了,8才出来不久,整体上来说,个人建议直接采用centos7最新版本即可,后面还会出几个完整更新的,整体软件不会打的改动
尝新的话可以用8,这个就看自身的软件的适应程度了
debian操作系统
debian版本和ubuntu版本对应关系
ubuntu版本号 | ubuntu版本名称 | debian名称 | debian版本号 |
---|---|---|---|
19.04 | disco | buster | -10 |
18.1 | cosmic | buster | |
18.04 | bionic | buster | |
17.1 | artful | stretch | -9 |
17.04 | zesty | stretch | |
16.1 | yakkety | stretch | |
16.04 | xenial | stretch | |
15.1 | wily | jessie | -8 |
15.04 | vivid | jessie | |
14.1 | utopic | jessie | |
14.04 | trusty | jessie | |
13.1 | saucy | wheezy | -7 |
13.04 | raring | wheezy | |
12.1 | quantal | wheezy | |
12.04 | precise | wheezy | |
11.1 | oneiric | wheezy | |
11.04 | natty | squeeze | -6 |
10.1 | maverick | squeeze | |
10.04 | lucid | squeeze |
从整体上面看debian更新的没ubuntu那么快,会保守很多,一些企业不喜欢频繁变动版本的可以考虑使用这个
oracle linux
可能很多人并不了解这个版本,但是这个版本你可以理解为免费的企业版本的红帽,这里面肯定有个疑惑是,为什么又是企业版本又是免费,并且这个oracle 不是做数据库的么,这个linux是oracle 来维护的自己的版本,是基于centos版本做的,并且提供了一个更好的内核,可以选择主线版本内核,也提供了一个比较高版本的内核,并且内核名称是The Unbreakable Enterprise Kernel (UEK),从名称上面看是坚不可摧的企业版内核,这个内核也可以直接安装到centos上的,也就是能够适配centos,这个肯定没有问题的
在centos还是6版本的时候,由于相互的系统的策略不同,ubuntu下的性能明显要高于centos的,这个你觉得不都是一样的硬件,为什么会有差距,这个是我们之前在相同硬件,大压力下面,ubuntu扛住了,而centos6没有扛住,这个时候,切换了oracle linux,发现基本上是能够跟当时的ubuntu差不多的
这个问题是发生在centos6的时代,在进入centos 7的时代后,发现相同的压力硬件下,centos7的性能又进一步提升了,再后来来看ubuntu和centos7 差距就没centos6那么明显
这里为什么推荐oracle linux,如果你的团队没有维护os的能力,没有定制或者调优的能力,那么有这么一款比默认centos的要好一些的,并且提供了企业级的操作系统,这个还是很值得一用的,这个在之前os我自己做维护的时候,就是采用的这个os,但是现在os不是我去控制,各方面的协调的东西太多,就放弃了这个os的选择
实际情况是如果软件做的足够去耦合,应该是像安装一个samba一样,提供一个核心的软件以后,其它的依赖是可以随便使用哪个平台的,也就不存在一个适配平台的成本了,而实际情况是开发为了方便代码的编写,在做整包系统里面会去导入一些比较特殊的依赖包,并且版本不是去用os依赖的形式维护,就造成了整体搬迁的麻烦,这个部分在未来会更详细的去介绍这块的思路
总结
本篇章介绍了几个主流的os,关于os的选择,可以根据自己的需要去选择,如果自己的软件比较小,需要的东西新,可以使用ubuntu版本,如果是做企业级比较复杂的软件,可以是用centos系列的操作系统,个人推荐是用centos或者oracle linux的
更新历史
why | when |
---|---|
创建 | 2019年09月01日 |
更新 | 2019年12月9日 |
Linux操作系统选择的更多相关文章
- 安装linux操作系统
安装双操作系统; 1 0. 介绍: 1 1 实验环境: 2 2. 实验准备: 2 3.开始安装: 2 1 制作U盘启动工具: 2 2.安装LinuxOS. 3 2.1在windowOS中划分60G空间 ...
- 在Linux操作系统下备份恢复技术的应用 转自https://yq.aliyun.com/articles/50205?spm=5176.100239.blogcont24250.9.CfBYE9
摘要: 安全防护:在Linux操作系统下备份恢复技术的应用 原文参见:http://linux.chinaunix.net/techdoc/system/2005/12/19/925898.shtm ...
- (安装linux操作系统)
安装linux centos系统. 准备一张centos的镜像可以去官网下载. 准备VMware Workstation官网下载. 作为初学者一般都用虚拟机安装(VMwareWorkstation), ...
- 献给初学者:谈谈如何学习Linux操作系统
本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式 ...
- Linux操作系统基础(完结)
摘要 一.Linux操作系统概述 二.Linux操作系统安装 三.Linux文件系统及文件基础 四.Linux操作系统命令使用基础 五.Linux应用程序的安装与卸载基础 五.用户及进程 六.相关信息 ...
- 安装Kali Linux操作系统Kali Linux无线网络渗透
安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大 ...
- linux 操作系统下c语言编程入门
2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理 ...
- Linux操作系统基础(四)保护模式内存管理(2)【转】
转自:http://blog.csdn.net/rosetta/article/details/8570681 Linux操作系统基础(四)保护模式内存管理(2) 转载请注明出处:http://blo ...
- 安装linux操作系统--浪潮服务器
一直都是在虚拟机上进行安装linux操作系统,在服务器上安装的很少,也没有碰到过没找到驱动的情况,例如什么raid卡驱动,网卡驱动等异常情况的发生. 这次安装了两台服务器,浪潮的提供的服务器,硬盘是两 ...
随机推荐
- spring boot:用redis+lua实现基于ip地址的分布式流量限制(限流/简单计数器算法)(spring boot 2.2.0)
一,限流有哪些环节? 1,为什么要限流? 目的:通过对并发请求进行限速或者一个时间单位内的的请求进行限速,目的是保护系统可正常提供服务,避免被压力太大无法响应服务. 如果达到限制速率则可以采取预定的处 ...
- swoole创建进程
<?php /** * Created by PhpStorm. * User: mac * Date: 2020/4/23 * Time: 21:57 */ use Swoole\Proces ...
- 第六章 IP基本原理
一.引入 1.IP是网络层协议,也是当今应用最广泛的网络协议之一 2.IP协议规定了数据的封装方式,网络节点的标识方法,用于网络上数据的端到端的传递. 二.IP协议概述 1.IP及相关协议 2.IP的 ...
- <!DOCTYPE>,<address>,<applet>的用法
希望以下内容能让大家有所收获 HTML <!DOCTYPE> 标签 实例 <!DOCTYPE html> <html> <head> <title ...
- 用python和GDAL 读取GRIB数据
from osgeo import gdal import numpy as np path = './data/201912/anl_surf125.2019120100' dataset = gd ...
- C# 9.0 新特性预览 - init-only 属性
C# 9.0 新特性预览 - init-only 属性 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章 ...
- Redis基础(三)Redis持久化:RDB与AOF
什么是Redis持久化? Redis是键值对的内存数据库,它将数据存储在内存里.客户端发送命令到服务器,再由服务器到内存里查找数据. 一旦Redis服务器进程退出,存储在内存里的数据就会丢失. 为了解 ...
- Filebeat 根据不同的日志设置不同的索引
平时在物理机上使用 Filebeat 收集日志时,会编写多个 filebeat 配置文件然后启动多个 filebeat 进程来收集不同路径下的日志并设置相对应的索引.那么如果将所有的日志路径都写到一个 ...
- Java线程池初步解读
好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star 几个月前,写了一篇<Java并发学习(一):进程和线 ...
- k8s部署之系统初始化(一)
初始化 1.安装依赖包 yum -y install tree lrzsz nmap nc telnet vim wget lsof network-tools bash-completion bas ...