InfraAcademy

InfraAcademy Blog

LPIC 102試験(102-500)の練習問題10問。シェルスクリプトからsudoまで、6つの主題を解説付きで確認

著者: ryu | #Linux #LPIC #資格
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

この記事を共有

こんにちは、インフラエンジニアのryuです。

LPIC-1の101試験に合格したら、次は102試験です。101がコマンド操作やファイルシステムが中心だったのに対して、102はシェルスクリプトやユーザー管理、ネットワーク、セキュリティなど、サーバーを運用するときの知識が多く出題されます。

範囲が広く、101とは毛色が違うので、何から確認すればいいか迷う方も多いと思います。

この記事では、102試験(102-500)だけに絞って、6つの主題から合計10問の練習問題を用意しました。すべてオリジナルの問題で、1問ずつ正解と解説を付けています。

101と102から5問ずつ出題した記事は『LPIC-1の練習問題10問』に、101試験だけの問題は『LPIC 101試験(101-500)の練習問題』にあります。今回はそちらと重ならない問題を選んでいるので、あわせて解くと102の範囲をより広く確認できます。

102試験(102-500)の基本

問題に入る前に、102試験の基本を確認しておきます。

LPIC-1は、LPI(Linux Professional Institute)が認定しているLinuxの資格です。現在の試験はバージョン5.0で、102試験の試験番号は 102-500 です。

LPIC-1に認定されるには、101試験と102試験の両方に合格する必要があります。 102試験だけを先に受けることもできますが、2つそろって初めて認定になります。

項目 内容
試験番号 102-500
試験時間 90分
問題数 60問
形式 選択式と、コマンドなどを入力する記述式
合格点 200〜800点のスコアで500点

102試験の6つの主題

102試験の出題範囲は、105から110までの6つの主題に分かれています。

主題 主な項目
105 シェルとシェルスクリプト シェル環境のカスタマイズ、簡単なシェルスクリプトの作成
106 ユーザーインターフェースとデスクトップ X11のインストールと設定、デスクトップ環境、アクセシビリティ
107 管理タスク ユーザーとグループの管理、ジョブのスケジュール、ロケールとタイムゾーン
108 必須システムサービス システム時刻の管理、ログ、メール転送エージェント(MTA)の基本、印刷
109 ネットワークの基礎 インターネットプロトコル、ネットワーク設定、トラブルシューティング、DNSクライアント
110 セキュリティ セキュリティ管理の作業、ホストのセキュリティ、暗号化によるデータ保護

出題範囲の各項目には重み(Weight)が付いていて、重みが大きい項目ほど多く出題されます。正確な重みはLPIの公式ページで確認できます。

101試験との違い

101試験は、コマンドを打ってファイルやプロセスを操作する問題が中心でした。

102試験では、それに加えて「どの設定ファイルに書くか」「書いたあとに何を実行すると反映されるか」を問う問題が増えます。ユーザー管理なら /etc/passwd と /etc/shadow、メールなら /etc/aliases、sudoなら /etc/sudoers といった具合です。

また、ネットワークの主題では、ポート番号やIPアドレスの考え方など、Linuxに限らないネットワークの基礎知識も出題されます。ネットワークの勉強をしたことがない方は、ここで時間がかかりやすいので、早めに手をつけておくと安心です。

そのため、102試験の勉強では、コマンドのオプションだけでなく、設定ファイルのパスと中身もあわせて覚えるようにしましょう。

今回の10問は、6つの主題から次のように出題しています。

問題 主題
問題1〜2 105 シェルとシェルスクリプト
問題3 106 ユーザーインターフェースとデスクトップ
問題4〜5 107 管理タスク
問題6〜7 108 必須システムサービス
問題8〜9 109 ネットワークの基礎
問題10 110 セキュリティ

正解は各問題の下の引用ブロックに書いています。自分の答えを決めてから読み進めてください。

主題105・106の練習問題

まずは、シェルとシェルスクリプト、Xの問題です。

問題1:スクリプトに渡した引数の数

シェルスクリプトの中で、スクリプトに渡された引数(位置パラメータ)の個数が入っている変数はどれですか?

  • A. $0
  • B. $#
  • C. $?
  • D. $@

正解:B

$# には、スクリプトに渡された引数の個数が入ります。$0 はスクリプト自身の名前、$? は直前に実行したコマンドの終了ステータス、$@ は引数のすべてです。

たとえば、引数が足りないときにメッセージを出して終わるスクリプトは次のように書けます。

#!/bin/bash
if [ $# -lt 2 ]; then
  echo "使い方: $0 コピー元 コピー先"
  exit 1
fi
cp "$1" "$2"

$? が 0 なら成功、0 以外なら失敗という決まりもあわせて覚えておきましょう。

問題2:ログインしたときに読み込まれるファイル

bashをログインシェルとして起動したとき、ユーザーごとの設定ファイルとして読み込まれるものはどれですか?

  • A. ~/.bashrc
  • B. ~/.bash_profile
  • C. ~/.bash_logout
  • D. ~/.bash_history

正解:B

ログインシェルのbashは、/etc/profile を読み込んだあと、~/.bash_profile・~/.bash_login・~/.profile の順に探して、最初に見つかった1つを読み込みます。~/.bashrc はログインしない対話シェルで読み込まれるファイルです。~/.bash_logout はログアウトするとき、~/.bash_history はコマンドの履歴を保存するファイルです。

多くのディストリビューションでは、~/.bash_profile の中で ~/.bashrc を読み込むように書かれています。ただ、それは設定ファイルの中身による動きで、bashが直接 ~/.bashrc を読みにいくわけではありません。

問題3:表示先のディスプレイを指定する環境変数

Xのアプリケーションが、どのディスプレイに画面を表示するかを指定する環境変数はどれですか?

  • A. TERM
  • B. DISPLAY
  • C. XAUTHORITY
  • D. SHELL

正解:B

DISPLAY には、:0 や 192.168.1.10:0 のように、表示先のディスプレイを指定します。TERM は端末の種類、XAUTHORITY はXの認証情報を保存したファイルの場所、SHELL はログインシェルのパスです。

主題106は出題数が多くありませんが、DISPLAY の書き方や、Xの設定ファイルの場所は確認しておくと安心です。

主題107・108の練習問題

次は、ユーザー管理やジョブ、ログ、メールといった管理作業の問題です。

問題4:ユーザーのパスワードをロックする

ユーザー tanaka のパスワードをロックして、パスワードでログインできないようにするコマンドはどれですか?

  • A. usermod -L tanaka
  • B. usermod -U tanaka
  • C. usermod -e tanaka
  • D. usermod -G tanaka

正解:A

usermod -L は、/etc/shadow のパスワードの先頭に ! を付けてロックします。-U はロックの解除、-e はアカウントの有効期限の設定、-G は所属するサブグループの設定です。-e と -G はどちらも後ろに値が必要です。

同じロックは passwd -l でもできます。ロックはパスワードによるログインを止めるものなので、SSHの公開鍵認証など、パスワードを使わないログインまで止まるとは限らない点に注意しましょう。

問題5:atで予約したジョブを確認する

at コマンドで予約し、まだ実行されていないジョブの一覧を表示するコマンドはどれですか?

  • A. atrm
  • B. atq
  • C. batch
  • D. crontab -l

正解:B

atq は、予約中のジョブを一覧表示します(at -l でも同じです)。atrm は予約したジョブの削除、batch はシステムの負荷が下がったときに実行するジョブの予約です。crontab -l は、定期実行(cron)の設定を表示するコマンドです。

1回だけ実行するなら at、繰り返し実行するなら cron という使い分けを押さえておきます。at を使えるユーザーは、/etc/at.allow と /etc/at.deny で制限できます。

問題6:コマンドラインからログにメッセージを書く

シェルスクリプトなどから、システムのログにメッセージを書き込むコマンドはどれですか?

  • A. logger
  • B. logrotate
  • C. dmesg
  • D. journalctl

正解:A

logger は、指定したメッセージをsyslogに送ります。logrotate はログファイルのローテーション、dmesg はカーネルのメッセージの表示、journalctl はsystemdのジャーナルの表示に使うコマンドです。

実際に書き込んで確かめると、動きがよく分かります。

logger -p user.notice "バックアップを開始しました"
journalctl -n 5            # 最後の5行を表示
# または
tail -n 5 /var/log/syslog  # Debian系の場合

問題7:エイリアスの設定を反映する

メールの転送先を設定する /etc/aliases を編集したあと、変更を反映するために実行するコマンドはどれですか?

  • A. mailq
  • B. newaliases
  • C. postfix reload
  • D. systemctl restart network

正解:B

/etc/aliases は、編集しただけでは反映されません。newaliases を実行して、MTAが読み込むデータベースを作り直す必要があります。mailq は送信待ちのメールの一覧を表示するコマンドです。

ユーザーごとにメールを転送したいときは、ホームディレクトリに ~/.forward を置く方法もあります。こちらは newaliases を実行しなくても使えます。

主題109・110の練習問題

最後は、ネットワークとセキュリティの問題です。

問題8:IMAPSのポート番号

SSL/TLSで暗号化したIMAP(IMAPS)が使う、標準のポート番号はどれですか?

  • A. 110
  • B. 143
  • C. 993
  • D. 995

正解:C

IMAPSは 993 番を使います。110 はPOP3、143 はIMAP、995 はPOP3Sのポート番号です。

ポート番号は、記述式で数字を答えさせる問題も出ます。メール関係はまとめて表で覚えるのがおすすめです。

サービス ポート番号
SMTP 25
POP3 110
IMAP 143
IMAPS 993
POP3S 995

ポート番号とサービス名の対応は、Linuxでは /etc/services で確認できます。

問題9:デフォルトゲートウェイを追加する

ip コマンドで、デフォルトゲートウェイとして 192.168.1.1 を追加するコマンドはどれですか?

  • A. ip addr add default via 192.168.1.1
  • B. ip route add default via 192.168.1.1
  • C. ip link add default via 192.168.1.1
  • D. ip route del default via 192.168.1.1

正解:B

ルーティングテーブルを操作するのは ip route です。default via のあとにゲートウェイのアドレスを書きます。ip addr はIPアドレス、ip link はネットワークインターフェースの操作に使います。Dの del はルートの削除です。

古い route コマンドなら、route add default gw 192.168.1.1 と書きます。試験では両方の書き方が出てくるので、via と gw の違いに注意しましょう。名前解決のしくみは『DNSとは?』で解説しています。

問題10:sudoの設定ファイルを安全に編集する

/etc/sudoers を編集するとき、保存する前に文法をチェックしてくれるコマンドはどれですか?

  • A. vi /etc/sudoers
  • B. visudo
  • C. sudo -l
  • D. su -

正解:B

visudo は、/etc/sudoers を編集し、保存するときに文法の誤りがないかを確認します。vi で直接編集すると、書き間違えたまま保存してしまい、sudo が使えなくなるおそれがあります。sudo -l は自分が実行できるコマンドの一覧、su - はrootなどほかのユーザーに切り替えるコマンドです。

visudo の中の操作はviと同じです。viの基本操作に自信がない方は『viコマンドの使い方』で確認しておきましょう。

間違えやすいポイントのまとめ

10問を解いてみて、いかがだったでしょうか?

今回の問題に出てきた、取り違えやすい組み合わせを並べておきます。

混同しやすい組み合わせ 違い
$#・$?・$@ 引数の個数、終了ステータス、引数のすべて
~/.bash_profile と ~/.bashrc ログインシェルで読むか、ログインしない対話シェルで読むか
DISPLAY と TERM Xの表示先か、端末の種類か
usermod -L と -U パスワードのロックか、解除か
atq と atrm 予約の一覧か、削除か
logger と logrotate ログに書き込むか、ログを切り替えるか
/etc/aliases と ~/.forward newaliases が必要か、不要か
993 と 995 IMAPSか、POP3Sか
ip route の via と route の gw 新しいコマンドの書き方か、古いコマンドの書き方か
visudo と vi /etc/sudoers 文法チェックがあるか、ないか

102試験は、サーバーの設定ファイルとコマンドをセットで覚えると点数につながりやすい試験です。 問題を解いたら、仮想マシンで logger を実行してログを見たり、/etc/aliases を開いてみたりして、実際の動きを確かめておきましょう。

102試験の練習問題は、InfraAcademyのお知らせ『LPIC102試験の練習問題を100問追加しました』で追加したものもあります。

続きはInfraAcademyの問題演習で

今回の10問で、102試験のどの主題が苦手か見えてきたと思います。

102試験は主題が6つあり、特定の主題だけに偏ると点数が伸びにくくなります。問題数をこなして、苦手な主題を見つけて繰り返し解くのが近道です。InfraAcademyでは「(無料)LPICの練習問題で毎日トレーニング300問」を用意していて、102試験の範囲も無料で解くことができます。

続きは『InfraAcademy の資格模擬問題』から解いてみてください。

Linuxを基本から順番に学び直したい方は、『Linuxロードマップ』で学習の流れを確認できます。勉強の進め方そのものは『LPICの勉強方法』にまとめています。

まとめ

最後に、この記事のポイントを振り返ります。

  • 102試験(102-500)は90分・60問で、200〜800点のスコアで500点が合格ライン
  • LPIC-1の認定には、101と102の両方の合格が必要
  • 出題範囲は105〜110の6つの主題で、シェルスクリプトからセキュリティまで幅広い
  • 設定ファイルは、編集したあとに反映するコマンド(newaliases など)とセットで覚える
  • visudo のように、安全に作業するためのコマンドも出題される

102試験の内容は、サーバーの運用を始めるとすぐに使う知識ばかりです。試験のためだけでなく、実務の準備だと思って1問ずつ確実に覚えていきましょう。

参考

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

株式会社InfraAcademy 代表 / エンジニア

大手メーカーでインフラエンジニアとして勤務した後、ベンチャー企業・スタートアップでフルスタックエンジニアを経験。その後、起業し学習サービス「InfraAcademy」を運営しています。
保有資格:ネットワークスペシャリストなど 運営会社:株式会社InfraAcademy

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る