🎃

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