suse10中, 新安装了findutils-locate-4.2.27-14.15.i586.rpm, locate命令在这个包中,但是安装完以后执行 # locate httpd.conf locate: /var/lib/locatedb: No such file or directory #报错 解决方法是用root权限执行 # updatedb 原因是: locate命令查找时依赖于/var/lib/locatedb数据库文件, 使用时需产生并及时更新locatedb数据库。 locate指令和 find找寻文件的功能类似,但 locate是通过updatedb程序将硬盘中的所有文件和目录资料先建立一个索引数据库,在执行loacte时直接找该索引,查询速度会较快,索引数据库一般是由操作系统管理,但也可以直接下达updatedb强迫系统立即修改索引数据库。 locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab) |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-30 07:23 , Processed in 0.135687 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.