Arch Linuxでlocateコマンドを使う方法

Linuxではlocateというfindより楽そうなファイルを高速に検索するコマンドがある。Arch Linuxでもそれを使いたかったので使ってみたけどなぜか

-bash: locate: command not found

となってしまって使えなかった。


Googleで検索してみるとmlocateというパッケージをインストールしないといけないと。


pacmanで検索するとこんな感じ。
(#から始まるコマンドは管理者権限がいる)

> # pacman -Ss locate
core/findutils 4.4.2-4 (base) [installed]
    GNU utilities to locate files
core/mlocate 0.25.2
    Faster merging drop-in for slocate
extra/perl-file-sharedir 1.03-2
    Locate per-dist and per-module shared files

ということでmlocateをインストール。

# pacman -S mlocate


さて使えるぞ!と思ってlocateコマンドを使ったら、またエラーが出てる。

locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory

locateはデータベースを使うらしくそれのアップデートをしないといけないらしい。

# updatedb

これで使えるようになった。