• Online Tools
  • - Calculators
    • Character Count
  • - Download
    • TikTok Download
    • DouYin Download
  • - Web Tools
    • BASE64
    • Base64 to Image
    • Image to Base64
    • URL Encoding
    • JavaScript
    • Timestamp
    • Unicode Converter
    • JSON Format
    • Modify Extension
    • Make List
    • CSS Optimizer
  • - Encryption Tools
    • MD5 Encryption
    • Random Generator
  • - Image Tools
    • Image Compression
    • QR Code Generator
    • QR Code Reader
    • Wallpaper Preview
  • - Info Sheets
    • Blood Type Heredity
    • Clothing Sizes
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Linuxシステムのsystemd起動プロセスを詳しく理解する
2021-12-11

Linux起動プロセスの理解

Linuxコンピュータの電源を入れた後、最初に起動したプロセスはinitです。Initプロセスに割り当てられたPIDは1です。システムの他のすべてのプロセスの親プロセスです。Linuxコンピュータが起動すると、プロセッサはまずシステムストレージでBIOSを検索し、BIOSはシステムリソースを検出して最初のブートデバイスを見つけ、通常はハードディスクであり、その後、ハードディスクのプライマリブートレコード(MBR)を検索し、メモリにロードして制御権を渡し、その後の起動プロセスはMBRによって制御される。

プライマリブートレコードはブートプログラムを初期化します(Linuxには2つの有名なブートプログラムがあり、GRUBとLILO、80%のLinuxシステムはGRUBブートプログラムを使用しています)、このときGRUBまたはLILOはカーネルモジュールをロードします。カーネルはすぐに/sbinの下の「init」プログラムを検索して実行します。ここからinitはLinuxシステムの親プロセスになります。Initが読み込んだ最初のファイルは/etc/inittabで、initによってLinuxオペレーティングシステムの実行レベルが決定されます。ファイル/etc/fstabからパーティションテーブル情報を検索し、対応するマウントを行います。その後initは/etc/initを起動します。dで指定したデフォルトの起動レベルのすべてのサービス/スクリプト。すべてのサービスはここでinitによって1つずつ初期化されます。このプロセスでは、initは毎回1つのサービスしか起動せず、すべてのサービス/デーモンプロセスがバックグラウンドで実行され、initによって管理されます。

シャットダウンプロセスの差が少ないのは逆のプロセスで、まずinitはすべてのサービスを停止し、最後の段階でファイルシステムをアンインストールします。

システムの理解

システムの開発の主な目的は、システムの起動時間と計算コストを削減することです。Systemd(システム管理デーモンプロセス)は、最初はGNU GPLプロトコルのライセンスで開発され、現在はGNU LGPLプロトコルを使用するようになりました。これは、現在議論されている最も熱烈なブートとサービス管理プログラムです。LinuxシステムがSystemdブートを使用するように構成されている場合、従来のSysV initの代わりに起動プロセスがsystemd処理に渡されます。Systemdのコア機能の1つは、SysV initのポストスタートアップスクリプトを同時にサポートすることです。

Systemdはパラレル起動の概念を導入し、起動する必要があるデーモンごとにソケットを構築します。これらのソケットは、それらを使用するプロセスにとって抽象的であり、異なるデーモン間のインタラクションを可能にします。Systemdは新しいプロセスを作成し、各プロセスに制御グループ(cgroup)を割り当てます。異なる制御グループにあるプロセス間では、カーネルを介して相互に通信することができる。システムdは起動プロセスを処理する方法が非常にきれいで、従来のinitベースのシステムに比べて最適化されすぎます。Systemdのいくつかのコア機能を見てみましょう。

  • Initに比べてブートプロセスが大幅に簡素化されました
  • Systemdは同時起動プロセスをサポートし、より迅速に起動できます。

    PIDではなく、グループを制御してプロセスを追跡します。

    ブート・プロシージャとサービス間の依存を処理する方法を最適化

    システムスナップショットとリカバリのサポート

    起動したサービスを監視します。クラッシュしたサービスの再起動もサポート

    システムd-loginモジュールを含んでユーザーのログインを制御します

    コンポーネントのロードとアンインストールをサポート

    低メモリ使用痕跡およびタスクスケジューリング能力

    イベントを記録するJournaldモジュールとシステムログを記録するsyslogdモジュール
    Systemd構造の概要

    Linuxシステムがシステムdをブートプログラムとして使用する場合の起動プロセスの構造的詳細を見てみましょう。簡単にするために、次の手順に従います。

    1.電源を入れた後、コンピュータが最初にしたことはBIOSの初期化です。BIOSは、ブートデバイス設定を読み出し、MBRにシステム制御権を位置決めして伝達する(ハードディスクが第1のブートデバイスであると仮定する)。
    2.MBRは、GrubまたはLILOブートから関連情報を読み出し、カーネルを初期化する。次に、GrubまたはLILOによってシステムの起動が継続される。grubプロファイルにsystemdをブートマネージャとして指定すると、その後のブートプロセスはsystemdによって完了します。Systemdは「target」を使用してブートおよびサービス管理プロセスを処理します。これらのsystemdの「target」ファイルは、異なるブートユニットをグループ化し、同期プロセスを開始するために使用されます。

    「multi-user.target」は、別のレイヤ「basic.target」に制御権を渡します。

    7. local-fs.target、このtargetユニットはユーザー関連のサービスを開始せず、最下位のコアサービスのみを処理します。このtargetは、/etc/fstabおよび/etc/inittabに基づいて関連操作を実行します。

    システムブートのパフォーマンス分析
    Systemdは、ブートに関連する問題またはパフォーマンスの影響を識別および特定するためのツールを提供します。Systemd-analyzeは、ブートプロセスを検出するために組み込まれたコマンドです。起動中にエラーが発生したユニットを特定し、ブートコンポーネントの問題を追跡して修正できます。一般的なsystemd-analyzeコマンドを以下に示します。
    Systemd-analyze timeは、カーネルと通常のユーザ空間の起動にかかる時間を表示します。

    コードのコピー

    $ systemd-analyze time

    Startup finished in 1440ms (kernel) + 3444ms (userspace)

    Systemd-analyze blameには、実行中のすべてのユニットがリストされ、初期化から現在までの時間でソートされます。これにより、どのサービスがブート中に起動するのに時間がかかるかがわかります。

    コードのコピー
    $ systemd-analyze blame

    2001ms mysqld.service

    234ms httpd.service
    191ms vmms.service

    Systemd-analyze verifyは、すべてのシステムユニットに構文エラーがあるかどうかを示します。

    Systemd-analyze plotは、ブートプロセス全体をSVG形式のファイルに書き込むために使用できます。ブートプロセス全体が長くて読みにくいので、このコマンドで出力をファイルに書き込んでから確認して分析することができます。次の命令はこれです。
    コードのコピー

    systemd-analyze plot > boot.svg

    Systemdの議論

    Systemdは幸運にもすべての人に愛されていません。一部の専門家と管理者は、その働き方と開発について異なる意見を持っています。Systemdに対する批判によると、一部のシステムサービスを置き換えてみるため、「クラスUnix」方式ではない。一部の専門家もバイナリプロファイルを使用する考えが好きではありません。システムdの構成を編集するのは非常に困難で、使用可能なグラフィックツールは一つもないという。
    Ubuntu 14.04と12.04でSystemdをテストする方法
    本来,Ubuntuは,Ubuntu 16.04 LTSから現在のブートプロセスをSystemdで置き換えることにした.Ubuntu 16.04は2016年4月にリリースされる予定ですが、Systemdの流行やニーズを考慮して、リリースされたばかりのUbuntu 15.04はデフォルトのブートプログラムとして採用されています。また、Ubuntu 14.04 Trusty TahrとUbuntu 12.04 Precise Pangolinのユーザーは、マシン上でSystemdをテストすることができます。テストプロセスは複雑ではありません。関連するPPAをシステムに含め、倉庫を更新し、システムをアップグレードするだけです。

    宣言:Ubuntuのテストと開発の段階にあることに注意してください。テストパッケージをアップグレードすると、未知のエラーが発生し、最悪の場合、システム構成が破損する可能性があります。アップグレードを試みる前に重要なデータがバックアップされていることを確認してください。


    ソース元URL:https://dopubox.com/article/p/608314ee67c01071

    Other Tools
  • Character Count TikTok Download DouYin Download BASE64 Base64 to Image Image to Base64 URL Encoding JavaScript Timestamp Unicode Converter JSON Format Modify Extension Make List CSS Optimizer MD5 Encryption Random Generator Image Compression QR Code Generator QR Code Reader Wallpaper Preview Blood Type Heredity Clothing Sizes
  • MURAKAMI × Liquem 夢のコラボアクセが再登場☆|長山智美 デザイン狩人
    2024-05-30

    囲碁、一力遼本因坊が初防衛 余正麒破り三冠堅持
    2024-05-30

    【光る君へ】平安時代、強烈なエピソードで知られた2人の受領とは
    2024-06-01

    あらゆる知識に精通した「天才」が教えてくれた、頭を良くするための新書の読み方と「究極のインプット・アウトプット」の方法
    2024-06-02

    中国でドラえもん映画が興行首位 国際こどもの日に12億円
    2024-06-03

    万博無料招待、大阪の学校7割が希望 「不参加」の選択肢ない調査手法に批判も
    2024-06-03

    河合隼雄賞に八木詠美さん「休館日の彼女たち」、湯澤規子さん「焼き芋とドーナツ」
    2024-06-02

    応挙手本?に描いたトラ甦れ…徳島の寺のふすま絵修復へ
    2024-06-04

    アレクサンダー・カルダー個展「カルダー:そよぐ、感じる、日本」が開催
    2024-06-04

    「国芳の団扇絵 猫と歌舞伎とチャキチャキ娘」(太田記念美術館)開幕レポート。世界初の展覧会
    2024-06-04

    東京都写真美術館で「今森光彦 にっぽんの里山」が開催へ
    2024-06-04

    「犬派?猫派?」(山種美術館)開幕レポート。初公開から名作まで勢揃い
    2024-06-04

    今週末に見たい展覧会ベスト13。「令和6年 新指定国宝・重要文化財」展から国立西洋美術館の現代美術展、KYOTOGRAPHIEまで
    2024-06-04

    スマイル社が性犯罪被害者支援の法人設立
    2024-06-04

    105歳で死去した画家弥勒祐徳さん おごらず、黙々と、ひたすらに神楽など描く
    2024-06-05

    安藤忠雄さん設計の美術館名称決まる…香川・直島に2025年オープン
    2024-06-05

    写真家の吉田ルイ子さん死去
    2024-06-06

    写真家の吉田ルイ子さん死去 「ハーレムの熱い日々」
    2024-06-06

    佐渡金山「情報照会」と勧告 世界遺産登録に可能性残す
    2024-06-06

    佐渡金山、世界遺産登録に向け「追加情報の提出」求められる
    2024-06-06

    ©  Dopu Box
    💛