web-dev-qa-db-ja.com

外付けHDDのインデックスを保持するようにロケートに指示するにはどうすればよいですか?

設定を変更したので、locateは_/media_にマウントされている外部ハードディスクも検索します。

私の_/etc/updatedb.conf_:

_Prune_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /home/.ecryptfs /media/Win8"
PRUNEFS=...(rest is default)
_

私がいつも使っているメインのHDDは

_/media/rubo77/Data
_

接続されている場合、updatedbを実行するとインデックスが作成されますが、取り外したHDDを使用してコンピューターを作成するたびに、毎日の_/etc/cron.daily/mlocate_が消去されます。

切り離されたデバイスでもファイルを検索できるようにしたいと思います。したくない場合は、常に既存のファイルのみを表示する_locate -e_を使用できます。

ドライブがマウントされていない場合にメディアのファイルのインデックスを保持するようにロケートに指示して、切り離されたデバイス上のファイルを見つけるにはどうすればよいですか?

2
rubo77

ここには複数のオプションがあるようです:

  1. 明らかにあなたが望むことを正確に行うための最良の方法は、データベースを更新する前にドライブがマウントされるまでcronに待つであることです。 cronやbashに精通している人がいると思います。

  2. 間違いなくあなたができることは、それが正確にあなたが望むものではありませんが、リムーバブルドライブのためだけに新しいデータベースを作成するです。 この密接に関連した質問 を参照して、その方法の詳細な手順を確認してください。その後、ドライブがマウントされたときにデータベースを手動で更新するだけで済みます。

  3. ドライブの内容が頻繁に変更されない場合、多くの選択肢があります。私にとっては、多くの異なる外部ドライブがあるので、それぞれに対してls -RD1テキストファイルに変更すると、必要なときにいつでもgrepなどのツールを使用できます。

1
Brian Z