web-dev-qa-db-ja.com

upstartからsystemdに切り替える理由は?

Ubuntu 15.04の大きな変更点は、起動およびシステムサービスの起動を管理するためのデフォルトとして、upstartからsystemdへの切り替えです。

これが私たちにどう影響するか、そしてどのように影響するかを、技術に詳しくないユーザーに適切に説明できますか?そして、なぜそれが重要なのでしょうか?

28

Laymanユーザーは、仕様により変更に気付かない必要があります。これは初期化システムであり、ユーザーが伝統的にやり取りするものではありません。 Upstartが提供する機能を完全に置き換える必要がありますが、いくつかの追加操作を行う必要がありますが、技術に詳しくないユーザーがを見るのは間違ったときだけです。

Upstartを積極的に使用および開発してきたユーザー、システム管理者、および開発者は、物事に取り組む必要がある人々です。 buntu Wikiの移行ドキュメント があり、開発者がinitスクリプトを変換するのに役立ちますが、ユーザーとsysopは14.04に固執することでUpstartの使用を継続できます(2019年までサポートされます)。

変更の理由と理由は、Ubuntu側からではありませんでした。 CanonicalはUpstart(プロジェクト)に十分満足していましたが、多くのDebianユーザーは、ブート時の同時実行性とすべてのサービスの監視機能を向上させるために、最新のinitエンジンに移行したいと考えました。

つまり、 さまざまなオプション間の戦い (理論的根拠)であり、最終的にsystemdが勝ちました。

CanonicalはDebianと一緒になりました 最も簡単で、おそらく最良だからです。彼らはプロジェクトをドロップし、上流で戦っていません。また、systemdに移行している他のディストリビューション(Red Hat、Fedoraなど)とも一致します。より集中し、労力の重複を減らします。

tl; dr非技術者にとっては、これはあなたにまったく影響を与えるべきではありません。 Ubuntuの場合、作業量が少なくなり、初期化システムが改善されます。

29
Oli

これが私たちにどう影響するか、そしてどのように影響するかを、技術に詳しくないユーザーに適切に説明できますか?

理論的には、これはシステムが実際にどのように機能するかという核心に関与しない非技術的なエンドユーザーに影響を与えるべきではありません。実際には、あなたが目にする多くのものがあります。

不完全なリストは次のとおりです。

  • プログラムの起動にupstartジョブ定義ファイルを使用したアドオンソフトウェアがある場合、それらは動作を停止します。 systemd service unit filesをインストールする必要があります(そして、より一般的には、すでに書いた他の誰かにニックネームを付けます)。例: https://askubuntu.com/questions/613785
  • 電源管理などの事柄に関するsystemd開発者によるさまざまな設計上の前提は、デフォルトになりますが、これは慣れているかもしれないものと矛盾しています。 systemd開発者は、ラップトップのリッドスイッチに応答して何が起こるべきかについて非常に明確なアイデアを持っています など。
  • Nvidia独自のディスプレイドライバーを使用している場合、systemdにはさまざまな設計上の決定事項が影響します。例: https://askubuntu.com/questions/61377
  • Ubuntuユーザーはこれを数年前からこれを伝えるマニュアルページを持っているので、新興企業から来るときはあまり関係ありませんが、これを読む可能性のあるUbuntu以外のユーザーには言及します:System 5から来ている他のLinuxオペレーティングシステムユーザーinit + rcは、systemdがonly System 5 rcと下位互換性があるという事実に噛まれます。新興企業や他のほとんどのシステムと同様に、System 5 initおよびその構成ファイル/etc/inittab。との後方互換性はありません。

    したがって、「まあ、これを/etc/inittab…に編集することができます」とアドバイスする30年の人々からのアドバイスに従った人、またはそのアドバイスに従ったソフトウェアを使用する人は、今は起動しないソフトウェアを持っていますブートストラップで。例: https://unix.stackexchange.com/a/196197/5132

  • 以前のshutdownコマンドとは異なり、systemd shutdownコマンドを使用してシングルユーザーモードに到達することはできません。 systemdの専門用語ではrescue modeと呼ばれるという事実はさておき、レスキューモードはsystemdのワールドビューではシャットダウン状態とは見なされません。 running状態と見なされます。 shutdown nowはマシンの電源を切ります。 systemdの世界でシングルユーザーモードに到達するのはsystemctl rescueです。さらに読む: https://unix.stackexchange.com/a/196471/5132
  • その最後の主題に加えて:run levelsのアイデアを既に捨てていないのなら、今こそそうする時です。さらに読む: https://unix.stackexchange.com/a/196014/5132
  • 「今はすべてsystemdになっている」ことを「知っている」ので、ランダムなWWWブラウジングで見つかった一般的なsystemdのアドバイスに従うことに注意する必要があります。 systemctl--userオプションを付けてコマンドを実行することについて人々が話しているのを見るでしょう。 Ubuntuには適用されません(まだ)。 upstartとsystemdはこの領域で大きく異なり、Ubuntuバージョン15では、systemd per-user instanceではなくupstart per-session initが引き続き使用されます。 https://superuser.com/a/860598/38062 は適用されません。 ☺
18
JdeBP