操作系统中的凯文·加内特 - 一切皆有可能!
Linux是最广泛部署的桌面操作系统,可以轻松地为用户提供系统的完整运行。忠实于Unix传统,一切都是文件,没有任何被隔离或隐藏的文件。您可以轻松地将UEFI固件寄存器作为文件进行访问。例如,如果您在安装有Windows的设备上安装了Linux系统,那么您可以轻松地转储Windows许可证密钥。
Linux还可以让您读取和写入表示输入/输出硬件设备的文件。例如,您笔记本电脑屏幕的亮度显示为具有单个整数值的文件,您可以通过更改该文件的值来立即更改背光的强度。
因为一切都是文件,您可以将一个文件的输出输入到另一个文件中,将几乎任何两个功能链接在一起。想在视频通话中播放音频吗?只需获取表示音频播放的文件并将其输出重定向到表示麦克风输入的文件即可。
我们只是刚刚开始,但是希望这可以很好地说明Linux系统的多功能性。
这只企鹅:快速繁殖,没有天敌
Linux并不是唯一的Unix-y操作系统,但它有一个特别之处,那就是它出乎意料地接管了整个世界。
我并不觉得像Unix的系统变得如此普及有多么令人震惊。由于其优雅和灵活性,Unix经受住了时间的考验,并成为我们数字架构的支柱。但由于历史、技术和法律原因的奇怪汇合,Linux - 而不是Unix家族树的更中心的分支 - 扎根并像侵入物种一样繁荣起来。
结果是Linux成为了当今可能是最广泛部署的操作系统。每台Android设备都是Linux。虽然可靠的统计数据很难得到,但估计显示,从八分之一到五分之四的服务器安装都是Linux。此外,前500个超级计算机中的100%都运行Linux。
云部署统计数据更难得到,但鉴于AWS的云计算服务EC2的原始操作系统是“Amazon Linux”,Linux的市场份额必须非常巨大。Linux也已经被广泛用于汽车安装,并且甚至已经进入了游戏领域,例如Valve的Steam Deck。
许多亲戚,同一个家族树
在其许多形态下,Linux都是Linux:如果您(深入)了解其中一个,您就了解了所有内容。
很容易将一件事物的外在形式误认为是事物本身。初学者Linux桌面用户通常开始认为桌面环境,即可点击的桌面用户界面,是“Linux”。我肯定经历过这个阶段。然后,当用户通过Bash shell(Linux桌面上最常见的默认shell)深入探究桌面下面的类Unix结构时,那通常就成为用户对Linux的印象。我也经历过这个阶段。
但是Linux确实是文件系统的结构和内容、可用于其的无数内核模块以及如何协同工作。当然,这种结构在各个发行版之间可能会有相当大的差异。例如,初始化系统是systemd?Sys V?还是其他东西?可执行二进制文件存储在哪里?它们在/usr/local下吗?它们直接在/bin下吗?两者都是(并且它们使用符号链接)?
一旦掌握了这些变化,您就可以在任何Linux系统中感到自如。如果您喜欢Bash,但系统中只有zsh怎么办?有点烦人,但是可以应对(开玩笑,我的zsh朋友们)。一个shell就是一个shell。您可能要研究systemd的手册,但是您会度过难关(没有需要道歉的systemd粉丝,所以我很好)。当您运行lsblk时,Snap会在块设备上杂乱无章地充满虚拟条目,但是grep -v就是为了这个。
需要阅读手册并不会让一个系统变得陌生。如果你了解Linux,你就知道在Linux系统中需要查找什么才能完成工作。最坏的情况是你需要加载一个内核模块。但由于Linux从架构上来说就是内核,只要你拥有root访问权限,这个系统就永远对你开放。
其DNA的适应性
现在应该很明显了,Linux不是任何一种东西,但它也可以是。它能够将自己塑造成适应硬件和用例环境的形式,同时保持一致的内部结构,这就是Linux的特点。
适应性是它的基因之一。实际上,并非所有的Linux系统都是相同的,但它们都同样是Linux。