LPIC-1の勉強メモ
- #PR
- #tech
はじめに
Linuxの基礎を勉強するために、LPIC-1を受験しました。 今回は、実際にどのような教材を使って勉強したのか、どのくらい勉強したのか、試験を受けてみてどうだったかをまとめます。
LPIC-1とは
LPIC-1は、Linux Professional Institute(LPI)が提供している認定プログラムで、Linuxの基本的な操作やシステム管理に関する知識が問われます。
LPIC-1を取得するためには、以下の2つの試験に合格する必要があります。
- 101-500
- 102-500
Linuxのコマンド操作だけではなく、ファイルシステム、ユーザー管理、パーミッション、プロセス、ネットワーク、ブート、パッケージ管理など、Linuxを管理するための幅広い知識が出題されます。
受験した理由
普段からLinuxを触る機会はありますが、実際に使うコマンドや設定にはある程度偏りがあると思っています。 そのため、下記のような理由でLPIC-1を受験することにしました。
- Linuxの基本を体系的に勉強したい
- 知っているつもりになっている部分を整理したい
- インフラ周りの基礎知識を身につけたい
- 今後LinuxやKubernetesなどを勉強するための土台を作りたい
特に、普段Linuxを使っていると「コマンドは知っているけど、なぜそうなっているのか分からない」ということがあるため、資格勉強を利用して一度体系的に整理することにしました。
使用した教材
主に使用したのは以下の教材です。 下記以外だとPing-tも有名で人気ですが、問題集の利用に月額コストがかかるため利用していません。
公式の教材
LPIが開発した無料教材があります。
LPIC-1の全体的な範囲を確認するために使用しました。 最初からすべてを理解するのではなく、試験範囲にどのような内容があるのかを把握するために使いました。 また、問題集を解いたあとに改に内容を確認しに戻ってくるような使い方をしていました。
スピードマスター問題集
試験の準備では、Linux教科書 LPICレベル1 スピードマスター問題集 Version5.0対応をかなり利用しました。 Kindle版を購入して、移動の際にも勉強していました。
一通り問題を解いて、間違えて問題や理解できない部分を確認するというやり方です。 正解した問題も単純に飛ばすのではなく、選択肢について「なぜこれが正解なのか」、「なぜ他は違うのか」を確認するようにしました。 最終的には3周ほど繰り返しました。
勉強方法
基本的には、下記のような流れで勉強しました。
参考書で理解 → 問題を解く → 間違える → 調べる → もう一度問題を解く
1. まず試験範囲を確認する
最初にLPIC-1で何が問われるのかを確認しました。 Linuxの資格なのでコマンドだけ勉強すればよいと思いがちですが、実際にはかなり広い範囲が出題されます。
例えば、下記のようなものがあります。 そのため、最初から「コマンドを暗記する」という勉強にはしませんでした。
- Linuxコマンド
- ファイル・ディレクトリ
- パーミッション
- ユーザー・グループ
- プロセス
- パッケージ管理
- ファイルシステム
- ブート
- systemd
- ネットワーク
- DNS
- シェル
- セキュリティ
- 仮想化
2. 実際にLinuxを触る
コマンドについては、できるだけ実際にLinux環境で試すようにしました。
例えば、下記のようなコマンドたちは実際に実行して結果を確認すると覚えやすいです。
chmod
chown
find
grep
sed
ps
kill
systemctl
mount
df
du
特にオプションについては、問題集だけで暗記するよりも、manで確認したり、実際にオプションを変えて実行したりしたほうが理解しやすいと思います。
man コマンド名
3. 問題集を解く
ある程度範囲を勉強したところで、スピードマスター問題集を解き始めました。 最初はかなり間違えました。 特に、下記は苦戦しました。
- ブートローダー
- UEFI
- ファイルシステム
- パッケージ管理
- ネットワーク設定
- シェル
- 各種設定ファイル
4. 間違えた問題を調べる
問題集で間違えた場合は、答えだけを覚えないようにしました。 例えば、
このコマンドの答えは
xxxだけではなく、
なぜ
xxxなのか 他の選択肢は何をするコマンドなのか まで確認するようにしました。
LPICでは似たようなコマンドやオプションが多いため、単純暗記だけだと別の問題で間違いやすいです。
5. 問題集を繰り返す
最終的にはスピードマスターを約3周しました。 1周目は分からない問題が多かったですが、2周目、3周目になるとかなり正答率が上がっていきました。 ただし、答えを覚えてしまっているだけの問題もあるので、3周目では「正解したか」だけではなく、選択肢を見て内容を説明できるかを意識しました。
勉強していて難しかったところ
個人的に難しいと感じたのは、単純なコマンドではなく「Linuxの仕組み」を問われる問題です。 例えばブートについては、全体の流れを理解していないと問題を解きにくい部分があります。
BIOS / UEFI
↓
ブートローダー
↓
Linuxカーネル
↓
init / systemd
↓
各種サービス
また、ファイルシステムについても、個別の知識だけではなく、それぞれの関係を理解する必要があります。
- パーティション
- マウント
- ファイルシステム
/etc/fstab- inode
- ハードリンク
- シンボリックリンク
このあたりは実際にLinux環境を触りながら勉強したほうが理解しやすいと思います。
試験結果
結果は以下でした。
| 試験 | 結果 |
|---|---|
| 101-500 | 720点 |
| 102-500 | 740点 |
無事にLPIC-1を取得することができました。
勉強してみた感想
LPIC-1を勉強して良かったと思ったのは、普段なんとなく使っていたLinuxの仕組みを整理できたことです。 例えば、普段ならコマンドを実行して終わりだったものについて、
この設定はどこに保存されているのか? このプロセスはどのように起動するのか? Linuxの起動時に何が起きているのか? このパーミッションはなぜ必要なのか?
といったことを意識するようになりました。 資格を取ること自体も目的ではありますが、Linuxを体系的に勉強するきっかけとしては良かったと思います。
これから
LPIC-1ではLinuxの基本的な部分を勉強したので、次はさらにLinuxの管理・運用について理解を深めたいと思っています。
また、Linuxだけではなく、
- Kubernetes
- コンテナ
- ネットワーク
- サーバー構築
などについても勉強していきたいです。
LPIC-1の勉強で得た知識を、実際の環境構築や自宅サーバーなどでも使っていこうと思います。
まとめ
今回のLPIC-1の勉強では、
- まず試験範囲を確認する
- 参考書で全体を理解する
- Linuxを実際に触る
- スピードマスターを解く
- 間違えた問題を調べる
- 問題集を繰り返す
という流れで勉強しました。
特に、問題の答えを暗記するのではなく、なぜその答えになるのかを理解することを意識したのが良かったと思います。
最終的に101-500が720点、102-500が740点で、LPIC-1に合格することができました。