• 線上工具
  • - 計算器
    • 字元計數
  • - 下載
    • TikTok 下載
    • 抖音下載
  • - 網路工具
    • BASE64
    • Base64 轉圖片
    • 圖片轉 Base64
    • URL 編碼
    • JavaScript
    • 時間戳
    • Unicode 轉換器
    • JSON 格式化
    • 修改副檔名
    • 製作列表
    • CSS 優化器
  • - 加密工具
    • MD5 加密
    • 隨機生成器
  • - 圖像工具
    • 圖像壓縮
    • QR 碼生成器
    • QR 碼識別器
    • 壁紙預覽
    • 圖片 EXIF
  • - 資訊表
    • 血型遺傳
    • 服裝尺寸
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
CentOSシステムはどのようにプロセスを開始しますか?CentOSシステム起動プロセスのチュートリアル
2021-12-29

電源ボタンを押すと、システムの背後にある秘密がわかりますか?ここでは、linuxシステムの起動の背後にある秘密を探ってみましょう。

1.POST

マザーボードは電源を入れた後、システムはまずPOSTプログラムによって内部の各設備に対して検査を行い、自己検査中にエラーが発見された場合、2つの状況によって処理する:深刻な故障(致命的な故障)に対して停止し、この時各種の初期化操作がまだ完成していないため、いかなるヒントや信号を与えることができない;重大でない障害については、プロンプトまたは音声アラーム信号が与えられ、ユーザの処理を待つ。

2.BIOS起動起動起動段階

セルフテストに合格した後、各ブートデバイスを順番に検索します。最初にブートプログラムがあるデバイスは、今回の起動に使用するデバイスです。一般的にパソコンは「F 2」や「Del」キーなどを押してBIOSに入り、ハードディスクの起動順序を調整することができます。

ブートストラップのある最初のデバイスが見つかった後、BIOSはデバイスのMBRを見つけ、Bootloaderを読み込みます。

3.GRUPブートフェーズ

この時点でCentosシステムを見ることができますが、一般的には操作を必要とせず、自動的にシステムを起動します。システムを手動で起動することもできます

3.1 grubコマンドラインインタフェースで手動でシステムを起動する:

grub> root (hd#,#)

grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE

grub> initrd /initramfs-VERSION-RELEASE.img

grub> boot

3.2 grubのコマンドラインインタフェース:

e:メニューを編集するための編集モード;

c:コマンドモード、インタラクティブインタフェース;

help:ヘルプリストの取得

help KEYWORD:詳細ヘルプ

find (hd#,#)/PATH/TO/SOMEFILE:

root(hd#,#)grupのルートデバイスを設定

kernel /PATH/TO/KERNEL_FILE:今回の起動時に使用するカーネルファイルを設定します。さらに、多くのカーネルサポートで使用されるcmdlineパラメータを追加することもできます。

たとえば、init=/path/to/init、selinux=0

initrd /PATH/TO/INITRAMFS_FILE:選択したカーネルに追加ファイルを提供するramdiskを設定します。

boot:選択したカーネルの起動を起動します。

3.3プロファイル:/boot/grub/grub.conf

構成アイテム:

default=#:デフォルトで起動するメニュー項目を設定します。落単項(title)番号は0から始まる。

timeout=#:メニュー項目の待機オプションの選択時間を指定します。

splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:メニュー背景画像ファイルのパスを指定します。

hiddenmenu:メニューを隠す;

password[--md 5]STRING:メニュー編集認証;

title TITLE:メニュー項目「タイトル」を定義し、複数回表示することができる。複数のカーネルまたはオペレーティングシステムを起動するために使用

root(hd#,#):grubはstage 2およびkernelファイルが存在するデバイスパーティションを検索します。grubの「根」です。

kernel /PATH/TO/VMLINUZ_FILE[PARAMETERS]:起動したカーネル

initrd /PATH/TO/INITRAMFS_FILE:カーネルマッチングramfsファイル;

password[--md 5]STRING:選択したカーネルまたはオペレーティングシステムを起動したときの認証

4.カーネルステージのロード

カーネル自体が初期化されます。

認識可能なすべてのハードウェアデバイスを検出する。

ハードウェアドライバをロードします。(ramdiskによるドライバのロードが可能)

ルートファイルシステムを読み取り専用でマウントします。

ユーザースペースを実行する最初のアプリケーション:/sbin/init

5.init初期化フェーズ

カーネルのロードが完了すると、initプログラムが実行され、initプロセスが開始すると、システム起動の制御権がinitプロセスに渡されます。

/sbin/initプロセスは、すべてのプロセスの親プロセスです。initが起動すると、まずプロファイル/etc/inittabを読み込み、次の作業を行います。

1.システム初期化スクリプト(/etc/rc.d/rc.sysinit)を実行し、システムに対して基本的な配置を行い、ルートファイルシステムとその他のファイルシステムを読み書き方式でマウントし、このシステムは基本的に実行され、後で運行レベルの確定と相応のサービスの起動を行う必要がある。

2.起動後に入る運行レベルを確定する;

3.実行/etc/rc.d/rcは、サービス開始の順序がK後Sであることを定義、具体的には各実行レベルのサービス状態が/etc/rcである.d/rcn.d(n=0~6)ディレクトリの下で、すべてのファイルが/etc/initにリンクする.dの下の対応するファイル。

4.key sequenceの設定について

5.UPSのスクリプト定義について

6.仮想端末/sbin/mingettyの起動

7.運転レベル5でXを実行

プロファイル:/etc/inittab

各行はactionとそれに対応するprocessを定義する

id:runlevels:action:process

id:タスクの識別子;

runlevels:このタスクを開始するレベルは?#,###,空で、すべてのレベルを表すことができます。

Action:どの条件でこのタスクを開始しますか。

process:タスク;(スクリプトまたはプログラム)

action:

wait:このタスクが存在するレベルに切り替えるのを待っている間に1回実行します。

respawn:このタスクが終了すると、自動的に再起動します。

initdefault:デフォルトの実行レベルを設定します。この場合、processは省略する。

Sysinit:システムの初期化方式を設定、ここでは一般的に指定/etc/rcである.d/rc.Sysinitスクリプト;

K*:停止するサービス;K##*、優先度、数字が小さいほど優先的に閉じる;依存するサービスはまず閉鎖され、その後閉鎖されて依存される。

S*:起動するサービス;S##*、優先度、数字が小さいほど、優先的に起動します。依存するサービスは先に起動し、依存するサービスは後で起動する。

chkconfigコマンド:管理/etc/init.d/各サービススクリプトの各レベルでの起動または停止状態;

表示:chkconfig--list[name]

追加:chkconfig--add name

削除さくじょ:chkconfig--del name

指定したリンクタイプを変更するには、次の手順に従います。

--level LEVELS:制御するレベルを指定します。デフォルトは2345です。

initコマンド:

レベル切替:init#

レベル表示:who-r

注意:

通常レベルでは、最後に起動するサービスS 99 localは/etc/initにリンクされていない.dの下のスクリプトではなく、/etc/rcにリンクされています。d/rc.local(/etc/rc.local)スクリプト;したがって、サービススクリプトとして書く必要がないプログラムが起動して自動的に実行されることを望む場合は、このスクリプトファイルに直接配置すればよい。


ソース元URL:https://dopubox.com/article/p/51c0582c0a6c3c51

其他工具
  • 字元計數 TikTok 下載 抖音下載 BASE64 Base64 轉圖片 圖片轉 Base64 URL 編碼 JavaScript 時間戳 Unicode 轉換器 JSON 格式化 修改副檔名 製作列表 CSS 優化器 MD5 加密 隨機生成器 圖像壓縮 QR 碼生成器 QR 碼識別器 壁紙預覽 圖片 EXIF 血型遺傳 服裝尺寸
  • <司書のコレ絶対読んで>「王さまと九人のきょうだい」君島久子訳、赤羽末吉絵
    2024-05-29

    被害者「問題解決には程遠い」 旧ジャニーズ被害者らが会見
    2024-05-29

    藤井聡太八冠が勝ち、最終局へ 将棋叡王戦で2勝2敗
    2024-05-31

    むのたけじ賞、名称変更 「生前に障害者差別発言」
    2024-05-31

    “家形埴輪”大集合、総選挙も 「住宅展示場の気分で」、奈良
    2024-06-01

    鎌倉幕府の地頭から海の武士団・松浦党に…古文書群「青方文書」からみる中世の漁業や製塩事情
    2024-06-01

    デザインジャーナリストによる新しいデザイン誌の登場です!
    2024-06-01

    鳥取・大山でたいまつ行列 夏山開き前夜祭
    2024-06-01

    峰不二子役の増山江威子さん死去 声優、艶ある声でルパン翻弄
    2024-06-03

    IT国家の最先端研究を知って 奈良・宇陀市がエストニアへの短期留学事業
    2024-06-04

    フジコ・ヘミングさん偲ぶ魂のピアノ旋律
    2024-06-03

    彫刻の森美術館で「舟越桂 森へ行く日」が開催へ
    2024-06-05

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

    開館10周年を記念。「広重 ─摺の極─」があべのハルカス美術館で開催へ
    2024-06-05

    クールべ《世界の起源》はなぜ攻撃されたのか? ポンピドゥー・センター・メッスで破壊・盗難事件
    2024-06-04

    大学入学共通テスト、追試は本試験1週間後 コロナ禍前に戻す 月経痛の配慮明記も
    2024-06-05

    ご当地体操「いちょう体操」に小学生の指導委員が誕生 「体がのびやかに動く」
    2024-06-06

    子供と行きたいおすすめ美術館【東京編】。子連れ、親子でアートを楽しもう!
    2024-06-06

    なぜ、いま「先住民の現代アート」なのか? 『美術手帖』2024年7月号は、「先住民の現代アート」特集
    2024-06-06

    もしあの時に戻れたら…歌人・穂村弘が話題書『迷子手帳』で明かす、今も忘れられない「失敗」
    2024-06-07

    ©  Dopu Box
    💛