2020 年使用 Linux 的 5 大理由

回顾一下今年到目前为止的情况,并回顾一下您需要了解的关于 2020 年 Linux 的信息。
149 位读者喜欢这篇文章。
How Linux got to be Linux: Test driving 1993-2003 distros

Internet Archive Book Images。由 Opensource.com 修改。CC BY-SA 4.0

一些最好的技术是一个移动的目标。当技术停滞不前时,社会往往会超越和超过它。Linux,这个被广泛使用的开源操作系统 (OS),是一项基础技术,也是一些最先进的现代计算理念的基础。因此,虽然它在三十年的发展历程中惊人地保持不变,但它也允许适应。因此,Linux 处于独特的地位,它既是对技能的可靠投资,因为它不会改变,又是学习新技能的看似永恒的驱动力。

2020 年是奇怪的一年——无论从哪个角度来看——但对于 Linux 来说,这是一个典型的发展周期。回顾一下今年到目前为止的情况,并回顾一下您需要了解的关于 2020 年 Linux 的信息。

Linux 上的 ZFS

ZFS 文件系统为数据和元数据提供完整性检查,通过镜像提供冗余,支持高达 256 万亿 yobibytes 的存储空间,硬件加速的原生加密和高效的复制。ZFS 是 Sun Microsystems 的一项创新,但不幸的是,它的许可证禁止默认将其与 Linux 捆绑在一起。但是,OpenZFS 组织已将该项目移植到 BSD 和 Linux,因此您可以在从笔记本电脑到数据中心的任何设备上运行 ZFS。

在 Fedora Linux 上开始使用 ZFS 非常简单,正如 Sheng Mao 在他关于 在 Linux 上设置 ZFS 的文章中演示的那样。

Linux 中断

无论您对 Linux 有多熟悉,总有机会深入了解并发现它是如何出色地完成工作的。运行股票市场、数字电影工作室、音频工作站和其他性能密集型任务的计算机需要实时处理,而其他计算机在处理请求时可以稍微慢一些,管理计算机在任何给定毫秒内发生的无数循环并非易事。了解 Linux 内核如何以及为何管理中断请求 (IRQ) 可能对日常用户来说不是至关重要的,但无论您在计算机上做什么,这都是一项引人入胜的研究。阅读 Stephan Avenwedde 的文章“Linux 内核如何处理中断”以了解更多信息。

您口袋里的 Linux

由于 Google 的 Android OS 在 Linux 内核上运行,我们中的许多人在技术上都将 Linux 放在口袋里。尽管这可能令人感到安慰,但 Android 流畅的 Java 前端并不总是能提供许多 Linux 用户渴望的 Linux 感觉。而且有些用户根本没有 Android 手机。

好消息是您可以在您的 Android 或 iOS 设备上使用 Linux,包括终端、Bash、Python、软件包管理器以及您喜爱的开源桌面操作系统 (OS) 的所有其他功能。

如果您使用的是 Android,请阅读我关于 Termux 的文章。如果您使用的是 iOS,请阅读 Lee Tusman 关于 在您的 iOS 设备上运行 Linux 命令行 的精彩文章。

Linux 上的新命令

时间在流逝,有时过去那些古老而奇特的命令对于现代系统来说已经不够用了。尽管您的肌肉记忆可能仍然依恋于像 crontabifconfig(以及 iwconfigwpa_supplicant)这样的命令,但这些命令以及更多命令都有非常好的替代品。如果您无法让自己放弃旧命令,请熟悉 Bash 别名,因为这些新命令值得学习。

  • 放弃 ifconfig 改用 nmcli。听着,在某个时候,您必须承认 ifconfig 加上 iwconfig 以及对 wpa_supplicant 的尝试(您早就秘密地放弃了它,转而使用 wicd)这种不合理的组合就是效率低下。Linux 现在使用 nmcli,并且它已成为一种高度可用,有时甚至是直观的方式来与您的网络交互。阅读 Dave McKay 撰写的优秀 nmcli 教程
  • Cronjobs、atbatch 是独特的永恒命令,可能永远不应该被替换。它们非常适合快速简单的调度,但对于复杂的作业,您可能会在它们的补充工具中找到一些您喜欢的功能:systemd 定时器。David Both 提供了广泛的 systemd 定时器教程,演示了如何编写和监控重要的自定义系统任务。
  • gcoregdb 是开发人员可能熟悉的重要的调试器。Microsoft 的 ProcDump 是 gcore 功能的新版本,它获取进程 ID (PID) 的核心转储,以便您可以使用 gdb 对其进行分析。它更像是一种替代方案而不是替代品,但如果您对不同的工具感到好奇,则值得一试。阅读 Guarav Kamathe 撰写的 ProcDump 教程 以获取更多信息。

云在 Linux 上运行

随着“云”继续全速前进,Linux 仍然是其主要驱动力。云是由计算机(节点)和大规模分布式文件系统(例如 Ceph)组成的集合,通常使用 Kubernetes(“KOO-burr-net-eez”])或 OpenShift 进行管理。

无论您对笔记本电脑或台式机甚至私有数据中心中的 Linux 了解多少,在云上运行的容器中都有一个全新的 Linux 实验世界。学习如何适应短暂容器可能需要一些调整,但通过一些练习和一点上下文,您可以构建一些有趣的系统,然后使用 Kubernetes 来编排它们(即,使它们能够根据需要进行更新、扩展和执行)。

Jiaqi Liu 在“Kubernetes 容器编排初学者指南”中撰写了关于云工作流程的最佳概述之一。阅读它,然后下载 Chris Collins 的 Kubernetes eBook,在 Raspberry Pi 集群上构建您自己的家庭云。

开源增长

Linux 用户喜欢 Linux 的一致性和稳定性,并且操作系统 (OS) 能够保持不变,同时将其边界推向令人兴奋的新技术形式,这证明了原始 Unix 系统设计的卓越性。Linux 和开源的乐趣之一是当您开始学习新命令时所获得的发现感,以及当它奏效并使您的生活更轻松时所获得的成就感。看看最新的 Linux 开发成果,并立即开始尝试一些新的东西!

接下来阅读什么
标签
Seth Kenlon
Seth Kenlon 是一位 UNIX 极客、自由文化倡导者、独立多媒体艺术家和 D&D 爱好者。他曾在电影和计算机行业工作,而且经常同时在两个行业工作。

15 条评论

我总是从您那里学到新东西。真的很有趣。我不知道您可以在 iPhone 上运行 Linux。我必须去看看。

这么多年了,一直在等待 Linux 在桌面上成熟。现在等待 Appimage、Flatpak 和 Snap 的困境得到解决。希望 Wayland 有一天能够准备好,来处理许多新的屏幕显示选项。
同时,仍然像大多数桌面用户一样使用 Windows。Android,包括 Chrome OS,现在似乎正在挑战家庭和教育计算机的主要用户。Linux 能否跟上 Windows 和 Android 世界中正在加速的变化?

我想我过去 25 年在桌面上运行 Linux 的方式都不正确。但是,如果 Windows 适合您,那就这样吧。不幸的是,我不得不在工作中运行 Windows,我总是对 Windows 界面是如此原始感到惊讶。没有多桌面,剪贴板中只有一个项目,实际上只是一台单用户机器等等。

我在一所大学工作,我们有供学生使用的 Windows 计算机池,教师有 Windows 笔记本电脑(我们无法让他们摆脱 ppt)。大多数学生自带设备 (BYOD),主要是手机,大约 55% 是 Android,45% 是 iOS。学生似乎在手机上成功地完成了所有 IT 方面的工作。他们的眼睛一定很好,但我怀疑不会持续太久。我几乎看不清手机屏幕上的内容。

回复 ,作者:Greg Zeng

我建议您公平地试用一下 Linux 桌面。就像从一个操作系统 (OS) 切换到另一个操作系统 (OS) 一样,刚开始需要一些时间来适应,但很快就会开始感觉很自然,然后您会开始注意到 Linux 做的所有很酷的事情,而其他操作系统 (OS) 没有,然后您就被宠坏了。桌面 Linux 是一个很棒的地方;我无法想象使用其他任何东西。

回复 ,作者:Greg Zeng

在过去的几年中,Linux 作为 Windows 和 OS X 的桌面替代品已经变得好得多。Appimage、Flatpak 和 Snap 的一个方便之处在于,如果必须,您可以同时拥有这 3 个,而且我没有看到任何性能下降。我正在使用 Pop!_OS,它自带 Flatpak,但有一个应用程序仅在 Snaps 中可用,我只为它安装了 Snap。

几乎所有东西都有 GUI 覆盖,所以我不必使用命令行,但我出于偏好而使用命令行,有时 GUI 更麻烦。

当我安装 Windows 10(几年前)时,我的总体想法是“Windows 越来越像 Linux”;安装成功,通用驱动程序至少可用(有一些陷阱),并且他们希望进行快速更新发布(每年 1-2 次)。

使用浏览器的基于云的应用程序一直在增长,并且可能会随着当前在家工作 (Work From Home) 的情况而继续增长。Chromebook 的普及,尤其是在学校,也没有受到影响。

云解决方案一直是我的伟大均衡器。只要我有浏览器,无论系统如何,我都可以管理我的基本生产力水平。然后更多的应用程序正在走向(真正的)跨平台(不仅仅是 Windows、OS X 和 Android “跨平台”)。

这一切都取决于您使用计算机做什么。我保留 Windows 用于玩游戏。我的妻子有一个仅限 Windows 的应用程序。现在我在工作中,使用我的 Linux 桌面。YMMV。 :)

回复 ,作者:Greg Zeng

有很多机会提到 LineageOS 甚至 ubports,但没有提到... Android 遭受了很多漏洞的影响,虽然它随着时间的推移有所改进,但它在所有方面仍然是 GOOGLE 的产品。LineageOS 和最近兴起的旨在用于手机的合法纯 Linux 发行版,如 postmarketOS、Mobian、PureOS(等等),至少以正确的方式为同一平台做了 Linux。

我有一台台式电脑,我称之为视频编辑怪兽。在 M.2 驱动器上,我有 Linux Mint 20 Uylana Cinnamon 和 Ubuntu Studio。在一个 SSD 中,我在系统中安装了 Windows 10 Pro。我大约 85% 的时间使用 Linux Mint,使用 Ubuntu Studio 进行视频编辑,而 Windows 10 Pro 的使用时间不到我电脑时间的 2%。

那为什么还要保留 Win 10 呢?您可以在它占用的空间中试用另一个发行版。顺便说一句,我也是 Mint Ulyana Cinnamon 的主要工作站用户,但也尝试使用几个 Arch 衍生发行版,并让我的 Vanilla Debian 达到我想要的状态。

回复 ,作者:Palladini

我现在开始开发,我想从 Linux 开始,对于 Ubuntu 的新手来说,真的是最好的选择吗?
谢谢

Ubuntu 是一个不错的选择,因为它易于使用,并且可以在合理的范围内保持最新的库。

最终,我相信最好的 Linux 是最适合您的 Linux。我的意思是字面意思:将一个发行版加载到您的计算机上——如果一切都按预期工作,那就使用它。如果不是,请尝试另一个。您可能已经听说过流行的尝试对象:Ubuntu、Fedora、Elementary、Pop_OS、Debian。

回复 ,作者:vaneska

嗨,
非常有用的好文章
非常感谢

很棒的文章 Seth!
这绝对是一流的,并且充满了非常有用的信息!

我想补充一点的是在边缘使用 Linux。这将在未来几年成为一件大事,特别是对于 AI/ML 类型的用例。

> Linux 现在使用 nmcli,并且它已成为一种高度可用,有时甚至是直观的方式来与您的网络交互。

这是不正确的。NetworkManager 的 `nmcli` 在许多发行版上默认情况下不可用。`ifconfig` 的实际替代品实际上是带有 `ip` 的 iproute2 软件包。

很好的观点。

我并不是要暗示 nmcli 是 ifconfig 的字面替代品,只是用户可能想要考虑改用它。事实上,ifconfig 本身在大多数 Linux 发行版上仍然可用,因此甚至不需要 ip 命令本身。它们只是不错的替代方案。

回复 ,作者:Xanderificnl

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.