locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db‘: 没有那个文件或目录
Posted 程序员cxuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db‘: 没有那个文件或目录相关的知识,希望对你有一定的参考价值。
最近在系统学习 Linux 的时候使用到了 locate 这个命令,这个命令用于搜寻文件,其实这个文件的效果相当于是 find -name
,但是 locate 要比 find 命令快得多,因为 locate 是从数据库中查询的,这个数据库含有所有本地文件的信息。
但是我在执行 locate 的时候却发现系统找不到该指令
[root@cxuan ~]# locate
-bash: locate: 未找到命令
我的系统 :CentOS 7.5
安装 locate
我们可以使用 yum -y install mlocate
来安装 locate。
已加载插件:fastestmirror, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Determining fastest mirrors
base | 3.6 kB 00:00:00
docker-ce-stable | 3.5 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
mysql-connectors-community | 2.6 kB 00:00:00
mysql-tools-community | 2.6 kB 00:00:00
mysql57-community | 2.6 kB 00:00:00
nodesource | 2.5 kB 00:00:00
updates | 2.9 kB 00:00:00
yarn | 2.9 kB 00:00:00
(1/4): epel/x86_64/updateinfo | 1.0 MB 00:00:00
(2/4): epel/x86_64/primary_db | 7.0 MB 00:00:00
(3/4): docker-ce-stable/7/x86_64/primary_db | 95 kB 00:00:00
(4/4): nodesource/x86_64/primary_db | 34 kB 00:00:01
正在解决依赖关系
--> 正在检查事务
---> 软件包 mlocate.x86_64.0.0.26-8.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
========================================================================================================================
Package 架构 版本 源 大小
========================================================================================================================
正在安装:
mlocate x86_64 0.26-8.el7 base 113 k
事务概要
========================================================================================================================
安装 1 软件包
总下载量:113 k
安装大小:379 k
Downloading packages:
mlocate-0.26-8.el7.x86_64.rpm | 113 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : mlocate-0.26-8.el7.x86_64 1/1
验证中 : mlocate-0.26-8.el7.x86_64 1/1
已安装:
mlocate.x86_64 0:0.26-8.el7
完毕!
安装完成后继续使用 locate 命令,发现弹出了提示
locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db': 没有那个文件或目录
问题分析
这是由于 Linux 会自动创建这个 mlocate.db 这个数据库,并且 Linux 会自动更新这个数据库,但是我们刚安装完 locate ,Linux 还并未自动更新,所以我们需要手动更新一下,使用命令 updatedb
即可更新。
更新完成后,我们就能使用 locate 命令了。
[root@cxuan ~]# locate -l 5 passwd
/etc/passwd
/etc/passwd-
/etc/pam.d/passwd
/etc/security/opasswd
/usr/bin/gpasswd
关于作者
你好,我是 cxuan,一枚程序员,目前在老家石家庄工作,我坚信着技术改变命运,并且我也是一个践行者,我创办了自己的网站
里面有很多干货文章你可以看看,希望对你有帮助。
以上是关于locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db‘: 没有那个文件或目录的主要内容,如果未能解决你的问题,请参考以下文章
locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db‘: 没有那个文件或目录
Linuxlocate: can not stat () `/var/lib/mlocate/mlocate.db‘: No such file or directory
Net :: SFTP :: Session无法运行stat,显然有一个Nil通道
任务 ':app:checkDebugAarMetadata' 执行失败。无法解析 com.google.android.gms:play-services-location:16.+
ubuntu cp: 无法获取”/boot/initrd.img-3.13.0-100-generic” 的文件状态(stat): 没有那个文件或目录
ubuntu cp: 无法获取”/boot/initrd.img-3.13.0-100-generic” 的文件状态(stat): 没有那个文件或目录