Linuxシステムの起動が非常に速いことを私たち全員が知っているので、Linuxシステムはブートプロセス中にどのようなコンテンツをロードするのでしょうか。次の小シリーズでは、Linuxシステムを起動するための詳細なプロセスを紹介します。
を押して、電源ボタンのウェルカムページアウト後まで、完全に行うにはLinuxが完了するまでに5つのステップに分けることができます。
1. BIOSパワーオンセルフテスト:
パワーオンセルフテスト、ハードウェアデバイスの検出。次にcmosの上の順序でアクティブ状態の起動可能なデバイスを検索します。それは、光学ドライブ、フロッピーディスク、USBなどであり得る。
2.メインブートローダー(MBR)をロードします。
メインブートローダーは512バイトのイメージです。小さなマシンコードと小さなパーティションがあります。
主なブートローダの仕事は、ハードディスクのパーティションからセカンダリブートローダを見つけてロードすることです。アクティブパーティションはパーティションテーブルで見つけられ、アクティブパーティション内のセカンダリブートローダーがメモリに読み込まれて実行されます。
3、セカンダリブートレコードプログラム(GRUB)をロードします。
セカンダリブートローダはLinuxカーネルでのみロードされます。
最後の段階の後、ブートローダはメモリ上で動作します。 GRUBグラフィカルインタフェースが表示され、ユーザーはどのカーネルをロードするかを選択できます。
4、Linuxカーネルイメージ:
ユーザーがロードするカーネルを選択すると、セカンダリブートローダ(GRUB)は/boot/grub.conf設定ファイルに設定されている情報に基づきます。 /boot /が配置されているパーティションからLinuxカーネルイメージを読み込み、カーネルイメージをメモリにロードしてLinuxカーネルに制御を渡します。
Linuxカーネルが制御を獲得した後、独自のビジネスを開始します。
1)、ハードウェアを検出します。
2)自分自身を解凍し、必要なドライバをインストールします。
3)、ファイルシステムに関連する仮想デバイス、LVMまたはRAIDを初期化します。
4)、ルートファイルシステムをロードします。
5)、完了後、プロセススペースにLinuxをハングします。 initプログラムを中に読み込んで、以下はinitの仕事です。
5、initプロセス
initはすべてのプロセスのイニシエーターとコントローラーです。すべてのプロセスはこれから派生します。
initプロセスが制御を得た後、/etc /rc.d /rc.sysinitスクリプトを実行し、環境変数、ネットワークを設定し、スワップを開始し、ファイルシステムをチェックしてマウントし、そして内部のコードに基づいて他のプログラムを実行します。作業を初期化します。
これでLinuxの起動は完了です。
これを少し要約します。
最初のメインブートローダー、2番目のブートローダー、そして最後にlinuxカーネルイメージをロードした後で、initに制御を引き渡した後のBIOSパワーオンセルフテストです。処理し、初期化作業を完了します。
スワップパーティションとは何ですか?
Windowsシステムの仮想メモリと同様に、物理メモリが足りない場合は、スワップ内のメモリを使用します。
上記はLinuxシステムを起動する詳細なプロセスの紹介ですが、通常は起動時にあまり注意を払う必要はないかもしれませんが、実際にはLinuxシステムは起動時に多くのことを行います。
Dockerコンテナ自体はDockerイメージに基づいて作成されますが、Dockerイメージ自体はDockerコマンドラインツールまたはDockerファイルを介して生成できます。コンテナー間でデータを
Linuxコマンドのrenameコマンドは、主にファイルの名前変更に使用されますが、mvコマンドと似ていますが、名前の変更はバッチファイルの名前変更のみ可能です。単一のファイルの名前を変更しましょう。
Linux仮想マシンでは、デバイスIDはマップされたディスクのドライブ文字なので、デバイスIDとドライブ文字は一致しています。しかし、ユーザーがLinuxのデバイスI
Linuxシステムには、ファイルを検索するためのコマンドが5つありますが、通常はそのうち2つから3つしか使用されていません。行きましょう。 1.検索 最も一般的