文件查找:find命令、locate命令;Linux文件系统上的权限

文件查找:find、locate

locate:依赖事先构建的索引,是在系统空闲周期性自动进行;手动更新(updatedb);极其消耗资源;

 

find [option]… [查找路径] [查找条件] [处理动作]

查找条件:

根据文件名查找:

-name “文件名称”:支持使用通配符glob(*,?,[],[^])

-iname “文件名称” :不区分字母大小写

-regex “pattern”:支持正则表达式,以pattern匹配整个文件路径字符串,而不仅仅是文件名称;

根据属主、属组查找:

-user username:查找属主为指定用户的文件;

-group groupname:查找属组为指定组的文件;

-uid userid:UID;

-gid groupid:GID;

-nouser:查找没有属主的文件;

-nogroup:查找没有属组的文件;

根据文件类型查找:

-type TYPE:

f:普通文件

d:目录文件

l:符号链接文件

s:套接字文件

b:块设备文件

c:字符设备文件

p:管道文件

 

组合条件:

与:-a

或:-o

非:-not,!

!A -a !B = !(A -o -B)

!A -o !B = !(A -a -B)

根据文件大小查找:

-size [+-]#UNIT:常用单位k,M,G;

例如:3k:代表范围大于2k,小于等于3k;

-3k:代表范围小于等于2k;

+3k:代表范围大于3k;

 

根据时间戳查找;

以”天”为单位:

-atime [+-]#

-mtime

-ctime

例如-atime 3:代表大于等于3天,小于4天内;

-atime +3:大于4天内;

-atime -3:小于3天内;

 

以”分钟”为单位:

-amin

-mmin

-cmin

 

根据权限查找:

-perm [/-]MODE

MODE:精确权限匹配;

/MODE:任何一类(u,g,o)对象的权限有为其指定的权限标准中的匹配任一个即可;

注意:centos7上废弃了+MODE模式;

The interpretation of `-perm +omode’ changed in findut
ils-4.5.11. The syntax `-perm +omode’ was removed in findutils-4.5.12, in favour of `-perm /omode’.

-MODE:每一类对象都必须同时拥有为其指定的权限标准;

 

处理动作:

-print:默认的处理动作,显示至屏幕;

-ls:类似于对查找到的文件执行“ls -l”命令;

-delete:删除;

-ok command {} \;:对查找到的每个文件执行由command指定的命令;交互式;{}:用于引用查找到的文件名称本身;

-exec command {} \;:对查找到的每个文件执行由command指定的命令;非交互式

注意:find传递查找到的文件给后面的command时,是一次性传递给后面的命令;某些命令不能接受过多参数,此时命令会执行失败;另一种方式可规避:find | xargs command

例如:find /tmp -user test -exec mv {} {}.new \;

 

Linux文件系统上的权限:

1、基本权限:r,w,x;

2、安全上下文

前提:进程有属主属组;文件有属主属组;

(1)任何一个可执行程序文件能否启动为进程,取决于发起者对程序文件是否拥有执行权限;

(2)启动为进程后,其进程的属主为发起者,进程的属组为发起者所属的组;

(3)进程访问文件时的权限,取决于进程的发起者:

(a)进程的发起者,同文件的属主,则应用文件属主权限;

(b)进程的发起者,属于文件的属组,则应用文件属组权限;

(c)应用文件“其它”权限;

 

3、特殊权限

SUID:

(1)任何一个可执行程序文件能否启动为进程,取决于发起者对程序文件是否拥有执行权限;

(2)启动为进程后,其进程的属主为原程序文件的属主;

设定:chmod u+s file

取消:chmod u-s file

SGID:

当某目录设定了SGID,即在该目录新建文件的属组默认为原目录的属组;

设定:chmod g+s dir

取消:chmod g-s dir

Sticky:

当某目录设定了Sticky,即该目录下用户只能删除属主为自己的文件。

设定:chmod o+t dir

取消:chmod o-t dir

 

4、修改文件系统属性(对root用户也生效)

设定:chattr

查看:lsattr

 

5、ACL权限:访问控制列表;(ACL的功能是应对复杂用户环境的权限问题)

设定:setfacl -m u:user:rwx file|directory

查看:getfacl

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90037

赞 (0)
N26-深圳-城市蜗牛N26-深圳-城市蜗牛
上一篇 2017-12-14 00:45
下一篇 2017-12-14 17:31

相关推荐

  • 文件查找与解压缩

    文件查找 脚本文件名的查询 which(寻找执行文件) which [-a] command -a :将所有由PATH目录中可以找到的命令均列出,而不只是第一个被找到的命令名称 文件名的查找 文件查找:实时查找:遍历所有文件进行条件匹配;(find)非实时查找:根据索引查找;(whereis、locate) whereis whereis [-bmsu] […

    Linux干货 2017-04-08
  • Linux的基础文件管理命令

    Linux用于管理文件的一些基本常见的命令如下: ls:  列出指定目录下的清单    -a  显示所有文件包括隐藏文件    -l  显示文件的详细信息    -d  查看目录自身   示例: cat:  可查看指定路径下的文件文本 fi…

    Linux干货 2016-11-06
  • Shell脚本编程之入门基础(一)

    Shell脚本编程   一、本章节一内容:    编程基础    脚本基本格式    变量    运算    条件测试   在本章节开始之前,我们先回顾下前面的知识点内容。前面学习了Linux的基础入门,了解到计算机是运行二进制指令的,而我…

    Linux干货 2016-08-12
  • 08RPM的简单实用

    rpm命令,安装(-i,–install)、卸载、升级(-U,-F)、查询(-q,–query)、校验(-V,–verify)、数据库维护 安装:rpm {-i|–install} [install-options] PACKAGE_FILE… v:可视化 h:以#显示进度 rpm -ivh package_f…

    Linux干货 2016-11-03
  • Linux常见小知识点

    什么是Linux? Linux是一款支持多任务,多线程,多用户的类Unix系统 Linux常见的发行版本 Redhat  Linux   Linux发行版中比较重要的一个版本,多用于企业,由Redhat公司提供收费技术支持和更新,其衍生版本有centos为免费版本 Debain linux      系统分为…

    Linux干货 2017-03-26
  • 马哥教育网络班21期+第2周课程练习

    一、Linux文件管理类命令汇总 1、文件的复制命令:cp 复制命令:cp     cp [OPTION]… [-T] SOURCE DEST     cp [OPTION]… SOURCE… DI…

    Linux干货 2016-07-29