参考《鸟哥的Linux私房菜》
updatedb命令用于检索Linux的文件系统并生成更新数据库文件,该数据库记录了系统上每个文件的位置,它会结合crontab每日更新相关文件是:/etc/cron.daily/mlocate
locate根据用户所输入的关键词(pattern)读取updatedb所维护的数据库,并将结果输出在终端
可以手动升级文件记录数据库:

find则是文件实时查找。
find的选项-perm mode、-perm -mode、-perm /mode、-perm +mode
find / -perm mode -print; #要求文件权限与mode完全一致,mode指定的部分必须要有,mode没指定的部分必须不有。

find / -perm -mode -print; #要求文件具有mode指定要有的那部分权限(所有),mode没指定的那部分不管:

find / -perm /mode -print; #要求文件具有mode指定要有的那部分权限(中任一个),mode没指定的那部分不管:

-perm +mode在Ubuntu18.04已经不再支持,从2005年就不提倡使用了,deprecate [ˈdeprəkeɪt] vt.反对,抨击,声明不赞成。建议使用-perm /mode代替。

例题:尝试用find找出目前linux系统中,所有具有SUID权限的文件有哪些?
find / -perm -4000 -print #文件必须具有4000指定要有的权限,即SUID
或
find / -perm /4000 -print #文件具有4000中的任何一个即可,那就是SUID本身了


本文介绍Linux系统中使用updatedb和locate命令进行文件检索,find命令及其-perm选项进行实时文件查找和权限搜索的方法。详细解释了-perm的各种用法,包括-permmode、-perm-mode和-deprecated的-perm+mode,以及如何查找具有特定权限如SUID的文件。
1822

被折叠的 条评论
为什么被折叠?



