ホームページ >システムチュートリアル >Linux >NixOS: 完璧な Linux ディストリビューション?
Linux ディストリビューションというと、Ubuntu、Debian、Fedora などが最初に思い浮かぶかもしれませんが、今日は珍しい Linux ディストリビューション、NixOS を紹介したいと思います。
NixOS はエキサイティングなディストリビューションです。試してみたくなる理由を見てみましょう。
NixOS…別のパッケージマネージャーを使用する別のディストリビューション? 🤯
OK、NixOS はプレミアム Linux ディストリビューションの 1 つです。
つまり、これを書いているのであれば、かなりしっかりした理由が必要ですよね?まあ、たくさんありますよ!
私はこれを 3 か月間使用していますが、非常に優れているため、いつもお気に入りの Pop!_OS から NixOS に切り替えることを検討しています。
このガイドでは、数多くの Linux ディストリビューションの中で NixOS を際立たせる主要な機能を共有します。
心配しないでください。続ける前に、NixOS とは何かについて説明しましょう:
#NixOS を使用する 6 つの理由#「」
これは、Nix パッケージ マネージャーを中核とした Linux ディストリビューションであり、さまざまな Linux ディストリビューションでセットアップする手間を省き、Nix を最大限に活用できるようになります。 Nix を開発したのと同じチームによって構築されました。
」
NixOS を使用すると、誰でも多くのことを学ぶことができますが、私の意見では、開発者またはコンピューター サイエンスの学生には、NixOS が適しているはずです。
その理由を教えてください。
1. 壊れにくい/修理しやすいこれは、Debian のように何年もの間安定性を保つためのパッケージが同梱されるという意味ではありませんが、異なるアプローチを採用しています。
NixOS がなぜ非常に安定しているのかを理解するために、ユーザーが通常どのようにシステムを壊すのか、つまり「
依存関係の問題またはパッケージの競合」について話しましょう。 システムを更新したり、新しいパッケージをインストールしたりすると、重大なシステムクラッシュが発生することがよくあります。主な理由は、パッケージ マネージャーが依存関係を満たすことができないか、インストールされているパッケージが既存のシステムと競合するためです。
NixOS は、この問題を処理する非常に賢い方法を備えています。
システムをアップグレードするかパッケージをインストールするたびに、 システム状態が再構築されます。
これは、現在の「新世代」と呼ばれます。 そのため、新しいパッケージやアップデートで問題が発生した場合は、いつでも古い世代にロールバックすることができ、 古い世代のシステムの以前の状態が表示されます。
システムにアクセスできない場合でも、起動時に以前の世代が利用可能であることがわかります。
2. 再現性
目的に合った構成ファイルを取得したら、そのファイルを新規インストールに送信し、デフォルトの構成ファイルを自分の構成ファイルに置き換えます。それはとても簡単です!
指定されたコマンドを使用して構成を再構築し、システムをアップグレードし、切り替えます:
リーリー わずか数分で、ホスト マシン上に開発環境のコピーが作成されます。
関連: NixOS 22.05 がリリース、独自開発の GNU/Linux https://www.linuxmi.com/nixos-22-05.htmlあなたは NixOS の「Generations」機能からインスピレーションを得たかもしれません。
他にもあります。 🕵️
NixOS は (常に) シンボリックリンクに大きく依存しています。これが新しい概念である場合は、次のガイドを参照してください:
Linux でシンボリック リンクを作成する方法 [完全ガイド] https://www.linuxmi.com/creating-symbolic-links-in-linux.html
通常、他の Linux ディストリビューションでは、パッケージをアップグレードすると、古いパッケージが新しいパッケージに置き換えられます。
しかし、NixOS の場合はそうではありません。
NixOS では、パッケージは分離され、シンボリック リンクが使用される固有のディレクトリに保存されます。
パッケージをアップグレードするたびに、NixOS は新しいパッケージを見つけるためにシンボリック リンクを調整しますが、古いパッケージ は削除しません。
したがって、新しいパッケージとの競合が発生した場合は、古い世代に切り替えるだけで、シンボリックリンクが古いバージョンのパッケージを見つけるのに役立ちます。 😌
Nix Package Manager を使用すると、80,000 を超えるパッケージにアクセスできます。 Linux に限定されず、macOS、WSL2、Docker などのプラットフォームでも動作します。
Nix パッケージ マネージャーでほとんどすべてを見つけることができるため、パッケージの入手可能性は AUR と同等かそれ以上です。
たとえば、Librewolf ブラウザをインストールしたいと考えていますが、これはほとんどの Linux ディストリビューションのデフォルト リポジトリでは利用できません。
しかし、ニックスはそうします!これは、ほぼすべてのパッケージが Nix パッケージ マネージャーに依存できることを意味します。
これは、Linux の使用経験がある場合にも比較的簡単に理解できます。一言で言えば、Nix パッケージ マネージャーは素晴らしいです。
一部のアプリケーションでは特定の依存関係の古いバージョンが必要ですが、一部のアプリケーションでは最新バージョンが必要なため、これは開発者にとって重要です。
前に述べたように、nix はパッケージを特定のサブディレクトリにインストールします。各パッケージは分離されているため、相互に干渉しません。
Nix を使用する前は、同じパッケージ、特に PHP のさまざまな依存関係に VM とコンテナーを使用していましたが、NixOS は私のワークフローに驚異的な効果をもたらしてくれました。
$PATH 環境変数を一時的に変更し、パッケージを一時的にテストするために使用される nix-shell を使用できます。
そして制限はありません。インストール可能なすべてのパッケージをテストできます。
これは Nix シリーズの最初の部分であり、NixOS を使用する理由について説明します。 Linux ユーザーがまだ知らない場合は、もっと多くの Linux ユーザーがそれについて学び始めるべきだと私は信じています。
つまり、NixOS は、そのユニークな機能と利点により多くの注目を集めている Linux ディストリビューションになりました。 Linux の初心者でもベテランでも、このシステムを試してみると、おそらく別の体験が得られるでしょう。
以上がNixOS: 完璧な Linux ディストリビューション?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。