メインコンテンツへスキップ

Debianは安定、Fedoraは玩具。immutable distroブームについても語る

·
カテゴリー Linuxシステム FOSSをめぐる問題
タグ Debian Fedora KDE Plasma
目次

Debian vs Fedora, which one is more stable?

安定更新のDebianこそ答えであり、ローリング更新のFedoraは玩具だ。両者を比較すれば、答えは自ずと見えてくる。

私は日常システムとして、多機能で美しいデスクトップが欲しい。そのため私はずっとKDE Plasmaの愛好者であり、反人類的なGNOMEから離れ、時代遅れのXFCEを拒否している。激しい言い方をすると、GNOMEは人民の父親でもないのに、なぜ毎回それを選ばなければならないのか!

ずっと私にローリングリリースを勧めたがる人がいる。だが断る!

以前の記事Linux最新與穩定,真的能兼得嗎?で述べたように、この数年の苦しい探索を経て、私は最新版KDEデスクトップを盲目的に追求することと、ローリング更新のLinuxディストリビューションモデルは完全な災難だと考えるようになった。Arch Linux、openSUSE Tumbleweed、Fedora(Kinoiteを含む)、KDE Neonを使った後、よい体験はなかった。

毎月何かが崩壊する。デスクトップが崩れ、ドライバーが潰れ、入力が詰まり、ゲームが落ち、馬兒跳。これは単純にバックアップからロールバックすれば解決する問題ではない。

だから私はDebian Stable + KDEへ行った。このKDEバージョンが上流から一、二年遅れていても構わない。Waylandが少なくとも使えればよい。私のハードウェアはそれほど新しくなく、1%の性能改善のためだけに最新GPUドライバーを更新し続ける需要もない。私は暇で一日中システムで遊んでいるわけでもなく、毎月最新KDE機能を追い続ける必要もない。さらにSnapが邪魔しない。もう半年使っただろうか、私は平穏さを感じている。

私の生活はすでに十分混乱している。唯一制御できるOSまで不安定な状態に置き、常に何かが壊れることを警戒するのは嫌だ。私は使用者になりたいのであって、テスターになりたいのではない。

Debianの開発モデルはなぜ安定しているのか?
#

Fedoraが私にもたらした悪い体験を考えると、私はDebian Testingを推薦しにくい。開発者がユーザーを実験台扱いするのは、私は当然好きではない。immutable/atomic機構を導入しても、この問題は解決できない。上流機能が一日中変わり続けるのに、私は彼らに付き合って振り回される時間などない。彼らはWindowsを真似て競争力と未来性のあるシステムを作りたいようで、そのため商業ソフトウェア式の高速イテレーション更新方式を採用し、ユーザーの安定性を考慮しない。

Debian Handbookのこの冗長なDebianパッケージングフローを見れば、なぜDebianがこれほど安定しているのか分かる。主力コンピューターでは、私はFedora KDEよりDebian KDEを使いたい。

誤解を招きやすい開発フロー:Debian Sid → Debian Testing → Debian Stable。この開発過程は、三者がそれぞれ一定期間別々に開発され、それから下へ伝達されるように思わせやすいだろう?違う。Debian Sidはほぼ毎日更新され、バージョン番号の違いがない。

そしてSid内のパッケージは10日以上待ち、致命的bugがなく、dependenciesを壊さず、条件に合うものが自動でTestingへ入る。Debian TestingのインストールISOは自動スナップショットから生成される。その後Testingがゆっくり開発され、次のStableに近いリリース周期に入ると、6か月のフリーズ期間に入り、新パッケージを受け付けなくなる。開発者が残りのbugを修正し終えてから、最後にStableとしてリリースされ、バージョン番号が更新される。たとえばStableがDebian 12からDebian 13へ更新され、その後Testingは一時的にDebian 14となる。

各Debian Stableメジャーバージョンの間、パッケージバージョンはほぼ変化しない。たとえばGNOMEやKDE Plasmaデスクトップは、基本的にDebian Stableのその時点でリリースされたバージョンであり、突然アップグレードされることはない。

Debian Stableはサーバーにしか向かず、Debian Testingのほうがデスクトップユーザーに向いていると考える人もいる。パッケージバージョンが比較的新しく安定しているから?これは明らかに正しくない。ハードウェアが非常に新しい(発売から一年未満)のでない限り、Stableのほうがよい選択だろう。

一部のDebian貢献者はTestingは比較的安定していると言うし、さらに極端な人はDebian Sidでも日常利用できると考える。それならArch Linuxを使ったほうがましだ!

Debian Testingはソフトウェアにbugがないことを保証できない。Sidのパッケージよりは少し安定しているとはいえ、この静止して更新を待つ過程はまだ十分長くない。TestingがSidから自動でマージされてくる以上、それは一つのメジャーバージョン内でパッケージバージョンが絶えず変化することを意味する。Stableのように二年後の次のメジャーバージョン更新まで変化しないわけではない。これによりソフトウェア挙動は予測不能(unpredictable)になる。

さらに、Debian TestingがTestingと呼ばれるのは、テスト用途に使われるからであり、更新サポート周期は保証されない。Debian Stableのように5年更新サポートがあるわけではない。

また、ソフトウェアが安定するのを待つその6か月の空白期間では、ユーザーは気まずい位置に置かれる。更新がないだけでなく、重大な安全性更新に遭遇しても、Sidの検査が終わるまで受け取れない。

それに比べ、Debian Stableに緊急のbugや安全問題があれば、より速く修正を得られる。

類比するなら、Debian TestingはFedoraの開発モデルに非常に近い。あるいはCentOS Streamと言ってもよい。ただし更新はさらに保証されない。

そうである以上、Fedoraの悪い経験を経た後、私はDebian Testingも推薦できない。

Fedoraの開発モデルはどのように不安定なのか?
#

通常、Fedoraは半ローリングリリースと見なされる。固定更新モデルを採用し、毎年一つのメジャーバージョン更新を出し、システムパッケージバージョンはいずれも上流にかなり近い。FedoraシステムのパッケージはDebian Stableのように古くはなく、Arch Linuxのように直接何も考えず最新版を使うわけでもない。

だからFedoraは不安定と安定更新の間でバランス点を見つけ、Linuxの最新機能を試したいが、過度に激進的な更新は避けたいユーザーに向いている。

しかしこのシステムは本当に十分安定なのか?

Fedora Updates policyを参照すると、Fedoraの上流にはRawhideというブランチがあり、パッケージは開発者のテスト、投票を経て、標準に合い、安定と見なされた後にBetaへ置かれ、さらにStableへ置かれる。

Fedoraの各Stableを称するバージョンは約6か月ごとにリリースされ、その後13か月の更新サポートを提供する。各Fedoraメジャーバージョンのサポート期間、つまり一年以内に、パッケージバージョンは絶えず変化する。GNOMEにとっては影響が大きくないかもしれない。GNOMEは毎年固定で一つのバージョンをリリースし、Fedoraの更新周期とおおむね揃っているため、Fedora一つのバージョン内であまり変化しないからだ。KDE Plasmaについては予測不能だ。リリース時期が固定されていないため、三回以上変化する可能性すらある!

さらにFedoraの下流、つまり最終安定版は、Fedoraプロジェクトが制御する直接の産物ではなく、自由に利用できないRHELである。上流と下流の間にはCentOS Streamという踏み台もあり、RedHatがソフトウェア品質を高めるためにより多くの時間をかけられるようにしている。安定し、かつ自由なシステムが必要なら、Rocky LinuxやAlmaLinuxのようなプロジェクトを使うことになる。

したがって、Fedoraの最終版安定システムなど最初から存在しないと言える。それはずっと変化し続けている。

Debian Stableと比べると、Fedoraの更新周期は本当に短すぎる。

ローリングリリースには慎重に向き合うべき、安全ベルトがあっても
#

今の私はローリングリリースを非常に慎重に見るようになった。特に商業会社のメンテナンスを欠くものはそうだ。よく言えば、ローリングリリースを新機能の遊園地と見なし、人々に新機能の探索を促すことはできる。しかし安定性の保証がないなら、それは玩具になる。

Fedoraユーザーはその開発モデルの影響を受け、絶えず新技術を推崇する。イテレーションの速さは追いつきにくいほどで、毎年のように新しいものが古いものを置き換える可能性がある。たとえばWaylandがX11を置き換え、PipeWireがPulseAudioを置き換え(btw PulseAudioもひどい)、PodmanがDockerを代替するなどだ。

最近よく聞く議題はimmutable、またはatomicと呼ばれるシステム更新モデルだ。彼らは、これによってシステムがより安定し、更新がより保証されると言う。

Immutable distroという概念は昔から存在するが、2019年以降になってようやく専用のLinuxディストリビューションが徐々に登場し始めた。最も有名なのはFedora Silverblueを筆頭とする実装だ。これは通常版Fedoraとは別に、新しい道を切り開く試みである。

私はimmutableの新境地を探ることには反対しない。しかしimmutableはFedoraの不安定問題を解決できない。Fedoraは半ローリング更新ディストリビューションであり、Fedora 44までずっとそうだ。バージョン番号はあるし、Arch Linuxのように盲目的に最新版パッケージを追うわけでもない。しかし実際には、ソフトウェアが長期テストを欠いたままリリースされている。少なくともDebian Stableの一、二年に及ぶ開発モデルと比べれば、Fedoraが六か月で一度更新する頻度は高すぎる。これが不安定性を悪化させる。しかも私が使っているのはKDE Plasmaデスクトップであり、更新頻度はGNOMEよりずっと高く、固定されていない。

Fedoraはとても安定していて一度も崩壊したことがないと言う人については、彼らが本当にget a lifeしたことがあるのか、それともit works on my machineなら安定だと見なしているだけなのか疑っている。

Debian開発者は、安定性への考慮よりも新機能を追い続けるユーザーをShiny New Stuff Syndromeと呼ぶ。

これは病気だ。私はあなたに必ず治せとは求めないが、あちこちで人に感染させ、他人にも追従を強制しないでほしい。

多くのLinuxディストリビューションはFedoraのimmutable distroブームの影響を受け、自分たちのimmutable derivativesも出すべきか議論している。しかし実際にDebianコミュニティを覗いてみると、現在のDebian 13環境では、Fedoraで流行しているあのimmutable風潮にあまり乗り気でないことが分かる。多くの人の考えは私と同じだと思う。Debianのように少なくとも二年をかけて長期開発するモデルであり、六か月のほぼローリング更新モデルではないなら、ソフトウェアは自然に安定していく。さらにFlatpakで上流ソフトウェアを補えば、immutableに匹敵する体験を提供するには十分である。

Immutable distroについて、今の私はまだ受け入れ不能な状態にあり、未来の脳アップグレードを待つ必要がある。あるいは、ローリング更新モデルを採用しないimmutable distroが出たら、切り替えを考える。たとえばVanilla OSBluefin LTSは私の期待にかなり合っているので、彼らがKDE版を出すのを待つ。

ならboomerになろう
#

新技術を理解できず、拒否的態度を持つ。まずい、どうやら今度は私が人々の言うboomerになる番らしい。

もともと私は、Systemd vs 伝統init、X11 vs Wayland、PulseAudio vs PipeWireの技術争議について特に意見はなく、むしろ多くの人が一緒に最新技術へ追いついて使うべきだと励ましていた。これは私の世代が遭遇した問題ではないからだ。

さらに、LinuxサーバーではDockerを多用してSQLサービスをデプロイすべきで、手動でコマンドを打ってバイナリをインストールしているのは馬鹿だとさえ思っていた。もしソフトウェア開発者がSystemdと組み合わせてサービスを管理することを知らず、自分のdaemon実装を使うなら、私はそれをout of touch、老害だと言うだろう。

しかし新興のatomicとimmutable distro概念については、私は本当にReddit上の一部の人々の宣伝口調にうんざりさせられた。彼らは一日中、この技術を採用した新しいFedora Atomicディストリビューション(Silverblue、Kinoite、Bazzite、Bluefinを含む)が最高で、多くのblahblahな問題を改善したと言っている。さらには伝統的で信頼できるDebian開発モデルなど、とっくに歴史のゴミ箱へ掃き込まれるべきだと考えている。この態度は称賛しがたい。

私はいくつかのimmutable distroを試し、彼らの文書説明も読んだ。たとえばBluefin Documentationは彼らの理念を説明している。それでも伝統的なLinuxと比べて何の優位があるのか分からなかった。現在のLinuxディストリビューションの開発とメンテナンスに多くの問題があるのは確かだ。しかし彼らはまったく異なる方式で旧来のモデルを全面的に覆そうとしている。古い問題を解決したように見えて、新しい問題を作っている。既存の成熟した方案を破壊し、新しいやり方への適応を要求する。そしてLinux固有の自由度まで犠牲にしている。

ユーザーは自分たちのシステムを恐れるべきではない。たとえメンテナンス性のために、開発者がLinuxユーザーへ新型image-basedのシステムデプロイ方式に適応することを求めても、私たちは従う必要はない。Fedora Atomicデスクトップが導入した概念は、怠惰なユーザーにはよい。システムを壊す心配がないからだ。しかし私は自分をいじるのが好きな人間だと認めているので、Debianのような伝統モデルのほうがよりよいと思う。削除したいソフトウェアがあれば、APTを使って処理できる。システム本体にあるイメージファイルによって決定されるのではない。 もしあなたが毎回の更新でシステムを壊す恐怖に常に置かれ、そのためロールバック能力を追求しなければならないなら、あなたは最初から使うシステムを間違えている。ローリングリリースを使うべきではない。

もしこの種のimage-basedシステムが未来だと言うなら、ChromeOSこそ衆望を担うシステムであり、dumb-downな構造で、彼らのGUI品質はあなたが誇るオープンソースコミュニティが差し出すごった煮を余裕で打ち負かしているwww

Immutable distroブームは、より多くは開発者と企業環境に有利なもので、一般ユーザーへの改善はごくわずかだ。

これがevangelistというものだろう。“Rewrite everything in Rust"だと考える連中と同じだ。問題が何も解決していないのに、新しい問題を専門に作り出し、そのうえ自己満足している。

私はそこまで性急ではない。数年待って発展がどうなるかを見てから移行を考える。焦らず忍耐する。

これらevangelistの考えを理解しようとするなら、当時Systemdが出たばかりの頃も、Lennart Poetteringを筆頭とする一群の狂人のような人たちが各所で広めたからこそ、手段の良し悪しはともかく、広く流通するようになったのだろう。残ったのは一握りのBSD愛好者が瀕死の抵抗をしているだけだ。

私はこれら新しいLinux技術を狂ったように推す人々が全員RedHatの手先だと言いたくはない。それはあまりに陰謀論だ。今のところ私が比較的受け入れられる新興技術は、おそらくFlatpakくらいだ。本当にソフトウェアのインストールが便利だからだ。システムにimmutableになれと言われる?考えるだけ無駄だ!

私たちはChromebookとAndroidスマホによる知能低下の毒に、まだ十分やられていないというのか!?WindowsとmacOSはそこまで知能低下していないとはいえ、ユーザーの自由を抑圧する程度も肉眼で見えるほどだ。

もし私が自由を堅持する理由がないなら、おとなしくWindowsとmacOSを使えばいいだけだ。しかし私は自分の支配権の一部を保ちたいからこそ、自分の期待に合うLinuxディストリビューションを使いたい。

比較的中立な一言を言うなら、それは:Use what works for you. いわゆる潮流についていけていないからといって、FOMOFUDを生む必要はない。

アメリカ政治オタクの用語を借りれば、左傾進歩派が忙しくあなたを教育し、彼らの未来理念がどれほど先進的かを語り、現在の現実需要を無視するとき、私は理解した。なぜアメリカ極右保守派があのガラガラヘビ旗を貼るのか:私を踏むな! 世の中には苦しむ人が多いことを忘れるな!

余談だが、FOSS界のオルタナ右翼狂犬Bryan Lundukeもこの旗を貼ったことがある。ただし彼はガラガラヘビを自分の犬に変えていた。

私たちは歴史の重要な交差点に立っているのかもしれない。しかし私は性急に進むことを選ばない。もし未来のLinuxの方向が、私たちの期待からますます逸れていくなら、そのとき私はBSDを使うしかない。

関連記事


最後までお読みいただきありがとうございます。本サイトでは公開コメント欄を設けていません。私はソーシャルな反応やアクセス数を追い求めるためではなく、自分の考えを誠実に探求するために文章を書いています。記事を丁寧にお読みいただいたうえで、ご感想やご意見をお寄せいただければ幸いです。誤字・誤り・技術的な問題などを見つけた場合、またはフィードバックを共有したい場合は、Aboutページに記載しているメールアドレスまでお気軽にご連絡ください。