名前

updatedb - ファイル名データベースの更新

書式

updatedb [options]

説明

このマニュアルページは GNU 版 updatedb の使用法を説明しています。 updatedb は、 GNU 版 locate で用いるファイル名データベースを更新するために用いられます。 ファイル名データベースには、 これが更新された最終時点において、 特定のディレクトリ以下に存在していたファイルの一覧が含まれます。 デフォルトのデータベースのファイル名は locateupdatedb が設定、 インストールされたときに決定されます。 データベースの更新頻度と、 どのディレクトリの内容をデータベースにエントリとして追加するかは、 updatedb を実行させる頻度と実行時の引数によって決まります。

ネットワーク環境では、 データベースをそれぞれのファイルシステムのルートに作成して、 そこにそのファイルシステムのエントリを持たせるようにするのが適切です。 そしてそれぞれのファイルシステムにおいては、 updatedb を (そのファイルシステムをローカルディスクに持っている) ファイルサーバーで実行するようにすれば、 ネットワークの余分なトラフィックを防ぐことができます。 ユーザーは locate に検索させるデータベースを、 環境変数やコマンドラインから指定できます。 locate(1) を参照してください。 データベースは結合することはできません。

GNU findutils バージョン 4.0 において、 データベースフォーマット LOCATGE02 が導入されました。 これはバイトオーダーが異なるマシン間において、 データベースの共有を可能とするためのものです。 GNU locate は、 従来の古いフォーマットと、 LOCATE02 のフォーマットを、 いずれも読み込むことができます。 バージョン 4.0 までの古いフォーマットは、 いずれ削除される予定です。

オプション

--findoptions='-option1 -option2...'

find に受け渡すグローバルオプションを指定します。 環境変数 FINDOPTIONS によりこの値を設定することもできます。 デフォルトは未設定です。

--localpaths='path1 path2...'

データベースに取り込むネットワーク以外のディレクトリを指定します。 デフォルトは / です。

--netpaths='path1 path2...'

データベースに取り込むネットワークディレクトリ (NFS, AFS, RFS 等) を指定します。 デフォルトでは何も取り込みません。

--prunepaths='path1 path2...'

データベースに取り込まないディレクトリを明示的に指定します。 指定しなかったものは、 逆に取り込まれるものとなります。 パス名の最後のスラッシュは取り除いてください。 そうしないと updatedb は、 取り除くべきパスとして判断しません (そのような指定は、 正規表現パターンとして用いられるからです)。 環境変数 PRUNEPATHS によりこの値を設定することもできます。 デフォルトは /tmp /usr/tmp /var/tmp /afs です。

--prunefs='path...'

データベースに取り込まないファイルシステムを指定します。 指定しなかったものは逆に取り込まれるものとなります。 なおファイルシステムが取り込まれた際には、 ファイルが削除されることに留意してください。 つまり予定していないファイルシステムのもとに、 ファイルシステムがマウントされると、 それは無視されてしまうことに注意してください。 環境変数 PRUNEFS により、 この値を設定することもできます。 デフォルトは nfs NFS proc です。

--output=dbfile

作成するデータベースのファイル名を指定します。 デフォルトはシステムによって異なります。 Debian GNU/Linux の場合、 デフォルトは /var/cache/locate/locatedb です。

--localuser=user

ネットワーク以外のディレクトリを検索するユーザーを指定します。 その際には su(1) が利用されます。 ネットワーク以外のディレクトリ検索を行うのは、 デフォルトはカレントユーザーです。 環境変数 LOCALUSER を用いて、 ユーザーを設定することもできます。

--netuser=user

ネットワークディレクトリを検索するユーザーを指定します。 その際には su(1) が利用されます。 デフォルトは daemon です。 環境変数 NETUSER を用いてユーザーを設定することもできます。

--dbformat=F

フォーマット F のデータベースを生成します。 デフォルトのフォーマットは LOCATE02 と呼ばれるものです。 この他に slocate フォーマットもサポートされています。 slocate フォーマットが用いられた場合、 生成されるデータベースのセキュリティレベルは 1 です。 システムワイドな slocate データベースを構築しようとする場合、 updatedb の実行は root により行う必要があるかもしれません。

--version

updatedb のバージョンを表示して終了します。

--help

updatedb のオプションに関する概要を表示して終了します。

バグ

updatedb プログラムは、 ファイル名に改行文字が含まれていても正しく動作します。 ただしこれは、 システム上にある sort コマンドの -z オプションが適切に動作する場合に限ります。 locate の返り値であるファイル名に改行文字が含まれていなければおかしい、 と疑われる場合には、 --null オプションの利用を検討してください。

バグ報告

GNU findutils オンラインヘルプ: <https://www.gnu.org/software/findutils/#get-help>
翻訳に関するバグ報告 <https://translationproject.org/team/>

その他の問題について GNU Savannah バグトラッカー経由での報告:

<https://savannah.gnu.org/bugs/?group=findutils>

GNU findutils パッケージのメーリングリスト bug-findutils において議論されている全般的なトピック:

<https://lists.gnu.org/mailman/listinfo/bug-findutils>

著作権

Copyright © 1994-2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

関連項目

find(1), locate(1), xargs(1), locatedb(5)

完全なドキュメント <https://www.gnu.org/software/findutils/updatedb>
またローカルにおいては info updatedb により参照できます。