LPIC学習日記①
今回、業務でも利用しているLinuxの理解を改めて深めたいと思ったので、LPICの学習をしていこうと思います。
業務で触れているので、体感7~8割くらいは理解しているつもりですが、説明ができない箇所もあると思うので、資格取得も目指しつつ、自身の理解を深めるアウトプットの機会にしようと思います。
自分のアウトプットがメインなので、理解が不足している部分だけ触れていきます。
完全に自己満です…。
システムアーキテクチャについて
Linuxの起動とシャットダウン
Linuxの起動の仕組みはざっくり以下の通り。
①BIOS/UEFIの起動
起動デバイスの優先順位を確認→ブートローダ(GRUB)を読み込む
②ブートローダ(GRUBなど)
GRUB(GRand Unified Bootloader)などのブートローダが起動
カーネルとinitramfs(初期RAMディスク)をメモリに展開して起動
③Linuxカーネルの起動
カーネルがハードウェアの検出・初期化
initプロセス(PID1)を起動
④initシステムの起動(PID1)
init→サービス管理・起動スクリプトの管理者
systmed=/usr/lib/systemd
⑤ログインプロンプトの表示
まとめると
BIOS/UEFI→ブートローダ(GRUB)→カーネル起動→init起動という流れになる。
SysVinitについて
現在主流のsystemdの前の起動の仕組み。
起動順序は以下の通り。
①initが/etc/initabを読み込む
②initが/etc/rc.sysinitを読み込む
③iniが/etc/rcスクリプトを読み込む
④/etc/rcスクリプトが/etc/rc<ランレベル>.dは以下のスクリプトを実行する
→決められた順にサービスが起動していくためあるサービスの起動に時間がかかると、全体に影響があるといったデメリットがある
Linuxのインストールとパッケージ管理
Linuxに必要なパーティション
少なくとも下記が必要
①ルートファイルシステムに割り当てる/(ルート)パーティション
②スワップ領域
レイアウト設計
Swap領域は、物理メモリと同程度に設定が推奨
/bootは100MくらいでOK
あとは、/や/homeに割り当てる
ブートローダについて
▼GRUBとGRUB2ある
GRUBの設定は、/boot/grub/menu.lstを直接編集する。
GRUB2の場合は、/etc/default/grubで設定→grub-mkconfig→/boot/grub/grub.cfg生成される
おおよそこんなもんしょうか…。
パッケージ管理系のコマンドは、RHEL系であれば実務で使っているので、オプションなどは問題ないですが、Debian系はあまり触ったことがないので、自分でコンテナ立てて触ってみようと思います…。
次回は、UNIX系のコマンドとファイル/プロセスの管理について学習していきたいと思います。
Discussion