• 在线工具
  • - 计算器
    • 字符计数
  • - 下载
    • TikTok 下载
    • 抖音下载
  • - 网络工具
    • BASE64
    • Base64 转图片
    • 图片转 Base64
    • URL 编码
    • JavaScript
    • 时间戳
    • Unicode 转换器
    • JSON 格式化
    • 修改扩展名
    • 制作列表
    • CSS 优化器
  • - 加密工具
    • MD5 加密
    • 随机生成器
  • - 图像工具
    • 图像压缩
    • 二维码生成器
    • 二维码识别器
    • 壁纸预览
    • 图片 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 加密 随机生成器 图像压缩 二维码生成器 二维码识别器 壁纸预览 图片 EXIF 血型遗传 服装尺码
  • 「現実をみんなに伝えたい」能登高校書道部が新作の書道パフォーマンスを披露…部員それぞれが抱える大地震の被害
    2024-05-30

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

    日本の「木」の文化を家具を通して世界へ【ミラノデザインウィーク】
    2024-06-01

    道後温泉の記憶を継承するアート 大竹伸朗が“描き”重要文化財を守ったテント膜「熱景」の再生
    2024-06-03

    テレ東が警察密着番組の担当者らを懲戒処分
    2024-06-03

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

    現代美術作家の杉本博司がYouTubeチャンネル開設 素顔に迫る映像を公開
    2024-06-04

    「2億円トイレ」のイメージ図など公開 大阪・関西万博
    2024-06-04

    「企画展 歌と物語の絵 ―雅やかなやまと絵の世界」(泉屋博古館東京)開幕レポート。歌、物語、絵画が織りなす芸術世界へ
    2024-06-04

    「CLAMP展」が国立新美術館で7月より開催。展示数は史上最多の約800点
    2024-06-04

    「ゲバルト」展が東京日仏学院などで開催。反暴力的反応とその美的様式を探る
    2024-06-05

    お台場エリアを舞台に新芸術祭「東京お台場トリエンナーレ 2025」が誕生
    2024-06-05

    「梅津庸一 エキシビションメーカー」(ワタリウム美術館)開幕レポート。きっとあなたも展覧会をつくりたくなる
    2024-06-04

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

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

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

    「art stage OSAKA 2024」が9月に開催。大阪・関西万博への機運も醸成
    2024-06-05

    青森で来年夏に音楽祭 沖澤のどかさんが総監督
    2024-06-06

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

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

    ©  Dopu Box
    💛