NixOS:完美的 Linux 发行版?
当提到 Linux 发行版时,大家首先想到的可能是 Ubuntu、Debian 或者 Fedora 等等,但是今天我要向大家介绍一种不同寻常的 Linux 发行版——NixOS。
NixOS 是一个令人激动的发行版。让我们来看看为什么您可能想要尝试一下。
NixOS … 另一个使用不同包管理器的发行版?🤯
OK,NixOS 是高级 Linux 发行版之一。
所以如果我写这篇文章,我一定有一个非常可靠的理由,对吧?嗯,有很多!
我已经使用它 3 个月了,它非常好,以至于我正在考虑从我一直最喜欢的Pop!_OS 切换到 NixOS。
在本指南中,我将分享 NixOS 的主要功能,使其从众多 Linux 发行版中脱颖而出。

别担心;在我们继续之前,让我告诉你 NixOS 是什么:
“
它是一个以 Nix 包管理器为核心的 Linux 发行版,为您省去了在不同 Linux 发行版上进行设置的麻烦,并让您充分利用 Nix。由开发 Nix 的同一团队构建。
”
使用 NixOS 的 6 个理由
NixOS 是一个有趣的独立 Linux 发行版,从头开始构建。
每个人都可以通过使用 NixOS 学到很多东西,但在我看来,如果你是开发人员或计算机科学专业的学生,NixOS 应该非常适合。
让我来告诉你为什么。

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

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 新手还是老手,都可以尝试一下这个系统,或许它会给你带来不一样的使用体验。
以上是NixOS:完美的 Linux 发行版?的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

CentOS 和 Ubuntu 的关键差异在于:起源(CentOS 源自 Red Hat,面向企业;Ubuntu 源自 Debian,面向个人)、包管理(CentOS 使用 yum,注重稳定;Ubuntu 使用 apt,更新频率高)、支持周期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社区支持(CentOS 侧重稳定,Ubuntu 提供广泛教程和文档)、用途(CentOS 偏向服务器,Ubuntu 适用于服务器和桌面),其他差异包括安装精简度(CentOS 精

CentOS 安装步骤:下载 ISO 映像并刻录可引导媒体;启动并选择安装源;选择语言和键盘布局;配置网络;分区硬盘;设置系统时钟;创建 root 用户;选择软件包;开始安装;安装完成后重启并从硬盘启动。

CentOS 已停止维护,替代选择包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(与 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商业版,付费许可);5. Oracle Linux(与 CentOS 和 RHEL 兼容)。在迁移时,考虑因素有:兼容性、可用性、支持、成本和社区支持。

如何使用 Docker Desktop?Docker Desktop 是一款工具,用于在本地机器上运行 Docker 容器。其使用步骤包括:1. 安装 Docker Desktop;2. 启动 Docker Desktop;3. 创建 Docker 镜像(使用 Dockerfile);4. 构建 Docker 镜像(使用 docker build);5. 运行 Docker 容器(使用 docker run)。

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

Docker镜像构建失败的故障排除步骤:检查Dockerfile语法和依赖项版本。检查构建上下文中是否包含所需源代码和依赖项。查看构建日志以获取错误详细信息。使用--target选项构建分层阶段以识别失败点。确保使用最新版本的Docker引擎。使用--t [image-name]:debug模式构建镜像以调试问题。检查磁盘空间并确保足够。禁用SELinux以防止干扰构建过程。向社区平台寻求帮助,提供Dockerfile和构建日志描述以获得更具体的建议。

VS Code 系统要求:操作系统:Windows 10 及以上、macOS 10.12 及以上、Linux 发行版处理器:最低 1.6 GHz,推荐 2.0 GHz 及以上内存:最低 512 MB,推荐 4 GB 及以上存储空间:最低 250 MB,推荐 1 GB 及以上其他要求:稳定网络连接,Xorg/Wayland(Linux)

CentOS 停止维护后,用户可以采取以下措施应对:选择兼容发行版:如 AlmaLinux、Rocky Linux、CentOS Stream。迁移到商业发行版:如 Red Hat Enterprise Linux、Oracle Linux。升级到 CentOS 9 Stream:滚动发行版,提供最新技术。选择其他 Linux 发行版:如 Ubuntu、Debian。评估容器、虚拟机或云平台等其他选项。
