文件查找: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

相关推荐

  • shell三剑客之grep

    正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”); 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。 正…

    Linux干货 2016-08-08
  • Linux部分命令及使用

    Linux部分命令解释及使用 ASCII 信息交换码  GB2312 big5 UTF-8 字符集 乱码问题 生产环境中最常见故障  字符集格式设置不一致 查看系统版本  cat /etc/redhat-release  $() “&nb…

    2017-04-09
  • N22-妙手 第4天视频课程练习

    一、Globbing文件名通配练习 练习1:显示/var目录下所有以l开头,以一个小写字母结尾,且中间出现任意一位字符的目录 [root@localhost ~]# ls -d /var/l?[[:lower:]] /var/lib  /var/log 练习2:显示/etc目录下,以任意一位数字开头…

    Linux干货 2016-08-22
  • N22-第二周作业

    1、文件管理类命令有:cp,mv,rm    cp:复制命令      用法:cp [OPTION]… SOURCE… DEST        如果DEST不存在,则先创建此文件并复制源…

    Linux干货 2016-08-29
  • 分布式存储介绍、FastDFS 部署

    什么是分布式系统? 简单来说,多台主机提供同一个服务,例如负载均衡集群,就是一个分布式系统。 什么是分布式存储? 看看某宝,上面多少图片,如果使用传统的单机存储,需要准备多大的磁盘空间?读写性能如何提升? 上图就是一个分布式存储的结构,此处存储节点不在是磁盘,而是多个主机组成,多个主机内部通信实现数据副本,客户端发来的请求发往前端,前端分发至后端,有点像负载…

    2017-03-08
  • Linux软件包管理

    一、rpm包管理工具 1、rpm包简介 rpm是redhat的软件包管理器。rpm包管理器全称rpm: Redhat Package Manager RPM  Package Manager。它的软件包后缀也为.rpm。除此外,debian,deb文件有dpkg包管理器。 rpm包的命名方式: 源代码:name-version.tar.{gz|bz…

    Linux干货 2016-08-21