updatedb -
ファイル名データベースの更新
updatedb [options]
このマニュアルページは
GNU 版
updatedb
の使用法を説明しています。
updatedb は、 GNU 版
locate
で用いるファイル名データベースを更新するために用いられます。
ファイル名データベースには、
これが更新された最終時点において、
特定のディレクトリ以下に存在していたファイルの一覧が含まれます。
デフォルトのデータベースのファイル名は
locate と
updatedb が設定、
インストールされたときに決定されます。
データベースの更新頻度と、
どのディレクトリの内容をデータベースにエントリとして追加するかは、
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
バグトラッカー経由での報告:
GNU findutils
パッケージのメーリングリスト
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
により参照できます。