centOS命令之locate

locate命令

locate 文件名

在後臺數據庫中按文件名搜索,搜索速度更快

/var/lib/mlocate

locate命令所搜索的後臺數據庫

updatedb更新數據庫

locate搜索速度比較快;

我們用locate命令的時候 發現 未找到命令,我們用Yum命令遠程安裝下locate
[root@localhost ~]# yum -y install mlocate

安裝完成後
[root@localhost ~]# locate we
locate: 無法執行 stat () `/var/lib/mlocate/mlocate.db’: 沒有那個文件或目錄

updatedb更新數據庫
[root@localhost ~]# updatedb
[root@localhost ~]# locate we
/etc/cron.weekly
/etc/pm/power.d
/etc/selinux/targeted/active/modules/100/callweaver
/etc/selinux/targeted/active/modules/100/webadm
/etc/selinux/targeted/active/modules/100/webalizer
/etc/selinux/targeted/active/modules/100/callweaver/cil
/etc/selinux/targeted/active/modules/100/callweaver/hll

對於新建的文件
我們發現 搜索不了。
原因是 locate命令搜索的是 /var/lib/mlocate 下的mlocate.db數據庫
這個數據庫不是實時更新的,所以我們需要更新下數據庫;
updatedb一下 在搜索就能搜素到了。

locate優點是 搜索速度快 ,缺點是隻能按文件名搜索;

更新數據庫配置文件/etc/updatedb.conf配置文件

我們用vi打開下

[root@localhost ~]# vi /etc/updatedb.conf

PRUNE_BIND_MOUNTS = “yes”

PRUNEFS = “9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fuse.sshfs fusectl gfs gfs2 gpfs hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs”

PRUNENAMES = “.git .hg .svn”

PRUNEPATHS = “/afs /media /mnt /net /sfs /tmp /udev /var/cache/ccache /var/lib/yum/yumdb /var/spool/cups /var/spool/squid /var/tmp”

~

~

~

~

~

~

~

~

~

~

~

~

~

~

~

“/etc/updatedb.conf” 4L, 513C

這裏PRUNE_BIND_MOUNTS=”yes”開啓搜索限制

PRUNEFS = 搜索時,不搜索的文件系統

PRUNENAMES = 搜索時,不搜索的文件類型

PRUNEPATHS = 搜索時,不搜索的路徑

比如這裏的tmp路徑的文件 默認配置是搜索不到的;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章