LPIC-2想定問題集(全100問)
LPIC-2(201試験・202試験)の出題範囲番号に沿って作成した、本番の試験に近い4択形式の想定問題集です。上級(LPIC-2相当)の章立てで学んだ内容の仕上げ・総仕上げの確認にお使いください。
LPIC-2は、カーネルやストレージ、ネットワークサービス(DNS・Webサーバー・メールサーバーなど)の運用知識が幅広く問われます。この問題集も実際の出題範囲番号(200〜212)に沿って分野分けしているので、苦手な分野を把握しながら復習できます。分野ごとに「採点する」ボタンを押すと、その分野の正解数と各問題の解説がまとめて表示されます。
挑戦したい分野の見出しをクリックすると、その分野の問題だけが開きます。
各分野の出題範囲番号は、LPIC-2の公式試験範囲の番号に対応しています。
間違えた問題は、解説を読んだあとに上級の該当章に戻って復習すると定着しやすくなります。
201試験の範囲(キャパシティプランニング/カーネル/システム起動/ファイルシステム/ストレージ/ネットワーク設定/システム保守)
200 キャパシティプランニング(10問)出題範囲 200
Q1. システムのCPU・メモリ・ディスクI/Oなどのリソース使用状況を継続的に記録し、将来の負荷を予測する活動を何と呼びますか。
正解はキャパシティプランニングです。
現在のリソース使用状況を継続的に監視・記録し、将来的な負荷増大やハードウェア更改の時期を予測して計画することで、性能問題や障害を未然に防ぐ活動です。
パッケージ管理はソフトウェアのインストールや更新を扱う作業、アクセス制御は誰が何を操作できるかを制限する仕組み、バージョン管理はソースコードや設定ファイルの変更履歴を管理する仕組みで、いずれもリソースの将来予測とは異なる活動です。
Q2. CPU・メモリ・ディスクI/Oなどの複数のリソースの使用状況を記録・表示できる、sysstatパッケージに含まれるコマンドはどれですか。
正解はsarです。
sar(System Activity Reporter)はsysstatパッケージに含まれ、CPU・メモリ・ディスクI/O・ネットワークなど様々なリソースの使用状況を記録し、過去の履歴も含めて表示できる点が特徴です。
topはリアルタイムのプロセス状況を表示するコマンドですが、長期的な履歴保存は行いません。
freeはメモリとスワップの使用状況のみを表示するコマンド、dfはディスクの空き容量のみを表示するコマンドで、どちらもsarほど幅広いリソースを横断的に扱うものではありません。
Q3. ディスクI/Oの統計情報(転送速度や待ち時間など)を表示するコマンドはどれですか。
正解はiostatです。
iostatはディスクデバイスごとの読み書きの転送速度や、I/O待ち時間(await)などの統計情報を表示し、ディスクがボトルネックになっていないかを調べる際に使われます。
vmstatは仮想メモリやCPU、プロセス数など複数の情報をまとめて表示するコマンドで、ディスクI/Oに特化した詳細な統計は持ちません。
mpstatはCPUごとの使用率の内訳を表示するコマンド、netstatはネットワーク接続の統計を表示するコマンドで、どちらもディスクI/Oの統計とは対象が異なります。
Q4. 仮想メモリ、プロセス、CPU、I/Oなどのシステム全体の統計情報を一定間隔で表示するコマンドはどれですか。
正解はvmstatです。
vmstatは、実行待ちプロセス数、空きメモリ、スワップの状況、CPU使用率、I/Oブロック数などを横断的に1行ずつ、指定した間隔で表示する、システム全体の負荷を素早く概観するのに適したコマンドです。
iostatはディスクI/Oに特化した統計、mpstatはCPUごとの使用率に特化した統計を表示するコマンドで、vmstatほど幅広い項目を1つの画面で扱うものではありません。
sar -uはsarコマンドでCPU使用率だけを表示するオプションであり、vmstatのような複数リソースの同時表示とは異なります。
Q5. 現在実行中のプロセスをリアルタイムでCPU使用率順に表示するコマンドはどれですか。
正解はtopです。
topは実行中のプロセスをCPU使用率やメモリ使用率などでソートしながら、画面を一定間隔で更新してリアルタイムに表示します。
ps auxは現在実行中のプロセスのスナップショットを1回だけ表示するコマンドで、リアルタイム更新は行いません。
uptimeはシステムの稼働時間と平均負荷を表示するコマンド、freeはメモリの使用状況を表示するコマンドで、どちらもプロセスごとのCPU使用率をリアルタイムに追跡する機能ではありません。
Q6. システムの平均負荷(ロードアベレージ)を確認できるコマンドとして適切なものはどれですか。
正解はuptimeです。
uptimeコマンドは、システムの稼働時間に加えて、1分・5分・15分間の平均負荷(ロードアベレージ)を表示し、システムがどの程度の負荷にさらされているかを素早く把握できます。
df -hはディスクの空き容量を人間が読みやすい単位で表示するコマンド、free -mはメモリの使用状況をメガバイト単位で表示するコマンドで、どちらも負荷の指標としてのロードアベレージは表示しません。
lsofは開いているファイルやソケットを一覧表示するコマンドで、負荷の数値指標とは異なる情報です。
Q7. メモリとスワップの使用状況を確認するコマンドはどれですか。
正解はfreeです。
freeコマンドは、物理メモリ(RAM)とスワップ領域それぞれについて、全体量・使用量・空き容量・キャッシュ量などを一覧表示します。
topはプロセスごとの情報を中心にリアルタイム表示するコマンドで、メモリ全体のサマリーも表示されますがメモリ専用のコマンドではありません。
psは実行中プロセスの一覧を表示するコマンド、uptimeは稼働時間と負荷を表示するコマンドで、どちらもメモリ・スワップの使用状況を主目的として表示するものではありません。
Q8. 特定のファイルやソケットを現在開いているプロセスを調べるコマンドはどれですか。
正解はlsofです。
lsof(list open files)は、どのプロセスがどのファイル・デバイス・ネットワークソケットを開いているかを一覧表示でき、「このファイルを使用中のプロセスが分からずアンマウントできない」といった状況の調査に役立ちます。
free・uptime・vmstatはいずれもメモリやCPU・負荷など、システム全体のリソース状況を表示するコマンドであり、個々のファイルとプロセスの対応関係を調べる機能は持ちません。
Q9. CPUごとの使用率の内訳を確認できるコマンドはどれですか。
正解はmpstatです。
mpstatは、マルチコア・マルチプロセッサ環境において、CPUコアごとの使用率(ユーザー時間・システム時間・アイドル時間など)を個別に表示でき、特定のコアに処理が偏っていないかなどを調査できます。
iostatはディスクI/Oに特化した統計コマンド、freeはメモリの使用状況を表示するコマンド、uptimeは稼働時間と平均負荷を表示するコマンドで、いずれもCPUコアごとの詳細な内訳表示は主目的としていません。
Q10. sysstatパッケージが収集したリソース使用状況の履歴データを、長期的な傾向分析のために蓄積する仕組みを何と呼びますか。
正解はsadcによるデータ収集とsarでの参照です。
sysstatパッケージには、cron経由などで定期的にリソース統計を収集して蓄積するsadcと、蓄積されたデータを後から参照・表示するsarが含まれており、両者を組み合わせることで長期的な傾向分析が可能になります。
dmesgはカーネルのリングバッファに記録された起動時などのメッセージを表示するコマンドで、リソース統計の蓄積とは無関係です。
journalctlはsystemd-journaldが収集したログを閲覧するコマンド、logrotateはログファイルを世代管理・圧縮・削除する仕組みで、どちらもsysstatのデータ蓄積の仕組みとは異なります。
201 Linuxカーネル(10問)出題範囲 201
Q11. 現在実行中のカーネルのバージョンを確認するコマンドはどれですか。
正解はuname -rです。
unameはシステム情報を表示するコマンドで、-rオプションによって現在実行中のカーネルのリリースバージョンだけを簡潔に表示できます。
kernel-versionというコマンドはLinuxの標準コマンドとしては存在しません。
lsmod -vやmodinfo -rという指定も標準的なオプションの組み合わせではなく、それぞれモジュール一覧表示・モジュール情報表示が本来の役割であり、カーネル自体のバージョン確認には用いません。
Q12. カーネルの設定パラメータを実行時に動的に確認・変更するコマンドはどれですか。
正解はsysctlです。
sysctlは、/proc/sys以下に対応するカーネルパラメータ(例:ネットワークのパケット転送可否やファイルディスクリプタ数の上限など)を、システムを再起動することなく確認・変更するためのコマンドです。
modprobeとinsmodはどちらもカーネルモジュールをロード(insmodはアンロードも可能)するためのコマンドで、既存のカーネルパラメータの調整とは異なります。
depmodはモジュールの依存関係データベースを再構築するコマンドで、パラメータの変更機能は持ちません。
Q13. カーネルパラメータを恒久的に(再起動後も)設定するために編集する設定ファイルはどれですか。
正解は/etc/sysctl.confです。
このファイルにカーネルパラメータを記述しておくと、システム起動時に自動的に読み込まれて適用されます(sysctl -pコマンドで即時反映させることも可能です)。
/etc/fstabは起動時に自動マウントするファイルシステムの一覧を定義するファイル、/etc/modules.confはロードするカーネルモジュールに関する古い設定ファイル(現在は/etc/modprobe.d/配下が一般的)で、どちらもカーネルパラメータそのものの設定ファイルではありません。
/boot/grub/grub.cfgはGRUBが生成するブートメニューの設定ファイルで、直接編集すべきファイルでもなく、カーネルパラメータの恒久設定の場所でもありません。
Q14. カーネルモジュールの依存関係データベースを再構築するコマンドはどれですか。
正解はdepmodです。
depmodは、インストールされているカーネルモジュール群を解析し、どのモジュールがどのモジュールに依存しているかという情報を記録したデータベース(modules.dep)を再構築します。
このデータベースをもとにmodprobeが依存関係を解決しながらモジュールをロードします。
modprobeは実際のロード・アンロード操作を行うコマンド、rmmodはモジュールを直接アンロードするコマンド、lsmodはロード済みモジュールの一覧を表示するコマンドで、いずれも依存関係データベースの再構築そのものは行いません。
Q15. 起動時にルートファイルシステムをマウントする前に必要なドライバーなどを一時的に提供する仕組みはどれですか。
正解はinitramfs(initrd)です。
initramfsは、起動の初期段階でメモリ上に展開される一時的なルートファイルシステムで、実際のルートファイルシステムをマウントするために必要なストレージドライバーなどを含み、本来のルートファイルシステムへの切り替え(switch_root等)が完了するまでの橋渡しをします。
GRUBはカーネルとinitramfsをメモリに読み込んで起動するブートローダーであり、ドライバーの提供自体はinitramfsの役割です。
systemd-udevdはデバイスイベントを処理するデーモンで、initramfs内でも動作しますが、initramfsという仕組みそのものではありません。
/etc/fstabは起動後に使うマウント設定ファイルで、起動初期段階の処理とは直接関係しません。
Q16. カーネルのソースコードから新しいカーネルを構築する作業の一般的な流れとして正しいものはどれですか。
正解は、設定(make configやmake menuconfigなど)でカーネルの機能を選択し、make でコンパイルし、make modules_installでモジュールをインストールし、make installでカーネル本体をインストールするという流れです。
パッケージ化(パッケージマネージャー向けのビルド)は多くのディストリビューションで追加的に行われる場合もありますが、それだけでカーネルの構築作業が完結するわけではありません。
sysctlは実行中のカーネルのパラメータを調整するコマンドであり、新しいカーネル自体を構築する作業とは全く異なります。
GRUBの編集は新しいカーネルをインストールした後にブートメニューへ反映させる最終段階の作業の一つに過ぎず、それだけでカーネル構築が完了するわけではありません。
Q17. カーネルが出力したブート時のメッセージ(起動ログ)を確認するコマンドはどれですか。
正解はdmesgです。
dmesgは、カーネルがメッセージを一時的に蓄積するリングバッファの内容を表示するコマンドで、主にハードウェアの検出やドライバのロードなど、起動時に出力された情報を確認する際に使われます。
journalctl -u networkは特定のユニット(この例ではnetworkという名前のサービス)のログを表示するコマンドで、カーネル全体の起動ログを網羅的に見る目的とは異なります。
/etc/dmesg.confというファイルは標準的には存在しません。
sar -bはディスクI/O全体の統計を表示するsarのオプションで、カーネルの起動メッセージとは無関係です。
Q18. 現在ロードされているカーネルモジュールの詳細情報(説明やパラメータなど)を表示するコマンドはどれですか。
正解はmodinfoです。
modinfoは指定した1つのカーネルモジュールについて、作者情報、説明文、ライセンス、設定可能なパラメータなどの詳細情報を表示します。
lsmodは現在ロードされているモジュールの名前・サイズ・依存モジュール数だけを一覧表示するコマンドで、個々のモジュールの詳細情報までは表示しません。
depmodは依存関係データベースを再構築するコマンド、sysctlはカーネルパラメータを扱うコマンドで、どちらもモジュール単体の詳細情報表示を目的としたものではありません。
Q19. /procディレクトリの役割として正しいものはどれですか。
正解は、カーネルやプロセスに関する情報を仮想ファイルシステムとして参照できるようにすることです。
/proc以下のファイルは実ディスク上には存在せず、カーネルが保持している情報(実行中のプロセスの状態やカーネルパラメータなど)を、ファイルを読み書きする感覚でリアルタイムに参照・一部変更できるようにする仮想ファイルシステムです。
実行可能ファイルの格納場所は/binや/usr/binなど、ユーザーのホームディレクトリは/home以下、パッケージのキャッシュは/var/cache以下などが一般的で、いずれも/procの役割とは異なります。
Q20. カーネルにロードするモジュールのパラメータを指定する際に編集する設定ファイルのディレクトリとして一般的なものはどれですか。
正解は/etc/modprobe.d/です。
このディレクトリ以下の設定ファイルに、特定のモジュールをロードする際のオプションやパラメータ、エイリアス、ブラックリスト(ロードを禁止するモジュール)などを記述します。
/etc/sysconfig/networkはRed Hat系で伝統的に使われたネットワーク全体の設定ファイルで、モジュールパラメータとは対象が異なります。
/etc/security/や/etc/pam.d/は、PAM(認証モジュール)に関する設定を格納するディレクトリで、カーネルモジュールのパラメータ設定とは全く別の仕組みです。
202 システム起動(10問)出題範囲 202
Q21. BIOSベースのシステムで、ブートローダーがインストールされる一般的な場所はどれですか。
正解はMBR(マスターブートレコード)です。
BIOSベースのシステムでは、ディスクの先頭にある512バイトのMBR領域にブートローダー(GRUBの初期段階のコードなど)がインストールされ、ファームウェアがここを読み込んで起動処理を開始します。
/boot/efiはUEFIシステムにおけるEFIシステムパーティションの一般的なマウントポイントで、BIOSベースの構成とは異なる仕組みです。
/etc/grub.dはgrub.cfgを生成するための設定スクリプト群を置くディレクトリで、ブートローダー本体がインストールされる場所ではありません。
スワップ領域は仮想メモリのために使われる領域で、ブートローダーのインストール先ではありません。
Q22. GRUB2の設定ファイルを生成する際に使用する、ディストリビューションで一般的なコマンドはどれですか。
正解はgrub2-mkconfig(Debian系ではupdate-grub)です。
このコマンドは/etc/default/grubの設定や/etc/grub.d/以下のスクリプト、インストール済みカーネルの一覧などをもとに、実際にGRUBが読み込むgrub.cfgを自動生成します。
grub-installはブートローダー本体(コード)をMBRやEFIシステムパーティションにインストールするコマンドで、設定ファイルの生成とは役割が異なります。
mkinitrdやdracutはinitramfs(起動用の一時ファイルシステム)を生成するためのツールで、GRUBの設定ファイル生成とは別の作業です。
Q23. systemdにおいて、システムが通常起動する既定のターゲットを確認・変更するコマンドはどれですか。
正解はsystemctl get-default / systemctl set-defaultです。
get-defaultで現在の既定ターゲット(例:graphical.target)を確認でき、set-defaultで変更すると、次回以降の起動時にそのターゲットが使われるようになります。
systemctl list-jobsは現在進行中のsystemdのジョブ一覧を表示するコマンドで、既定ターゲットの設定とは異なります。
systemctl daemon-reexecはsystemd自体を再実行する特殊なコマンド、systemctl isolateは現在の起動セッション内で即座に特定のターゲットへ切り替えるコマンドで、どちらも「次回起動時の既定値」を恒久的に設定するものではありません。
Q24. systemdで、特定のターゲット(かつてのランレベルに相当)に即座に切り替えるコマンドはどれですか。
正解はsystemctl isolateです。
systemctl isolateは、指定したターゲットとその依存関係にあるユニットだけを起動し、それ以外の現在動いているユニットを停止することで、SysVinitにおけるランレベル切り替えに相当する動作をその場で即座に行います。
systemctl enableは次回起動時にユニットが自動起動するよう設定するコマンドで、即座の切り替えではありません。
systemctl maskはユニットの起動自体を完全にブロックするコマンド、systemctl reloadは稼働中のサービスに設定の再読み込みをさせるコマンドで、どちらもターゲット(ランレベル相当)の切り替えとは異なる操作です。
Q25. システム起動時に自動的に有効化されるようサービスを設定するコマンドはどれですか。
正解はsystemctl enableです。
enableは、対応するユニットファイルへのシンボリックリンクを適切なターゲットのディレクトリ内に作成することで、次回以降の起動時にそのサービスが自動的に開始されるようにします。
systemctl startは今すぐそのサービスを起動するコマンドですが、再起動後も自動的に起動するようにする設定(enable)とは別の操作です(enableとstartは両方行うことも多いですが、意味が異なります)。
systemctl statusはサービスの現在の状態を確認するだけのコマンド、systemctl maskは起動自体を完全にブロックするコマンドで、どちらも自動起動の有効化とは逆または無関係の操作です。
Q26. UEFIシステムにおいて、ブートローダーなどが格納される標準的なパーティション・マウントポイントはどれですか。
正解は/boot/efiです。
UEFIシステムでは、FAT32形式でフォーマットされたEFIシステムパーティション(ESP)が一般的に/boot/efiにマウントされ、GRUBなどのブートローダーの実行ファイルやブートエントリ情報が格納されます。
/var/efi、/etc/efi、/usr/efiといったパスはLinuxの標準的なディレクトリ構成には存在せず、EFIシステムパーティションの一般的なマウントポイントでもありません。
Q27. systemdが起動中に発生したエラーなど、起動シーケンスのログを確認するコマンドとして適切なものはどれですか。
正解はjournalctl -bです。
-bオプションを付けると、現在(または番号を指定して過去)の起動セッションに限定したログだけを抽出して表示でき、起動時に何が起きたかを効率よく調査できます。
dpkg -lはインストール済みパッケージの一覧を表示するコマンド、crontab -lは現在のユーザーのcronジョブ一覧を表示するコマンド、ip addrはネットワークインターフェースの情報を表示するコマンドで、いずれも起動シーケンスのログを確認する機能ではありません。
Q28. サービスが起動しない原因を調査する際、特定のサービスの状態や直近のログを確認するコマンドはどれですか。
正解はsystemctl status サービス名です。
このコマンドは、指定したサービスが現在active(稼働中)かfailed(失敗)かといった状態に加え、直近の関連ログの一部も合わせて表示するため、トラブルシューティングの最初の一歩として非常に有用です。
systemctl list-unit-filesはシステム上に存在する全ユニットファイルの一覧と有効・無効状態を表示するコマンドで、特定サービスの詳細な状態確認には向きません。
systemctl daemon-reloadはユニットファイルの変更をsystemdに反映させるコマンド、systemctl maskサービス名はそのサービスの起動自体をブロックするコマンドで、どちらも原因調査そのものを行う機能ではありません。
Q29. あるサービスが誤って起動されないよう、完全に無効化(起動自体をブロック)するコマンドはどれですか。
正解はsystemctl maskです。
maskは対象のユニットファイルへのシンボリックリンクを/dev/nullに向けることで、手動でのsystemctl startを含め、あらゆる方法での起動を完全にブロックします。
systemctl disableは自動起動の設定(起動時のシンボリックリンク)を解除するだけで、誰かが手動でstartすれば普通に起動できてしまうため、「完全に無効化」という点ではmaskより弱い操作です。
systemctl stopは現在稼働中のサービスを停止するコマンドで、再度startされることを防ぐものではありません。
systemctl killはプロセスに直接シグナルを送って強制終了させるコマンドで、将来の起動を禁止する機能ではありません。
Q30. システム起動時にルートファイルシステムをマウントする前の段階で問題が起きた場合に入る、最小限の操作しかできないシェル環境を何と呼びますか。
正解はレスキューシェル(初期RAMディスク内のシェル)です。
ルートファイルシステムのマウントに失敗するなど、起動の初期段階で問題が発生すると、initramfs(初期RAMディスク)内に用意された最小限のコマンドだけが使えるシェル(レスキューシェル、emergency shellなどと呼ばれる)に落ち、そこで原因調査やマウントの手動実行などを行います。
ログインシェルはユーザーがログインした際に起動される通常のシェル、サブシェルは既存のシェルから派生した子プロセスとしてのシェル、リモートシェルはSSHなどネットワーク経由で接続するシェルで、いずれも起動初期段階のトラブル対応専用の環境とは異なります。
203 ファイルシステムとデバイス(10問)出題範囲 203
Q31. パーティションテーブルを作成・編集する伝統的なコマンドはどれですか。
正解はfdiskです。
fdiskは対話的にディスクのパーティションテーブル(主にMBR形式)を作成・編集する伝統的なコマンドで、GPT形式についてはpartedやgdiskといった別のツールもよく使われます。
mkfsはパーティション内に新しいファイルシステムを作成するコマンドで、パーティションの区画自体の作成はfdiskなどで事前に行う必要があります。
mountは作成済みのファイルシステムを利用可能にする接続操作、fsckはファイルシステムの整合性をチェック・修復するコマンドで、どちらもパーティションテーブル自体の編集機能ではありません。
Q32. GPT形式のパーティションテーブルを扱うのに適したコマンドはどれですか。
正解はparted(またはgdisk)です。
partedやgdiskは、2TBを超えるディスクなどで必要になるGPT(GUID Partition Table)形式に対応しており、GPT環境でのパーティション作成・編集に適しています。
従来のfdiskは伝統的にMBR形式を主な対象としており、バージョンによってGPT対応状況が異なるため、選択肢としては限定的です。
mkswapはスワップ領域を初期化するコマンド、tune2fsはext系ファイルシステムのパラメータを調整するコマンドで、どちらもパーティションテーブルの形式自体を扱うものではありません。
Q33. ext系ファイルシステムのパラメータ(ラベルやマウント回数チェックの設定など)を調整するコマンドはどれですか。
正解はtune2fsです。
tune2fsは、ext2/ext3/ext4ファイルシステムに対して、ボリュームラベル、予約ブロック比率、マウント回数チェックの間隔など、作成後のファイルシステムの様々なパラメータを変更できます。
mkfs.ext4は新規にext4ファイルシステムを作成(フォーマット)するコマンドで、既存ファイルシステムのパラメータ調整は主目的ではありません。
fsck.ext4はext4ファイルシステムの整合性をチェック・修復するコマンドで、パラメータの調整機能ではありません。
e2labelはボリュームラベルの設定・確認に特化したコマンドで、tune2fsが持つより幅広いパラメータ調整機能の一部に相当します。
Q34. スワップ領域として使用するパーティションを初期化するコマンドはどれですか。
正解はmkswapです。
mkswapは、指定したパーティションやファイルに対してスワップ領域として使うためのヘッダー情報を書き込み、初期化します。
初期化しただけではまだ使用されず、実際に有効化するにはswaponを使う必要があります。
swaponは初期化済みのスワップ領域を有効化するコマンド、swapoffはスワップ領域を無効化するコマンドで、どちらも初期化そのものではありません。
fdiskはパーティションを作成・編集するコマンドで、スワップ用の領域区画を用意する段階では使いますが、スワップとしての初期化はmkswapの役割です。
Q35. 初期化済みのスワップ領域を有効にするコマンドはどれですか。
正解はswaponです。
swaponは、mkswapで初期化済みのスワップ領域を実際に有効化し、カーネルが仮想メモリの一部として使用できる状態にします。
mkswapはスワップ領域として初期化するコマンドであり、有効化そのものは行いません。
swapoffはその逆で、有効なスワップ領域を無効化するコマンドです。
mount -t swapという記法は一般的な使い方ではなく、スワップ領域の有効化にはswaponコマンドを使うのが標準的な方法です。
Q36. ファイルシステムの種類に応じたUUIDやラベルを確認するコマンドはどれですか。
正解はblkidです。
blkidは、各ブロックデバイス(パーティションなど)のUUID、ボリュームラベル、ファイルシステムの種類(ext4・xfsなど)を表示するコマンドで、/etc/fstabでUUID指定によるマウント設定を行う際によく利用されます。
fdisk -lはパーティションのサイズや種類(パーティションタイプ)の一覧を表示しますが、UUIDやラベルの表示が主目的ではありません。
mount -aは/etc/fstabに記載された全てのファイルシステムをマウントするコマンド、df -Tはマウント済みファイルシステムの種類を表示に加えるオプションで、どちらもUUID・ラベルの確認に特化したものではありません。
Q37. 自動マウントデーモン(autofs)の役割として正しいものはどれですか。
正解は、必要なときにだけ自動的にファイルシステムをマウントし、使われなくなったらアンマウントすることです。
autofsは、対象のディレクトリへのアクセスが発生した瞬間に該当するファイルシステムを自動マウントし、一定時間アクセスがなければ自動的にアンマウントすることで、常時マウントしておく必要をなくし、リソースの節約やネットワーク共有の管理を効率化します。
起動時に全パーティションを常にマウントするのは/etc/fstabの一般的な仕組みであり、autofsの「必要な時だけ」という特徴とは異なります。
パーティションの自動フォーマットやネットワークインターフェースの自動設定は、それぞれmkfsやDHCP/NetworkManagerなどの役割であり、autofsの機能ではありません。
Q38. ファイルシステムの不良ブロックをチェックするためのコマンドはどれですか。
正解はbadblocksです。
badblocksは、ディスク上の物理的な不良ブロック(読み書きができない領域)をスキャンして検出するコマンドで、mkfsの-cオプションから内部的に呼び出されることもあります。
fsck -yはファイルシステムの整合性チェックで検出された問題を全て自動的に「はい」で修復するオプションですが、物理的な不良ブロックのスキャン自体が主目的のコマンドではありません。
「mkfsの別名」というのは誤りで、badblocksは独立したコマンドです。
tune2fs -lはext系ファイルシステムの現在のパラメータ一覧を表示するオプションで、不良ブロックのスキャン機能ではありません。
Q39. デバイスファイルの一覧を自動的に生成・管理する、カーネルと連携した仕組みはどれですか。
正解はudevです。
udevは、カーネルがハードウェアの接続・切断を検知した際に送出するイベントを受け取り、/dev以下のデバイスファイルを動的に生成・削除・命名する仕組みで、USBメモリの抜き差しなどに即座に対応できます。
cronは定期的なジョブ実行のスケジューラ、syslogはログメッセージの収集・記録の仕組み、NTPは時刻同期のプロトコルで、いずれもデバイスファイルの管理とは異なる役割です。
Q40. あるファイルシステムをマウントする際、読み取り専用でマウントしたい場合に指定するオプションはどれですか。
正解は-o roです。
mount -o roは、ファイルシステムを読み取り専用(read only)でマウントし、書き込みを一切禁止するオプションで、破損したファイルシステムの調査時や、意図しない書き込みを防ぎたい場合に使われます。
-o rwは逆に読み書き可能(read write、多くの場合デフォルト)でマウントするオプションです。
-o noexecはそのファイルシステム上の実行ファイルの実行を禁止するオプション、-o syncは書き込みを同期的(バッファリングせず即座にディスクへ反映)に行うオプションで、どちらも読み取り専用化そのものを行うオプションではありません。
204 高度なストレージ管理(10問)出題範囲 204
Q41. 複数台のディスクを組み合わせて冗長性や性能を向上させる技術を何と呼びますか。
正解はRAIDです。
RAID(Redundant Array of Independent Disks)は、複数の物理ディスクを組み合わせて1つの論理的なストレージとして扱い、ミラーリングやストライピング、パリティなどの方式によって冗長性や読み書き性能を向上させる技術です。
LVMは複数のディスクを柔軟に管理し容量の拡張・縮小をしやすくする技術で、RAIDとは目的が近い部分もありますが仕組みは異なります。
NFSとSambaはどちらもネットワーク越しにファイルを共有するためのプロトコル・ソフトウェアで、ディスクの冗長化とは異なる役割です。
Q42. ソフトウェアRAIDを構築・管理するLinuxの代表的なコマンドはどれですか。
正解はmdadmです。
mdadmは、Linuxカーネルのソフトウェアmdデバイスドライバを使ったRAIDアレイの作成・管理・監視を行うための標準的なコマンドです。
lvcreateとpvcreateはどちらもLVM(論理ボリューム管理)に関するコマンドで、論理ボリュームや物理ボリュームの作成を行いますが、RAIDアレイそのものの構築コマンドではありません。
partedはパーティションテーブルを編集するコマンドで、RAIDの構築とは異なる階層の操作です。
Q43. データを2台のディスクに同じ内容で書き込み、冗長性を確保するRAIDレベルはどれですか。
正解はRAID 1(ミラーリング)です。
RAID 1は同じデータを複数(通常2台)のディスクに同時に書き込むことで、一方のディスクが故障してももう一方からデータを失わずに済む冗長性を提供します。
RAID 0(ストライピング)はデータを複数のディスクに分散して書き込むことで速度を向上させますが、冗長性は持たず、1台でも故障すると全データを失います。
RAID 5とRAID 6はパリティ情報を使って冗長性を確保する方式ですが、ミラーリングのように同じデータをそのまま複製するわけではなく、仕組みが異なります。
Q44. パリティ情報を分散して保持し、1台のディスク故障までなら復旧できるRAIDレベルはどれですか。
正解はRAID 5です。
RAID 5は、3台以上のディスクを使い、各ディスクにデータとパリティ情報を分散して保持することで、1台のディスクが故障してもパリティ情報から元のデータを再計算して復旧できます。
RAID 0は冗長性を持たないストライピングのみの構成で、1台でも故障すると復旧できません。
RAID 1はミラーリングによる冗長化で、パリティという仕組みは使いません。
RAID 10(RAID 1+0)も1台の故障には耐えられますが、パリティ方式ではなくミラーリングとストライピングの組み合わせであり、「パリティを分散して保持する」という説明には当てはまりません。
Q45. LVM(Logical Volume Manager)において、物理ディスクをLVMで使用できるように初期化するコマンドはどれですか。
正解はpvcreateです。
pvcreateは、物理ディスクやパーティションに対してLVM用のメタデータを書き込み、物理ボリューム(PV)としてLVMの管理下に組み込むための最初のステップとなるコマンドです。
vgcreateはPVをまとめてボリュームグループ(VG)を作成するコマンドで、PVの作成自体はpvcreateの役割です。
lvcreateはVGの中に論理ボリューム(LV)を作成するコマンドで、さらに後の段階の操作です。
mkfsはファイルシステムを作成するコマンドで、LVMの階層構造における物理ボリューム化とは異なる作業です。
Q46. LVMにおいて、複数の物理ボリューム(PV)をまとめてボリュームグループ(VG)を作成するコマンドはどれですか。
正解はvgcreateです。
vgcreateは、pvcreateで作成済みの1つ以上の物理ボリューム(PV)を束ねて、1つの大きな容量プールであるボリュームグループ(VG)を作成します。
pvcreateはPV自体を作成する、より前の段階のコマンドです。
lvcreateはVGの中から実際にファイルシステムを作成できる論理ボリューム(LV)を切り出すコマンドで、VGの作成そのものではありません。
lvextendは既存のLVの容量を拡張するコマンドで、VGの新規作成とは異なる操作です。
Q47. LVMのボリュームグループから、実際にファイルシステムを作成できる論理ボリューム(LV)を作成するコマンドはどれですか。
正解はlvcreateです。
lvcreateは、vgcreateで作成済みのボリュームグループ(VG)の中から指定した容量を切り出し、論理ボリューム(LV)を作成します。
作成したLVに対してmkfsを実行することで、実際に使用できるファイルシステムができあがります。
vgcreateはVG自体を作成するコマンド、pvcreateはPVを作成するコマンドで、どちらもLVの作成そのものより前の段階の操作です。
lvresizeは既存のLVのサイズを変更するコマンドで、新規作成の操作ではありません。
Q48. 稼働中のシステムを止めずに論理ボリュームのサイズを拡張できる、LVMの大きな利点として正しいものはどれですか。
正解は、lvextendと対応するファイルシステムのリサイズコマンド(resize2fsやxfs_growfsなど)を組み合わせることで、多くの場合システムを稼働させたままオンラインで容量を拡張できることです。
これは、従来のパーティション単位でのサイズ変更に比べたLVMの大きな利点の一つです。
実際には再起動を必要としない点がむしろLVMの利点であり、「常に再起動が必要」という説明は誤りです。
容量拡張にあたって、既存データを保持したまま拡張できるため、再フォーマットは通常不要です。
パーティションテーブルの再作成という作業はLVMの階層とは別の、より低レベルな操作であり、LVMの論理ボリューム拡張の一般的な手順ではありません。
Q49. LVMにおいて、ある時点のスナップショット(変更前の状態)を取得する機能を作成するコマンドはどれですか。
正解はlvcreate -s(またはsnapshotオプション)です。
既存の論理ボリュームに対してlvcreateに-sオプションを付けて実行することで、その時点の状態を保持したスナップショットボリュームを作成でき、バックアップ取得やロールバックに活用できます。
vgcreateやpvcreateは、それぞれボリュームグループ・物理ボリュームを新規作成するコマンドで、スナップショット作成のオプションとしては使われません。
mkfsはファイルシステムを新規作成するコマンドであり、スナップショット機能とは無関係です。
Q50. iSCSIの役割として最も適切なものはどれですか。
正解は、IPネットワーク経由でSCSIコマンドをやり取りし、リモートのストレージをブロックデバイスとして利用できるようにすることです。
iSCSIは、本来は直接接続していたSCSIストレージへのコマンドをIPネットワーク上でカプセル化して送受信する技術で、遠隔地にあるストレージをまるでローカルのディスクのように扱えるようにします。
ファイルをユーザー間で共有するプロトコルという説明はNFSやSambaのようなファイル共有プロトコルの役割であり、iSCSIはファイル単位ではなくブロックデバイス単位で提供する点が異なります。
DNSの名前解決やメールの転送はそれぞれ全く別のプロトコル(DNS、SMTP)が担う役割です。
205 ネットワーク設定(10問)出題範囲 205
Q51. ネットワークインターフェースにIPアドレスを恒久的に設定する際、Debian系で伝統的に編集するファイルはどれですか。
正解は/etc/network/interfacesです。
Debian系ディストリビューションでは、伝統的にこのファイルにネットワークインターフェースごとのIPアドレス、サブネットマスク、ゲートウェイなどの設定を記述していました(近年はNetworkManagerやnetplanを使う構成も増えています)。
/etc/resolv.confはDNSサーバーの参照先を設定するファイル、/etc/hostsはホスト名とIPアドレスの静的対応を記述するファイルで、どちらもインターフェース自体のIPアドレス設定ファイルではありません。
/etc/nsswitch.confは名前解決などで参照する情報源の優先順位を設定するファイルで、インターフェース設定とは異なります。
Q52. DNSサーバーの参照先を設定する伝統的な設定ファイルはどれですか。
正解は/etc/resolv.confです。
このファイルのnameserver行に、名前解決の際に問い合わせるDNSサーバーのIPアドレスを記述します。
/etc/network/interfacesはネットワークインターフェースのIPアドレス設定を記述するファイルで、DNSサーバーそのものの指定とは別の項目です。
/etc/hostsはホスト名とIPアドレスの静的対応をローカルに定義するファイルで、DNSサーバーへの問い合わせ先を指定するものではありません。
/etc/servicesはポート番号とサービス名の対応を定義するファイルで、DNSサーバーの参照先とは無関係です。
Q53. ホスト名とIPアドレスの対応を、DNSを使わずローカルに定義するファイルはどれですか。
正解は/etc/hostsです。
このファイルにホスト名とIPアドレスの対応を直接記述しておくと、DNSサーバーに問い合わせることなく、ローカルで名前解決ができます(多くの設定でDNSより優先して参照されます)。
/etc/resolv.confはDNSサーバーの参照先を指定するファイルで、ホスト名の対応自体を直接記述するものではありません。
/etc/servicesはポート番号とサービス名の対応を記述するファイル、/etc/nsswitch.confは各種データベースの参照順序を制御する設定ファイルで、どちらもホスト名・IPアドレスの対応を直接保持するファイルではありません。
Q54. 名前解決の際に、/etc/hostsとDNSのどちらを先に参照するかなどの順序を制御するファイルはどれですか。
正解は/etc/nsswitch.confです。
このファイルのhosts行で、名前解決の際に/etc/hosts(files)とDNS(dns)のどちらを先に参照するか、あるいはLDAPなど他の情報源も使うかといった優先順序を設定します。
/etc/resolv.confはDNSサーバーのアドレスを指定するファイルであり、参照順序自体の制御は行いません。
/etc/hostsはホスト名・IPアドレスの対応を記述するデータそのものであり、順序の制御設定ファイルではありません。
/etc/servicesはポート番号とサービス名の対応を記述するファイルで、名前解決の優先順位とは無関係です。
Q55. ルーティングテーブルを表示・操作する、比較的新しいLinuxコマンドはどれですか。
正解はip routeです。
ipコマンドのrouteサブコマンドは、現在のLinuxで標準的に使われる、ルーティングテーブルの表示・追加・削除を行うためのコマンドです。
routeは同様の機能を持つ古いコマンドですが、多くのディストリビューションで非推奨とされつつあります。
netstat -rもルーティングテーブルを表示できますが、netstat自体が非推奨傾向にあり、ip routeほど標準的には使われません。
ifconfigはネットワークインターフェースのIPアドレス設定を扱うコマンドで、ルーティングテーブルの直接的な操作は主目的ではありません。
Q56. NetworkManagerをコマンドラインから操作するためのツールはどれですか。
正解はnmcliです。
nmcliは、NetworkManagerが管理する接続設定の確認・作成・変更・削除などをコマンドラインから行うためのツールで、スクリプトに組み込んで自動化することもできます。
nmtuiはNetworkManagerを操作するためのテキストベースの対話的UIで、nmcliとは異なりメニュー形式の画面を使う点が特徴です。
ip addrはカーネルのネットワークインターフェース情報を直接確認・操作するコマンドで、NetworkManagerの設定自体を扱うものではありません。
systemctl networkのようなコマンドは標準的には存在しません。
Q57. ネットワークインターフェースをIEEE 802.1QのVLANに対応させる設定として適切なものはどれですか。
正解は、ip linkコマンドなどを使ってVLAN IDを持つサブインターフェース(例:eth0.10)を作成することです。
これにより、1つの物理インターフェース上で複数のVLANタグ付きトラフィックを扱えるようになり、IEEE 802.1Qの規格に沿ったVLANタギングに対応できます。
/etc/hostsはホスト名の対応を記述するファイル、sshd_configはSSHサーバーの設定ファイル、crontabは定期実行ジョブの設定ファイルで、いずれもVLANの設定とは全く異なる目的のファイルです。
Q58. 複数の物理ネットワークインターフェースを1つの論理インターフェースとしてまとめ、冗長性や帯域増強を図る技術を何と呼びますか。
正解はボンディング(bonding、あるいはteaming)です。
複数の物理NICを1つの論理インターフェースとして束ねることで、1本のリンクが切れても通信を継続できる冗長性や、帯域をまとめて使う性能向上を実現します。
ブリッジングは複数のネットワークセグメントをL2レベルで接続し、1つのセグメントのように振る舞わせる技術で、冗長化・帯域集約が主目的のボンディングとは異なります。
VLANタギングは1つの物理回線上で複数の論理ネットワークを分離する技術、NATはIPアドレスを変換する技術で、どちらも複数インターフェースの束ねとは異なる仕組みです。
Q59. 複数のネットワークセグメントをソフトウェア的に接続し、あたかも1つのセグメントのように振る舞わせる技術を何と呼びますか。
正解はブリッジです。
ブリッジは、複数のネットワークインターフェース(セグメント)をソフトウェア的に接続し、L2(データリンク層)レベルで1つのセグメントであるかのように中継する技術で、仮想マシンのネットワーク構成などでもよく使われます。
ボンディングは複数の物理NICを1つの論理インターフェースとして束ねる技術で、セグメントの中継とは目的が異なります。
VLANは逆に1つの物理ネットワークを複数の論理セグメントに分離する技術で、ブリッジとは逆方向の操作です。
iSCSIはストレージをネットワーク経由で利用する技術で、ネットワークセグメントの接続とは無関係です。
Q60. 現在のIPルーティングテーブルや近隣キャッシュなど、ネットワークの詳細な状態をまとめて確認できる比較的新しいコマンド群はどれですか。
正解はipコマンドです。
ipコマンドは、ip addr(インターフェースのアドレス)、ip route(ルーティングテーブル)、ip neigh(近隣キャッシュ、従来のARPテーブルに相当)といった複数のサブコマンドを通じて、現在のネットワークの詳細な状態を一貫した使い方でまとめて確認できる、現在のLinuxにおける標準的なツールです。
ifconfig・route・arpの組み合わせも似た情報を扱えますが、これらはいずれも個別の古いコマンドであり、多くのディストリビューションで非推奨とされています。
pingとtracerouteは到達性や経路の確認に特化したコマンドで、ルーティングテーブルや近隣キャッシュそのものの表示はできません。
nslookupは名前解決の確認に使うコマンドで、ルーティングや近隣キャッシュとは対象が異なります。
206 システム保守とバックアップ(10問)出題範囲 206
Q61. ファイルやディレクトリをアーカイブ(1つのファイルにまとめる)する伝統的なコマンドはどれですか。
正解はtarです。
tar(tape archive)は、複数のファイルやディレクトリを1つのアーカイブファイルにまとめたり、逆にアーカイブから元のファイル群を展開したりする、バックアップの基本となる伝統的なコマンドです。
gzipはファイルを圧縮する(複数ファイルをまとめる機能は持たない)コマンドで、tarと組み合わせて使われることが多いです。
rsyncは2つの場所の差分を同期するコマンドで、1つのアーカイブファイルにまとめる機能とは異なります。
cpioもアーカイブ作成・展開ができるコマンドですが、「伝統的に広く使われる」という点ではtarがより代表的な選択肢です。
Q62. ソースとコピー先の差分だけを効率的に転送する、バックアップやミラーリングによく使われるコマンドはどれですか。
正解はrsyncです。
rsyncは転送元と転送先のファイルを比較し、変更があった部分(あるいはファイル全体のうち変更されたブロック)だけを効率的に転送できるため、定期的なバックアップやミラーリングに広く使われます。
tarはアーカイブの作成・展開が主目的で、差分検出による効率的な転送機能は標準では持ちません。
cp -rはディレクトリを再帰的にコピーするコマンドですが、毎回全体をコピーするため差分転送の効率化はされません。
ddはブロック単位の低レベルなコピーを行うコマンドで、ファイル単位の差分検出は行いません。
Q63. ディスクやパーティション単位でビット単位の完全なコピーを作成できる低レベルなコマンドはどれですか。
正解はddです。
ddは、ファイルシステムの構造を意識せず、指定したブロックデバイスやファイルに対してビット単位(バイト単位)で低レベルなコピーを行うコマンドで、ディスク全体のイメージ作成や複製に使われます。
cpは通常ファイルシステム上のファイル・ディレクトリ単位でコピーするコマンドで、パーティション全体のビット単位コピーには向きません。
tarはファイル群をアーカイブ化するコマンド、rsyncは差分転送に特化したコマンドで、どちらもddのような低レベルなブロックデバイスの複製を主目的とはしていません。
Q64. 古いログファイルを自動的に圧縮・世代管理・削除する仕組みを提供するLinuxの標準的な機能はどれですか。
正解はlogrotateです。
logrotateは、設定ファイルに従ってログファイルを定期的にローテーション(名前変更・圧縮)し、指定した世代数を超えた古いログを自動的に削除する仕組みで、多くのディストリビューションで標準的に組み込まれています。
cronはlogrotateを定期的に起動するためのスケジューラとして使われることもありますが、ログの世代管理機能そのものはcron自体には含まれません。
rsyslogはログメッセージの収集・転送を行うデーモンで、世代管理はlogrotateと連携して行われます。
journalctl --vacuumはsystemd-journaldが管理するジャーナルログのサイズや保持期間を制御するオプションで、ファイルベースの伝統的なログのローテーションとは別の仕組みです。
Q65. Debian系で、依存関係の変更を伴う大規模なアップグレード(リリース間の更新含む)を行う際に使われるコマンドはどれですか。
正解はapt dist-upgrade(新しいaptではfull-upgrade)です。
このコマンドは、通常のapt upgradeでは行わないパッケージの追加削除を伴うような、依存関係の変更が必要な大規模なアップグレード(ディストリビューションのリリース間の更新などを含む)に対応します。
make installはソースコードからビルドしたソフトウェアをインストールする際に使うコマンドで、パッケージ管理システムを通したアップグレードとは異なる手法です。
chown -R rootはファイルの所有者を再帰的に変更するコマンド、crontab -rは現在のユーザーのcrontabを削除するコマンドで、どちらもシステムアップグレードとは無関係です。
Q66. バックアップ戦略における「フルバックアップ」の説明として正しいものはどれですか。
正解は、対象データの全体を毎回まるごとバックアップする方式です。
フルバックアップは復元時の手順がシンプルという利点がある一方、毎回のバックアップに時間とストレージ容量がかかるという特徴があります。
「前回のバックアップ以降に変更された部分だけ」をバックアップする方式は増分バックアップの説明に当たります。
「直近のフルバックアップ以降に変更された部分を累積して」バックアップする方式は差分バックアップの説明に当たり、増分バックアップとは復元の手間や保存容量の面で異なる特徴を持ちます。
「バックアップを一切取らない」という選択肢はバックアップ戦略そのものではなく、明らかに誤りです。
Q67. tarアーカイブをgzip形式で同時に圧縮しながら作成するオプションの組み合わせとして正しいものはどれですか。
正解はtar -czfです。
cは新規アーカイブの作成(create)、zはgzip形式での圧縮、fはアーカイブファイル名の指定を意味し、これらを組み合わせることで圧縮済みのtarアーカイブ(.tar.gz)を作成できます。
tar -xzfは既存の.tar.gzアーカイブを展開(extract)するためのオプションの組み合わせで、新規作成ではなく展開専用の操作です。
tar -tzfはアーカイブの中身の一覧を表示(list)するだけのオプションで、作成・展開のどちらでもありません。
tar -dzfという組み合わせは一般的な作成用のオプションではなく、意図した圧縮アーカイブの作成にはなりません。
Q68. システムに新しいパッケージのソースリポジトリを追加する際、Debian系で編集することがある設定ディレクトリはどれですか。
正解は/etc/apt/sources.list.d/です。
このディレクトリに個別の.listファイルを追加することで、メインの/etc/apt/sources.listを直接編集せずに、追加のAPTリポジトリを管理できます。
/etc/yum.repos.d/はRed Hat系ディストリビューションでyumが参照する、同様の役割を持つディレクトリですが、Debian系のaptでは使用されません。
/etc/dnf/はdnfパッケージマネージャーの設定ディレクトリ、/etc/rpm/はrpmコマンド自体の設定ディレクトリで、どちらもRed Hat系の仕組みであり、Debian系のリポジトリ追加には使用しません。
Q69. cpioコマンドの用途として正しいものはどれですか。
正解は、ファイルのリストを標準入力から受け取り、アーカイブの作成・展開を行うことです。
cpioは、findコマンドなどで生成したファイルパスの一覧をパイプ経由で受け取り、それらをまとめてアーカイブ化(またはアーカイブから展開)する伝統的なコマンドで、initramfsの作成などにも使われます。
ネットワーク設定はipやnmcliなどのコマンドが担う作業、ユーザー管理はuseradd/usermodなどが担う作業、パッケージの依存関係解決はapt/dnfなどのパッケージマネージャーが担う作業で、いずれもcpioの役割とは異なります。
Q70. バックアップの保存先として、同一マシンの別ディスクだけでなく物理的に離れた場所にも保管することが推奨される理由として最も適切なものはどれですか。
正解は、火災や盗難など、サイト全体に影響する災害が発生してもデータを保護できるためです。
同一マシンや同一拠点内の別ディスクにしかバックアップがない場合、その拠点自体に被害が及ぶ災害(火災・水害・盗難など)が起きると、元データとバックアップの両方を同時に失うリスクがあります。
物理的に離れた場所(オフサイト)にも保管することで、このようなリスクを分散できます。
離れた場所への転送はネットワーク経由になることが多く、必ずしも取得速度が速くなるわけではありません。
むしろ保存先が増える分、容量やコストは増加する傾向にあり、暗号化についても遠隔地への転送時にはむしろ必要性が高まることが多く、不要になるわけではありません。
202試験の範囲(DNS・Webサーバー/ファイル共有・クライアント管理/メールサービス・セキュリティ)
207-208 DNS・Webサーバー(10問)出題範囲 207-208
Q71. Linuxで広く使われている代表的なDNSサーバーソフトウェアはどれですか。
正解はBINDです。
BIND(Berkeley Internet Name Domain)は、Linux環境で広く使われている代表的なDNSサーバーソフトウェアで、権威DNSサーバーとしてもキャッシュDNSサーバーとしても利用できます。
Postfixはメールサーバー(MTA)、ApacheはWebサーバー、Sambaはファイル・プリンタ共有サーバーのソフトウェアで、いずれもDNSの名前解決を主目的としたソフトウェアではありません。
Q72. BINDの設定で、管理するゾーン(ドメイン)の一覧や基本設定を記述する主な設定ファイルはどれですか。
正解はnamed.confです(Debian系ではnamed.conf.localなどに分割管理されることも多いですが、基本設定の中心となるファイルです)。
named.confには、BINDがどのゾーンを管理し、どのゾーンファイルを参照し、どのようなアクセス制御を行うかといった設定が記述されます。
resolv.confはDNSクライアント側がどのDNSサーバーに問い合わせるかを指定するファイルで、DNSサーバー自体の設定ファイルではありません。
hosts.confやnsswitch.confは、名前解決の参照順序などクライアント側の挙動を制御するファイルで、BINDの基本設定ファイルとは異なります。
Q73. あるドメインのホスト名をIPv4アドレスに対応させるDNSレコードの種類はどれですか。
正解はAレコードです。
Aレコードは、ホスト名(例:www.example.com)をIPv4アドレスに対応させる、最も基本的なDNSレコードです(IPv6に対応させる場合はAAAAレコードを使います)。
MXレコードはそのドメイン宛のメールを受け取るメールサーバーを指定するレコード、NSレコードはそのドメインの権威DNSサーバーを指定するレコード、CNAMEレコードはあるホスト名を別のホスト名の別名として定義するレコードで、いずれもIPv4アドレスへの直接の対応付けとは異なる役割です。
Q74. あるドメイン宛のメールを受け取るメールサーバーを指定するDNSレコードの種類はどれですか。
正解はMXレコードです。
MX(Mail Exchange)レコードは、そのドメイン宛のメールをどのメールサーバーへ配送すべきかを、優先度(値が小さいほど優先)とともに指定します。
Aレコードはホスト名をIPv4アドレスに対応させるレコードで、メールサーバー自体の指定という役割は持ちません(MXレコードで指定されたホスト名を、さらにAレコードで解決する流れになります)。
PTRレコードはIPアドレスからホスト名を逆引きするためのレコード、TXTレコードは任意のテキスト情報(SPFレコードの記述などにも使われる)を保持するレコードで、どちらもメールサーバーの指定を主目的としたレコードではありません。
Q75. IPアドレスからホスト名を逆引きする際に使われるDNSレコードの種類はどれですか。
正解はPTRレコードです。
PTR(Pointer)レコードは、専用の逆引きゾーン(in-addr.arpaなど)に登録され、IPアドレスから対応するホスト名を調べる逆引き(reverse lookup)に使われます。
Aレコードはその逆方向、つまりホスト名からIPv4アドレスを調べる正引きに使われるレコードです。
MXレコードはメールサーバーの指定、NSレコードは権威DNSサーバーの指定を行うレコードで、どちらもIPアドレスからホスト名を調べる逆引きの仕組みとは異なります。
Q76. Linuxで広く使われている代表的なWebサーバーソフトウェアの組み合わせとして正しいものはどれですか。
正解はApache HTTP ServerとNginxです。
この2つは、Linux環境におけるWebサーバーソフトウェアとして特に広く使われている代表例です。
BINDはDNSサーバー、PostfixはメールのMTA(転送エージェント)のソフトウェアで、どちらもWebサーバーではありません。
SambaとNFSはどちらもファイル共有のためのプロトコル・ソフトウェアで、Web配信の機能は持ちません。
DovecotはIMAP/POP3サーバー、Procmailはメール配送エージェント(MDA)で、いずれもメール関連のソフトウェアであり、Webサーバーとは異なります。
Q77. Apacheの仮想ホスト設定で、1つのサーバーで複数のWebサイトをホスト名ごとに提供する仕組みを何と呼びますか。
正解はバーチャルホスト(特に名前ベースのバーチャルホスト)です。
この仕組みを使うと、1台のApacheサーバー(1つのIPアドレス)上で、アクセスされたホスト名(Hostヘッダー)に応じて異なるWebサイトのコンテンツを振り分けて提供できます。
リバースプロキシは、クライアントからのリクエストを受け取って別のバックエンドサーバーに転送する仕組みで、1台のサーバーで複数サイトをホストする目的とは異なる用途です。
ロードバランサーは複数のサーバーに負荷を分散させる仕組み、CDN(コンテンツデリバリーネットワーク)はコンテンツを地理的に分散したサーバーから配信する仕組みで、どちらもバーチャルホストとは異なる概念です。
Q78. クライアントからのリクエストを受け取り、内部の複数のバックエンドサーバーに転送する役割を果たすサーバー構成を何と呼びますか。
正解はリバースプロキシです。
リバースプロキシは、外部のクライアントから見ると1つのサーバーのように見える窓口となり、実際には内部の複数のバックエンドサーバーへリクエストを振り分けて転送し、応答をクライアントに返します。
負荷分散やSSL終端、キャッシュなどの機能を併せ持つこともあります。
フォワードプロキシは、クライアント側に立って外部へのアクセスを代理するプロキシで、リバースプロキシとは逆方向の役割です。
「キャッシュサーバーのみ」という説明は、プロキシが持つ機能の一部に過ぎず、バックエンドへの転送という役割全体を説明したものではありません。
DNSフォワーダーは、DNSの問い合わせを別のDNSサーバーに転送する仕組みで、Webリクエストの転送とは異なります。
Q79. Webサーバーの通信をSSL/TLSで暗号化する際に必要となるものはどれですか。
正解はサーバー証明書と秘密鍵です。
SSL/TLSによる暗号化通信を行うには、サーバーの身元を証明し公開鍵を含むサーバー証明書と、それに対応する秘密鍵をサーバー側に用意する必要があります。
MXレコードはメールサーバーを指定するDNSレコードで、Webサーバーの暗号化設定とは無関係です。
ボンディング設定は複数のネットワークインターフェースを束ねる技術、iSCSIターゲットはネットワークストレージを提供する仕組みで、どちらもSSL/TLSによる暗号化通信の実現には直接関係しません。
Q80. Squidの主な役割として正しいものはどれですか。
正解は、Webプロキシ・キャッシュサーバーとして機能し、Webアクセスを中継・キャッシュすることです。
Squidはクライアントからのリクエストを代理で取得し、取得したコンテンツをキャッシュすることで帯域の節約や応答の高速化を実現するほか、アクセス制御(URLフィルタリング)にも使われます。
DNSサーバーの役割はBINDなどが担い、メールサーバーの役割はPostfixなどが担い、ファイル共有サーバーの役割はSambaやNFSが担うもので、いずれもSquidの主目的とは異なります。
209-210 ファイル共有とネットワーククライアント管理(10問)出題範囲 209-210
Q81. Unix/Linux系OS同士でファイルシステムをネットワーク経由で共有するための代表的なプロトコルはどれですか。
正解はNFSです。
NFS(Network File System)は、Unix/Linux系OS間で、リモートのディレクトリをあたかもローカルのファイルシステムの一部であるかのようにマウントして利用できるようにする、代表的なファイル共有プロトコルです。
Samba(SMB/CIFS)は主にWindowsとの相互運用を目的としたファイル共有の仕組みで、Unix/Linux同士の共有が主目的のNFSとは利用シーンが異なります。
FTPはファイルを転送(コピー)するためのプロトコルで、ファイルシステムとしてマウントして使う仕組みとは異なります。
HTTPはWebコンテンツの配信プロトコルで、ファイル共有そのものを主目的とはしていません。
Q82. NFSで共有するディレクトリと、それを許可するクライアントを記述する設定ファイルはどれですか。
正解は/etc/exportsです。
NFSサーバー側では、このファイルに公開(エクスポート)するディレクトリと、それへのアクセスを許可するクライアントのIPアドレスや権限(読み取り専用かどうかなど)を1行ずつ記述します。
/etc/fstabは(NFSサーバーの設定ではなく)クライアント側で起動時に自動マウントする設定を記述するファイルです。
/etc/samba/smb.confはSambaの共有設定ファイルで、SMB/CIFSプロトコル用のものでありNFSの設定ファイルではありません。
/etc/nfs.confはNFSの全般的な動作設定に関わるファイルですが、どのディレクトリを公開するかという「エクスポート設定」自体は/etc/exportsが担います。
Q83. WindowsとLinux間でファイル共有やプリンタ共有を実現するために使われる、SMB/CIFSプロトコルを実装したソフトウェアはどれですか。
正解はSambaです。
Sambaは、WindowsのSMB/CIFSプロトコルをLinux上で実装したソフトウェアで、LinuxサーバーをWindowsクライアントから見たファイルサーバーやプリントサーバーとして機能させることができます。
NFSはUnix/Linux系OS間で使われることが多いファイル共有プロトコルで、SMB/CIFSとは別の仕組みです。
BINDはDNSサーバー、PostfixはメールのMTAで、どちらもファイル・プリンタ共有とは異なる役割のソフトウェアです。
Q84. Sambaの主な設定ファイルはどれですか。
正解は/etc/samba/smb.confです。
このファイルに、共有するディレクトリの一覧、アクセス権限、ユーザー認証の方式(ワークグループやドメイン参加の設定を含む)など、Sambaの動作に関わる設定を記述します。
/etc/exportsはNFSサーバーで公開するディレクトリを定義するファイルで、Sambaの設定ファイルではありません。
/etc/nfs.confもNFS関連の設定ファイルであり、Sambaとは別のプロトコル用です。
/etc/named.confはDNSサーバーBINDの設定ファイルで、ファイル共有とは無関係です。
Q85. NFS共有をクライアント側からマウントする際に指定するファイルシステムタイプはどれですか。
正解はnfsです。
NFS共有をマウントする際は、mount -t nfs サーバー:/共有パス /マウントポイントのように、ファイルシステムタイプとしてnfsを指定します。
cifsはWindowsのSMB共有をマウントする際に指定するファイルシステムタイプで、NFSとは別のプロトコル用です。
ext4はローカルディスク上の一般的なLinuxファイルシステムの種類で、ネットワーク共有用のタイプではありません。
smbという指定は一般的なマウント時のファイルシステムタイプ名としては使われず、正しくはcifsを指定します。
Q86. WindowsのSMB共有をLinuxからマウントする際に指定する、一般的なファイルシステムタイプはどれですか。
正解はcifsです。
WindowsのSMB共有をマウントする際は、mount -t cifsのように、cifsファイルシステムタイプを指定するのが一般的です(cifs-utilsパッケージが必要になることが多いです)。
nfsはUnix/Linux系のファイル共有プロトコル用のタイプで、SMB共有には使用しません。
ext4とxfsはどちらもローカルディスク用のLinuxファイルシステムの種類であり、ネットワーク越しのSMB共有をマウントする際のタイプ指定には使いません。
Q87. ネットワーク上で複数のLinuxマシンが共通のユーザー認証情報を使うために使われる、ディレクトリサービスの代表例はどれですか。
正解はLDAPです。
LDAP(Lightweight Directory Access Protocol)は、ユーザーアカウントなどの情報を一元的なディレクトリサーバーで管理し、複数のマシンがそれを参照することで、同じユーザー名・パスワードで様々なマシンにログインできるようにする仕組みでよく使われます。
DHCPはIPアドレスなどのネットワーク設定を自動的に割り当てる仕組みで、ユーザー認証情報の一元管理とは異なる目的です。
NFSはファイル共有プロトコル、FTPはファイル転送プロトコルで、どちらもユーザー情報を一元管理するディレクトリサービスの役割は持ちません。
Q88. Linuxにおいて様々なPAM対応アプリケーションの認証方式を柔軟に設定するための仕組みを何と呼びますか。
正解はPAM(Pluggable Authentication Modules)です。
PAMは、ログイン・su・sshdなど様々なアプリケーションの認証処理を、設定ファイル(/etc/pam.d/以下)を通じてモジュール単位で柔軟に組み替えられるようにする仕組みで、LDAP認証やパスワード強度のチェックなど様々なモジュールを組み合わせて利用できます。
LDAP単体は、PAMが利用できる認証情報源の一つに過ぎず、それ自体が認証方式を柔軟に切り替える枠組みというわけではありません。
NFSv4 ACLはファイルのアクセス制御リストに関する仕組みで、認証方式の設定とは異なります。
Kerberosも認証プロトコルの一つであり、PAMが提供する「様々な認証方式を切り替える枠組み」そのものではありません。
Q89. ネットワーク上でチケットベースの認証を行い、パスワードを平文でネットワークに流さずにシングルサインオンを実現するプロトコルはどれですか。
正解はKerberosです。
Kerberosは、信頼できるチケット発行サーバー(KDC)からチケットを取得し、そのチケットを提示することでパスワードそのものを都度ネットワークに流さずに認証を行う仕組みで、一度の認証で複数のサービスにアクセスできるシングルサインオンの実現に広く使われます。
DHCPはネットワーク設定の自動割り当てを行う仕組み、NFSv3はファイル共有プロトコル、rsyncはファイルの差分同期を行うコマンドで、いずれもチケットベースの認証プロトコルとしての機能は持ちません。
Q90. DHCPサーバーが払い出すIPアドレスなどの設定の有効期間を何と呼びますか。
正解はリース(lease)です。
DHCPで割り当てられるIPアドレスなどの設定情報には有効期限(リース期間)が設定されており、クライアントは期限が切れる前にDHCPサーバーへ更新(renew)を要求することで、引き続き同じ設定を使い続けます。
トークンは認証や処理の一時的な識別子として使われる一般的な用語で、DHCPのIPアドレス割り当て期間を指す言葉ではありません。
セッションは通信や処理の一連のやり取りを指す一般的な用語、チケットはKerberosなどの認証プロトコルで使われる概念で、どちらもDHCP特有の「割り当て期間」を表す専門用語ではありません。
211-212 メールサービスとセキュリティ(10問)出題範囲 211-212
Q91. メールを送信元から宛先のメールサーバーまで転送するソフトウェアの総称はどれですか。
正解はMTA(Mail Transfer Agent)です。
MTAは、メールをサーバーからサーバーへとSMTPプロトコルを使って転送するソフトウェアの総称で、PostfixやSendmailなどが代表例です。
MUAはユーザーがメールを作成・閲覧するために使うクライアントソフトウェア(メールソフト)を指す言葉で、サーバー間の転送を行うものではありません。
MDAはMTAから受け取ったメールを実際にローカルのメールボックスへ配送するソフトウェアで、サーバー間転送とは段階が異なります。
DNSは名前解決の仕組みであり、メールの転送自体を行うソフトウェアではありません(ただしMXレコードを通じて転送先の決定には関わります)。
Q92. メールをローカルのメールボックスに配送する役割を担うソフトウェアの総称はどれですか。
正解はMDA(Mail Delivery Agent)です。
MDAは、MTAがサーバー間で転送してきたメールを受け取り、最終的に各ユーザーのメールボックス(受信箱)へ実際に書き込む役割を担うソフトウェアで、procmailなどが代表例です。
MTAはサーバー間の転送を担うソフトウェアで、ローカルへの最終配送はMDAの役割です。
MUAはユーザーがメールを閲覧・作成するためのクライアントソフトウェアで、配送処理そのものは行いません。
IMAPはメールクライアントがサーバー上のメールを閲覧・管理するためのプロトコルで、ソフトウェアの種別を指す言葉ではありません。
Q93. メールクライアントがサーバー上のメールボックスを同期的に管理できる、比較的新しいメール受信プロトコルはどれですか。
正解はIMAPです。
IMAPは、メールをサーバー上に残したまま、複数の端末から同じメールボックスの状態(既読・未読やフォルダ構成など)を同期的に参照・管理できるプロトコルで、複数デバイスを使う現代的な利用スタイルに適しています。
SMTPはメールの送信・転送に使われるプロトコルで、受信・閲覧のためのプロトコルではありません。
POP3はメールをクライアント側にダウンロードし、基本的にサーバーから削除する伝統的な受信プロトコルで、複数端末間の同期には不向きです。
NNTPはネットニュース(電子掲示板的なシステム)のためのプロトコルで、メールの受信プロトコルとは異なります。
Q94. メールをサーバーからダウンロードして閲覧する、比較的シンプルな伝統的プロトコルはどれですか。
正解はPOP3です。
POP3(Post Office Protocol version 3)は、サーバー上にあるメールをクライアント側にダウンロードし、基本的にはサーバー側から削除するというシンプルな仕組みを持つ、比較的古くからある受信プロトコルです。
IMAPはサーバー上でメールを管理しながら同期的にアクセスできる、より高機能な受信プロトコルで、POP3とは設計思想が異なります。
SMTPはメールの送信・転送に使われるプロトコルで、受信のためのものではありません。
LDAPはディレクトリサービスのプロトコルで、メールの受信とは無関係です。
Q95. Postfixの主な設定ファイルとして正しいものはどれですか。
正解は/etc/postfix/main.cfです。
このファイルに、Postfixの基本的な動作(ホスト名、リレー設定、各種制限など)を記述します。
/etc/exim4/exim4.confは、Postfixとは別のMTAであるExim4の設定ファイルです。
/etc/sendmail.cfは、より古いMTAであるSendmailの設定ファイルで、Postfixの設定ファイルではありません。
/etc/dovecot/dovecot.confはIMAP/POP3サーバーであるDovecotの設定ファイルで、MTAであるPostfixとは役割が異なります。
Q96. IMAP/POP3サーバーとして広く使われるソフトウェアはどれですか。
正解はDovecotです。
Dovecotは、メールクライアントからのIMAP・POP3によるアクセスを受け付ける、Linux環境で広く使われているメール受信サーバーソフトウェアです。
PostfixはメールのMTA(送信・転送)を担当するソフトウェアで、DovecotとはMTAとMDA/受信サーバーという別の役割分担になります。
BINDはDNSサーバー、SquidはWebプロキシ・キャッシュサーバーのソフトウェアで、どちらもメールの受信とは異なる役割です。
Q97. 送信元メールアドレスのなりすましを防ぐための送信ドメイン認証技術として正しい組み合わせはどれですか。
正解はSPFとDKIMです。
SPF(Sender Policy Framework)は、そのドメインからのメールを送信してよいサーバーのIPアドレスをDNSのTXTレコードで公開する仕組み、DKIMは電子署名によってメールの送信元が正当であることとメール内容が改ざんされていないことを検証できるようにする仕組みで、どちらも送信ドメイン認証に使われます。
ARPとRARPはIPアドレスとMACアドレスを相互に変換するための、全く別の階層のプロトコルです。
NATとPATはIPアドレス・ポート番号を変換する技術、VLANとSTPはネットワークのセグメント分割やループ防止に関する技術で、いずれもメールの送信ドメイン認証とは無関係です。
Q98. パケットフィルタリング型ファイアウォールの設定に使われる、近年の主流なLinuxカーネルのフレームワークはどれですか。
正解はnftables(従来はiptables)です。
nftablesは、従来広く使われてきたiptablesに代わる、より新しいLinuxカーネルのパケットフィルタリングフレームワークで、パケットの許可・拒否・変換などのルールを定義してファイアウォール機能を実現します。
SELinuxやAppArmorはどちらもプロセス単位での強制アクセス制御(MAC)を行う仕組みで、ネットワークパケットのフィルタリングとは異なるセキュリティの層を扱います。
fail2banはログを監視して不正アクセスを検知し、ファイアウォールのルールを動的に追加するツールであり、パケットフィルタリングの基盤フレームワーク自体ではなく、それを利用する側のツールです。
Q99. 不正なログイン試行を検知し、該当するIPアドレスを一時的にブロックするセキュリティツールはどれですか。
正解はfail2banです。
fail2banは、SSHなどの認証ログを監視し、短時間に繰り返しログイン失敗が記録されたIPアドレスを自動的に検知して、ファイアウォール(iptablesやnftablesなど)のルールに追加し、一時的にアクセスをブロックします。
tcpdumpはパケットをキャプチャして解析するツールであり、自動的な検知・ブロックの機能は持ちません。
nftables自体はルールに従ってパケットをフィルタリングする基盤であり、不正ログイン試行を自動的に検知してルールを追加する機能はfail2banのような別のツールと組み合わせて初めて実現されます。
lsofは開いているファイルやソケットを調べるコマンドで、不正ログインの検知・ブロックとは異なる用途です。
Q100. VPN(Virtual Private Network)を構築するためのオープンソースソフトウェアの代表例はどれですか。
正解はOpenVPNです。
OpenVPNは、インターネットのような公衆網上に、暗号化されたトンネルを使って仮想的なプライベートネットワーク(VPN)を構築するための代表的なオープンソースソフトウェアです。
OpenSSHはリモートログインやファイル転送を安全に行うためのソフトウェアで、ポートフォワーディングなど一部VPN的な使い方もできますが、VPN構築を主目的としたソフトウェアとしてはOpenVPNが代表例です。
OpenLDAPはディレクトリサービス(LDAP)の実装、OpenSSLは暗号化通信やデータの暗号化・署名のためのライブラリ・ツール群で、どちらもVPNそのものを構築するためのソフトウェアではなく、他のソフトウェアから利用される基盤的な技術です。