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

相关推荐

  • 文本处理工具及grep

    在日常的linux运维工作当中,我们经常要在一些文本当中抽取过滤出我们所需要的信息,从而达到我们的需求,需要特定的文本处理工具来帮我们完成此类操作 本章节主要讲解的内容有: 文件查看:cat 分页查看文本:less、more 抽取文件特定行数:head、tail 抽取文本特定列:cut 合并文本:paste 文本统计:wc 文本排序并统计:sort、uniq…

    Linux干货 2016-08-08
  • lvm逻辑卷管理

    #LVM 逻辑卷管理 一、创建pv        创建pv可以在物理硬盘(裸盘上创建),MBR类型的分区(要更改分区类型为linux lvm: 8e )。GPT分区也要更改分区类型为8e00 Linux LVM 。    还可以在RAID上创建。注意要在没有数据的分区上…

    Linux干货 2016-09-02
  • N22- 第五周

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@localhost Packages]# grep -E "^(root|fedora|user1\>)" /etc/passwd | cut -d: -f…

    Linux干货 2016-11-21
  • issue设置和定时关机练习

    /etc/issue内的代码意义 \l 显示第几个终端机接口(tty)\m 显示硬件的等级 (x86_64)\n 显示主机的网络名称 (zcl-domain)\r 操作系统的版本 (2.6.32-642.e16)\t 显示本地端时间的时间(20:22:12) \d显示本地端的日期 (2016-8-5)\s 操作系统的名称(linux)  练习 1,…

    Linux干货 2016-08-05
  • bash的一些特性

    bash的字符串处理工具 字符串切片: ${var:offset:number} 取字符串的子串; 取字符串的最右侧的几个字符:${var: -length} 注意:冒号后必须有一个空白字符; 基于模式取子串; ${var#*word}: 其中word是指定的分隔符;功能:自左而右,查找var变量中所存储的字符串中,第一次出现word分隔符,删除字符串开头至…

    Linux干货 2016-08-24
  • 马哥教育网络班21期+第二周课程练习

    Linux上的文件管理类命令都有哪些?其常用的方法及其相关示例。     cp:将源文件或者目录复制到目标文件或者目录中。     mv:将文件或目录重新命名,或者将源文件从源目录移到目标目录中。     rm:删除指定的一个文件或者多个文件或者目录。       &n…

    Linux干货 2016-07-16