過去問ドリル

LinuCレベル1 ファイル・ディレクトリの操作と管理 問21

ファイル・ディレクトリの操作と管理/ファイルの配置と検索

locateコマンドに関連する設定ファイル /etc/updatedb.conf の役割として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル1の出題範囲「ファイル・ディレクトリの操作と管理」に対応。実際の試験問題ではありません)

正解:D

解説

locateは、updatedbコマンドがあらかじめ作成したファイル名のデータベースを検索するため高速ですが、データベースを更新するまでは新しいファイルが見つかりません。/etc/updatedb.conf は、updatedbがデータベースを作るときの動作を設定するファイルで、PRUNEPATHS(除外するパス)、PRUNEFS(除外するファイルシステムの種類)、PRUNENAMES(除外するディレクトリ名)などを指定します。/tmp やネットワークファイルシステムなどを対象から外す設定が代表的です。データベースの定期更新は、このファイルではなくcronやsystemdタイマーが updatedb を実行することで行われます。

選択肢ごとの解説

  • A誤り。/etc/updatedb.conf はデータベースの作成方法を設定するファイルで、locateの結果の表示形式を決めるものではありません。
  • B誤り。findはデータベースを使わず実際にディレクトリをたどるコマンドで、/etc/updatedb.conf の設定の影響を受けません。
  • C誤り。定期的な更新は、cronやsystemdタイマーがupdatedbを実行して行います。このファイルは更新のスケジュールを持ちません。
  • D正しい。PRUNEPATHSやPRUNEFSなどで、updatedbがデータベースに登録しないパスやファイルシステムの種類を指定します。
LinuCレベル1の問題を演習モードで解く