過去問ドリル

LinuCレベル2 システムの起動とLinuxカーネル 問34

システムの起動とLinuxカーネル/カーネル実行時における管理とトラブルシューティング

USBメモリを接続したのにudevルールが適用されない。接続した瞬間にカーネルが送出したイベントと、udevが処理したイベントをリアルタイムに表示して確認したい。適切なコマンドはどれか。

当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの起動とLinuxカーネル」に対応。実際の試験問題ではありません)

正解:C

解説

udevadm monitorは、カーネルのuevent(KERNEL)と、udevがルールを処理した後に送出するイベント(UDEV)を待ち受けて表示します。デバイスを抜き差ししながら実行すると、どのイベントが発生し、どのデバイスパスが対象になったかを確認できます。--propertyを付けると各イベントのプロパティも表示でき、ルールの一致条件を書くときの手がかりになります。

選択肢ごとの解説

  • A誤り。udevadm infoは、udevのデータベースから指定したデバイスの属性やプロパティを照会するコマンドで、イベントを待ち受けるものではありません。
  • B誤り。udevadm triggerは、カーネルにデバイスのイベントを再送出させてルールを適用し直すためのコマンドです。
  • C正しい。udevadm monitorはカーネルのueventとudevのイベントをリアルタイムに表示します。
  • D誤り。udevadm settleは、udevのイベントキューが空になるまで待つためのコマンドです。
LinuCレベル2の問題を演習モードで解く