完成2.3
This commit is contained in:
parent
6eb178c31d
commit
7305a4a142
File diff suppressed because it is too large
Load Diff
After Width: | Height: | Size: 526 KiB |
Binary file not shown.
After Width: | Height: | Size: 86 KiB |
|
@ -0,0 +1,71 @@
|
|||
# Linux 发行版(distribution, distro)
|
||||
|
||||
## 什么是 Linux 发行版
|
||||
|
||||
> Linux 发行版是一个由 Linux 内核、GNU 工具、附加软件和软件包管理器组成的操作系统,它也可能包括显示服务器和桌面环境,以用作常规的桌面操作系统。
|
||||
> 以上内容摘自 linux.cn
|
||||
|
||||
如果你不是理解以上的内容,那么请跟随我往下看:
|
||||
|
||||
我们前文提到了`Linux Kernel`。Linux Kernel只是一个操作系统的核心,甚至连一个能够操作的界面都没有。而我们常常提到的`Linux`通常指Linux发行版,而发行版就相当于在Linux Kernel外面添加了诸多软件,可以让Linux“开箱即用”(我们有时说的`OOBE`就是“开箱即用体验”的意思)。
|
||||
|
||||
这些发行版附带了很多来自 GNU 的开源软件,所以这类发行版也被称为`GNU/Linux 发行版`。
|
||||
|
||||
Linux基本命令中的极大部分都来自 GNU(coreutils),如 `cat`、`grep`、`awk`、`bash`,甚至最简单的`ls`、`cp`,都来自于 GNU。
|
||||
|
||||
> 当然 GNU 工具并不是唯一的选择,常见的还有嵌入式的`busybox`等。
|
||||
|
||||
如果没有这些工具,你甚至连一个只能敲命令的黑框框(tty)都见不到。
|
||||
|
||||
> 目前唯一的非 GNU/Linux 发行版是 Android AOSP,就是我们平常用的安卓手机(准确来说AOSP只是个基础)。
|
||||
> AOSP使用了非常复杂的方法把内核独立出来,包括 glibc 等东西都重写了一遍,从而无需遵守内核和 GNU 各个组件的 GPL 开源协议。(不过这事一直都有争议)
|
||||
|
||||
用我们前面的比喻:内核就是一辆汽车的引擎,而软件就是汽车的其它部分,这两者缺一不可。而发行版就是直接给你了一辆完整的汽车,你可以直接开走。
|
||||
|
||||
甚至绝大多数的发行版的内核都是可以手动更换的,并且也不会太麻烦。
|
||||
|
||||
## 有哪些 Linux 发行版
|
||||
|
||||
说到Linux发行版,那可真的是成千上万了。有一个项目 [Linux Distribution Time Line](https://github.com/FabioLolix/LinuxTimeline) 展示了大多数Linux发行版之间的关系。不过这里面的绝大多数我们听都没听说过。
|
||||
|
||||
完整的图片在[文章结尾](#linuxdistributiontimeline)
|
||||
|
||||
笔者在下面总结了一些常见发行版:
|
||||
![Distros](./assets/2.3.2.png)
|
||||
|
||||
* `RedHat` 使用 rpm/yum 管理软件包的一款发行版,有良好的企业级支持,但是 Enterprise 需要付费(衍生无需)。
|
||||
* `CentOS` 之前服务器最常用的 Linux 发行版(CentOS 7&8),不过现在已部分停止开发,使用人数较少
|
||||
* `RockyLinux` 新兴的 RedHat 系发行版,可以作为CentOS的继任者在服务器端使用,也可用于桌面系统
|
||||
* `Debian` 使用 dpkg/apt 管理软件包,操作简单,功能易学丰富,也适合作为服务器系统
|
||||
* `Ubuntu` 最受欢迎的桌面Linux发行版,笔者初入Linux选择的就是本系统。Ubuntu还有Server服务器版本,不过不是很好用
|
||||
* `Deepin` 国产的一款Linux系统,使用独有的DDE桌面,开箱即用界面美观,但是bug较多,且性能要求较高
|
||||
* `ArchLinux` 使用独有的 pacman 管理软件包,有庞大的AUR支持。新手上手难度极高,默认只有命令行界面,但定制性也极高,但是系统为滚动更新,较不稳定,容易“滚挂”(指更新软件包导致系统无法启动等问题),被网友戏称为“邪教”
|
||||
* `Manjaro` 一款基于 ArchLinux 的带有图形界面的发行版,新手较为友好
|
||||
* `SteamOS` 一款默认被用在 SteamDeck 上的专为游戏设计的操作系统,对游戏的兼容性较好
|
||||
|
||||
还有一些比较小众的发行版,如`nixos`、`SUSE`,这里不一一说明了。
|
||||
|
||||
## 如何选择适合的发行版
|
||||
|
||||
选择发行版没有一个完美的答案,真正还要根据你自身来选择。不同发行版有不同优势。
|
||||
|
||||
搭建网页可以选 RockyLinux 或是 Debian,安全稳定文档多。
|
||||
如果你在为一家企业搭建服务并有充足预算,可以使用 RedHatEnterprise。
|
||||
|
||||
长期使用可以优先选 Ubuntu,小白可以尝试 Deepin,软件包格式方便好找,自带应用商店。
|
||||
|
||||
如果你有足够的基础和一定英文能力(其实大学四六级应该就够了),喜欢折腾,那么ArchLinux是你的不二之选,占用小,可定制性极强。无论如何,Archlinux不应被安装在追求稳定的服务器上。
|
||||
|
||||
如果你不打算安装在实体机上,那么还是推荐 `RockyLinux`。
|
||||
|
||||
> 记住:发行版之间的软件都是通用的,你甚至可以在Arch上安装dpkg,区别只有自带的软件和软件的安装方式不同
|
||||
|
||||
下文我们所使用的发行版均为 `RockyLinux`,RedHat系的发行版可以直接使用绝大部分命令,其它发行版如命令中出现`yum`,`rpm`请自行替换成对应的包管理器。并且部分包名和软件安装方式不同,当出现问题时你可以去“百度一下”,看官方文档,去社区寻找答案,或是问ChatGPT。
|
||||
|
||||
## 附录
|
||||
|
||||
### LinuxDistributionTimeLine
|
||||
|
||||
> (2024.6.6构建)
|
||||
|
||||
![Linux Distribution Time Line](./assets/2.3.1.svg)
|
|
@ -71,13 +71,13 @@ OS 2: Windows 11
|
|||
|
||||
都可以流畅在 VirtualBox 运行虚拟机。
|
||||
|
||||
我们现在常见的虚拟机软件有一下几款:
|
||||
我们现在常见的虚拟机软件有以下几款:
|
||||
|
||||
1. VMWare Workstation
|
||||
|
||||
这是一款常见的企业级虚拟机软件。自从被博通收购后,产品对个人用户免费。
|
||||
优点: 有完整的官方文档支持,新手教程多
|
||||
缺点: 不开源,异常问题较难解决
|
||||
缺点: 不开源,异常问题较难解决,被博通收购后下载链接很难找并且需要登录
|
||||
2. VirtualBox
|
||||
|
||||
这是一款开源免费的虚拟机软件,由 Oracle 维护。
|
||||
|
|
|
@ -35,4 +35,4 @@ Dennis Ritchie得知了这个这个计划后,就开始和Ken一起将Unix使
|
|||
|
||||
> 因为篇幅限制,所以本文省略了很多东西,如果想要看看更完整的资料可以查阅[Linux考古笔记](https://tinylab-1.gitbook.io/lad-book/zh-cn/background/history)
|
||||
|
||||
现在的 Linux 发行版(就是linux内核与软件包的结合,下一篇文章会详细讲述)包含着很多其它GNU中的软件。你如今可以在 [kernel.org](https://kernel.org) 下载Linux内核,也可以在GNU官网找到其它GNU软件并安装在Linux。
|
||||
现在的 Linux 发行版(就是linux内核与软件包的结合,下一篇文章会详细讲述)包含着很多其它GNU中的软件。你如今可以在 [kernel.org](kernel.org) 下载Linux内核,也可以在GNU官网找到其它GNU软件并安装在Linux。
|
||||
|
|
Loading…
Reference in New Issue