良许Linux教程网 干货合集 NixOS:完美的 Linux 发行版?

NixOS:完美的 Linux 发行版?

当提到 Linux 发行版时,大家首先想到的可能是 Ubuntu、Debian 或者 Fedora 等等,但是今天我要向大家介绍一种不同寻常的 Linux 发行版——NixOS。

NixOS 是一个令人激动的发行版。让我们来看看为什么您可能想要尝试一下。

NixOS … 另一个使用不同包管理器的发行版?🤯

OK,NixOS 是高级 Linux 发行版之一。

所以如果我写这篇文章,我一定有一个非常可靠的理由,对吧?嗯,有很多!

我已经使用它 3 个月了,它非常好,以至于我正在考虑从我一直最喜欢的Pop!_OS 切换到 NixOS

在本指南中,我将分享 NixOS 的主要功能,使其从众多 Linux 发行版中脱颖而出。

image-20230505213249946
image-20230505213249946

别担心;在我们继续之前,让我告诉你 NixOS 是什么:

它是一个以 Nix 包管理器为核心的 Linux 发行版,为您省去了在不同 Linux 发行版上进行设置的麻烦,并让您充分利用 Nix。由开发 Nix 的同一团队构建。

使用 NixOS 的 6 个理由

NixOS 是一个有趣的独立 Linux 发行版,从头开始构建。

每个人都可以通过使用 NixOS 学到很多东西,但在我看来,如果你是开发人员或计算机科学专业的学生,NixOS 应该非常适合。

让我来告诉你为什么。

image-20230505213245410
image-20230505213245410

1. 不易弄坏/容易修复

NixOS 的核心是经久耐用。

这并不意味着它像 Debian 那样为了稳定性而附带了多年的软件包,而是它采用了不同的方法。

要了解 NixOS 为何如此稳定,让我们谈谈用户通常如何破坏他们的系统,即“依赖性问题或包冲突

在更新系统或安装新软件包时,您通常会遇到严重的系统崩溃。主要是因为你的包管理器无法满足依赖关系或者安装的包与现有系统冲突。

NixOS 有一种非常聪明的方式来处理这个问题。

看,无论何时升级系统或安装软件包,系统状态都会重建,称为当前的“新一代”。

因此,如果您在使用新包或更新时遇到任何问题,您可以随时回滚到老一代,在那里您会找到系统以前的状态。

即使系统无法访问,您也会发现前几代在启动时可用。

2. 再现性

使用一个配置文件,您可以为其他物理系统创建当前环境的副本。

要从此功能中受益,您可以使用 Nix 配置文件进行安装和配置。

获得适合您目的的配置文件后,将该文件发送到全新安装并用您的配置文件替换默认配置文件。就这么简单!

重建配置,升级系统,并通过给定的命令进行切换:

sudo nixos-rebuild switch --upgrade

您将在几分钟内复制出您在主机上拥有的开发环境。

相关:NixOS 22.05 发布,独立开发的 GNU/Linux https://www.linuxmi.com/nixos-22-05.html

image-20230505213240985
image-20230505213240985

3.轻松回滚

虽然您可能已经从 NixOS 的“ Generations ”功能中得到了灵感。

还有更多。🕵️

NixOS 严重依赖符号链接(永远)。如果这对您来说是一个新概念,请参阅以下指南:

如何在 Linux 中创建符号链接 [完整指南] https://www.linuxmi.com/creating-symbolic-links-in-linux.html

通常,对于其他 Linux 发行版,当您升级软件包时,新软件包会替换旧软件包。

但 NixOS 并非如此。

在 NixOS 中,包被隔离并存储在一个唯一的目录中,这就是使用符号链接的地方。

每当您升级软件包时,NixOS 都会调整符号链接以定位新软件包,但不会删除旧软件包

因此,如果您遇到与新包的冲突,只需切换到老一代,符号链接有助于找到包的旧版本。😌

4.Nix 包管理器

Nix 包管理器允许您访问超过 80,000 个包!不仅限于 Linux;它还适用于macOS、WSL2、Docker 和更多平台。

包的可用性与 AUR 相似甚至更好,因为你应该在 Nix 包管理器上找到几乎所有。

例如,我想安装 Librewolf 浏览器,它在大多数 Linux 发行版的默认存储库中不可用。

但是 Nix 有!这意味着几乎每个包都可以依赖 Nix 包管理器。

如果您之前有 Linux 经验,它也相对容易理解。简而言之,Nix 包管理器令人印象深刻!

5.使用同一个包的多个版本

这对于开发人员来说至关重要,因为某些应用程序需要特定依赖项的旧版本,而某些应用程序需要最新版本。

正如我之前提到的,nix 将包安装到特定的子目录,并且每个包都是隔离的,因此不会相互干扰!

在使用 Nix 之前,我使用 VM 和容器来满足同一包的不同依赖关系,尤其是 PHP,但 NixOS 为我的工作流程创造了奇迹。

6.无需安装即可测试包

您可以使用 nix-shell,它将临时修改 $PATH 环境变量并用于临时测试包。

并且没有限制。您可以测试每个可供安装的包!

NixOS 系列:让我们探索更多!

这是我们 Nix 系列的第一部分,我在其中介绍了使用 NixOS 的原因。我相信更多的 Linux 用户应该开始了解它,如果你们还不太清楚的话。

总之,NixOS 以其独特的特性和优势成为了备受关注的 Linux 发行版。无论你是 Linux 新手还是老手,都可以尝试一下这个系统,或许它会给你带来不一样的使用体验。

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部