什么是 Linux 发行版?为什么它被称为“发行版”
在这一章的 Linux 黑话解释中,我们来讨论一些基本的东西。
让我们来讨论一下什么是 Linux 发行版,为什么它被称为发行版distribution(或简称 distro),以及,它与 Linux 内核有什么不同。你还会了解到为什么有些人坚称 Linux 为 GNU/Linux。
什么是 Linux 发行版?
Linux 发行版是一个由 Linux 内核、GNU 工具、附加软件和软件包管理器组成的操作系统,它也可能包括显示服务器和桌面环境,以用作常规的桌面操作系统。
这个术语之所以是 “Linux 发行版”,是因为像 Debian、Ubuntu 这样的机构“发行”了 Linux 内核以及所有必要的软件及实用程序(如网络管理器、软件包管理器、桌面环境等),使其可以作为一个操作系统使用。
你的发行版还负责提供更新来维护其内核和其他实用程序。
所以,“Linux” 是内核,而 “Linux 发行版”是 操作系统。这就是为什么它们有时也被称为基于 Linux 的操作系统的原因。
如果不是很理解以上所有的内容,不要担心。下面我将详细解释一下。
“Linux 只是一个内核,不是一个操作系统。”这是什么意思?
你可能看到到过这句话,这说的没错。 内核是一个操作系统的核心,它接近于具体硬件。你使用应用程序和 shell 与它交互。
为了理解这一点,我就用我在《什么是 Linux 的详细指南》中曾用过的那个比喻。把操作系统看成车辆,把内核看成引擎。你不能直接驱动引擎。同样,你也不能直接使用内核。
一个 Linux 发行版可以看作是一个汽车制造商(比如丰田或福特)为你提供的现成的汽车,就像 Ubuntu 或 Fedora 发行版的发行商为你提供的一个基于 Linux 的现成操作系统一样。
什么是 GNU/Linux?
让我们再来看看这张图片。1991 年的时候, Linus Torvalds 创造的只是其中的最内圈,即 Linux 内核。
要使用 Linux,即使是以最原始的形式,甚至没有 GUI,你也需要一个 shell。最常见的是 Bash shell。
然后,你需要在 shell 中运行一些命令来完成一些工作。你能记起一些基本的 Linux 命令吗?比如 cat、cp、mv、grep、find、diff、gzip 等等。
严格来说,这些所谓的“Linux 命令”并不是只属于 Linux。它们中的很多都来源于 UNIX 操作系统。
在 Linux 诞生之前,Richard Stallman 就已经在 1983 年创建了自由软件项目free software project中的第一个项目:GNU(GNU 是“GNU is Not Unix” 的递归缩写)。 GNU 项目实现了许多流行的 Unix 实用程序,如 cat、grep、awk、shell(bash),同时还开发了自己的编译器(GCC)和编辑器(Emacs)。
在 80 年代, UNIX 是专有软件,而且超级昂贵。这就是为什么 Linus Torvalds 开发了一个类似 UNIX 的新内核的原因。为了与 Linux 内核进行交互,Linus Torvalds 使用了 GNU 工具,这些工具在其 GPL 开源许可证下是免费的。
有了这些 GNU 工具,它的行为也像 UNIX 一样。这就是为什么 Linux 也被称为类 UNIX 操作系统的原因。
你无法想象没有 shell 和所有这些命令的 Linux。由于 Linux 与 GNU 工具集成得很深,几乎是完全依赖于 GNU 工具,所以纯粹主义者要求 GNU 应该得到应有的认可,这就是为什么他们坚称它为 GNU Linux(写成 GNU/Linux)。
总结
那么,该用哪个术语?Linux、GNU/Linux、Linux 发行版,基于 Linux 的操作系统还是类 UNIX 操作系统?这取决于你的上下文。我已经为你提供了足够的细节,让你对这些相关的术语有更好的理解。
我希望你喜欢这个 Linux 黑话解释系列,并能学习到新的东西。欢迎你的反馈和建议。
什么是 Linux 发行版?为什么它被称为“发行版”相关推荐
- MSDN版,MSDN/OEM/RTM/VLK版的区别
们常常听说操作系统的MSDN版.OEM版.RTM版.VOL版等等,它们到底是什么意思,有什么不同呢? (一)MSDN (Microsoft Developer Network)版 MSDN软件是微软公 ...
- 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别. linux发行版介绍 2.安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图. 安装Cent ...
- linux 4.4内核特性,Linux Kernel 4.4.19 LTS长期支持版发布
原标题:Linux Kernel 4.4.19 LTS长期支持版发布 摘要:近日,内核开发者Greg Kroah-Hartman公布了长期支持的Linux 4.4 Kernel系列第19个维护版本的细 ...
- linux下虚拟安装cad,LeoCAD下载 LeoCAD(虚拟乐高模型创建工具) 32位/64位 Linux版 v18.01 官方英文安装版 下载-脚本之家...
LeoCAD(虚拟乐高模型创建工具)是一款来自国外,用于创建虚拟乐高积木模型的CAD程序,用户使用它能够搭建任何想象中的事物,类似空中楼阁.会飞的汽车.酷炫的太空飞梭,只有想不到没有做不到,非常炫酷, ...
- 适用于 Linux 的 VMware Horizon Client 5.5 发行说明
适用于 Linux 的 VMware Horizon Client 5.5 发行说明 Twitter FaceBook LinkedIn Weibo 添加到库 添加到库 RSS 纯文本 发送反馈 反馈 ...
- 拒绝从入门到放弃_《鸟哥的 Linux 私房菜 — 基础学习篇(第三版)》必读目录
目录 目录 前言 关于这本书 必看知识点 最后 前言 相信部分刚进入这个行业的新同学会对一个问题感到疑惑,为什么从培训学校出来的学员不被欢迎? 这里记录下一些我个人的看法(博主也曾有面试新员工的经历) ...
- 理解Linux系统中的load average(图文版)转载
理解Linux系统中的load average(图文版) 博客分类: Linux linux load nagios 一.什么是load average? linux系统中的Load对当前CPU工作 ...
- c linux下并行编程指南,Linux环境下C编程指南(第2版)
摘要: <Linux环境下C编程指南(第2版)>系统地介绍在Linux平台下用C语言进行程序开发的过程,通过列举大量的程序实例,使读者能够很快掌握在Linux平台下进行C程序开发的方法和技 ...
- 《Kali Linux高级渗透测试原书第2版》网络渗透测试技术书 无线网络渗透测试详解 黑客攻击与防范实战从入门到精通书
内容简介: KaliLinux面向专业的渗透测试和审计,集成了大量挑选的检测工具.本书在KaliLinux平台上从一个攻击者的角度来审视网络框架,详细介绍了攻击者"杀链"采取的具体 ...
最新文章
- 二丶Linux安装xdd-plus教程及必备依赖的安装+青龙对接xdd
- 中国基础软件历史性突破!Gartner最新报告:阿里云进入全球数据库领导者象限
- 从基于Maven的Web应用程序获取版本字符串
- win7禁用Adnimistrator账号登录
- 50.本地VMware环境虚拟机的异地(Azure)容灾(上)
- 在SQL Server中配置索引创建内存设置的最佳实践
- C#6.0 十大常用特性
- 软件类配置(六)【ubuntu16.04安装opencv3.4.1】
- java软件测试方法有哪些方法有哪些方法_软件测试方法和软件测试规则
- Android API 级别
- mac启动rabbitmq_从0到1学习Flink—— Flink 读取 Kafka 数据写入到 RabbitMQ
- 中国塔吊行业投资规划分析及前景预测报告2022-2028年版
- 结构体定义 typedef struct LNode 用法说明
- 蓉叶云库——简单介绍seo技术
- 网页鼠标点击特效代码
- 洛谷P3537 [POI2012]SZA-Cloakroom(背包)
- 如何查看电脑上是否安装了MySQL
- 红色的反色是青色引申出PS怎么反色之教程
- 【Android -- 开源库】数据库 Realm 的基本使用
- PHP防止vip视频被下载
热门文章
- python爬虫api接口,网易云音乐python爬虫api接口
- bzoj 2959: 长跑(LCT+并查集)
- 发送到谷歌邮箱的邮件在哪找_如何让Google表格为您发送个性化电子邮件
- Android入门视频教程,抖音音视频开发
- 【大话云原生】煮饺子与docker、kubernetes之间的关系
- 思科设备三层交换配置路由实现互通
- mysql表分区数量限制_详解MySQL分区表的局限和限制的代码实例
- CDN内容分发网络(上)
- SSM开发相关安装教程(idea、tomcat、maven、DB)
- 动什么别动感情 第66节:你不是一个虚荣的女性