文件查找: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
下一篇 2017-12-14

相关推荐

  • Mariadb数据库复制系列(四):复制过滤器的实现

       实验四:复制过滤器的实现 复制过滤器的作用是让从节点仅复制主节点的指定的库,或指定数据库的指定表,而不是全部复制。其配置方式有两种,一种是在主节点上配置,通过定义主节点只记录部分库或表产生的二进制日志时间来实现;一种是通过从节点上配置,当复制了主节点的所有的二进制日志数据后,在SQL线程执行时,只执行指定的库或表相关的二进制日志时间;一般采取在从节点上…

    Linux干货 2016-11-24
  • 8月5号 练习+作业

    1,找出ifconfig 命令结果中本机的所有IPv4 地址 [root@localhost ~]# ifconfig |tr -cs '[:digit:].' '\n' |sort -t. -k3 |tail&nbsp…

    Linux干货 2016-08-07
  • Linux文件管理类命令相关

    Linux文件管理类命令相关 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 1)、查看文件命令: (1)ls命令: list,列出目录下的内容 语法: ls [OPTION]… [FILE]… 常用选项: -a: 显示所有文件,包括隐藏文件; -A:显示除.和..之外的所有文件; -l: –…

    Linux干货 2016-09-24
  • MHA+keepalived 高可用MYSQL集群

    一、MHA简介 二、试验环境及要求 三、部署MHA 四、测试MHA集群功能 一、MHA简介     MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案。在MySQL故障切换过程中,MHA能做到在0~30秒之内手动或自动(结合脚本)完成数据库的故障切换操作,并且在…

    2017-02-25
  • Linux程序包管理(二)YUM使用

    YUM Linux程序包管理(二) 说完了程序包管理以及rpm的相关使用,接下来说说rpm的前端管理工具 YUM YUM是什么?    前面提到,yum是rpm程序包管理器的前端管理工具,那么yum到底是什么?又能做什么呢? YUM:yellow dog,Yellowdog Update Mod…

    Linux干货 2016-06-01
  • Linux nginx 服务

                           Linux nginx 服务 Nginx服务简介:      NGINX :是一个自由、开源、高性能、轻量级的HT…

    系统运维 2016-11-18