隐藏权限 find

  • 一、隐藏权限lsattr/chattr
  • 二、特殊权限set_uid
  • 三、特殊权限set_gid
  • 四、特殊权限stick_bit
  • 五、软链接文件
  • 六、硬连接文件
  • 七、find命令
  • 八、文件名后缀
  • 九、linux和windows互传文件

一、lsattr_chattr

1、设置隐藏权限的命令chattr

a、添加隐藏权限i

1. 不能编辑,
2. 不能追加,
3. 不能改名,
4. 不能删除,
5. 不能保存,
6. 不能touch(touch会更改文件的创建时间)

b、 删掉隐藏i权限

c、隐藏权限a的增加chattr +a 1.txt及删除a权限chattr -a 1.txt

1. 可以追加,
2. 可以touch,
3. 不能删除,
4. 不能更改,
5. 不能重命名
chattr +i 111(目录)
1. 能在目录下写已经存在的文件
2. 不能删除
3. 不能改名
4. 不能在目录下创建文件目录
1. chattr +a 111(目录)
2. 可以追加 
3. 不能更改
4. 可以在目录下touch
5. 可以更改文件下内容

d、查看隐藏权限的命令lsattr

lsattr是查看的子目录的隐藏权限

如果查询目录本身为`lasttr -d 111(文件夹)`
查看111下面的子目录及子目录下面的文件的隐藏权限`lsattr -R 111`
表示全部包括隐藏文件`lsattr -a 111`

二、特殊权限set_uid(所有者权限位上u

set_uid是保证普通用户临时拥有所有的者身份(临时拥有)必须是二进组,可执行文件比如 /usr/bin/passwd

chmod u+s /usr/bin/ls 注:u为所有者权限 大S是因为缺少X权限

目录能加S权限但是无意义

三、特殊权限set_gid(所属组权限位上g

set_gid是保证普通用户临时拥有所属组的身份(临时拥有)必须是二进组,可执行文件比如 /usr/bin/ls

chmod g+s /usr/bin/ls

可以作用在目录上

当给目录设置了set_gid后再目录下创建文件及目录会跟着父级目录的所属组保持一致

四、特殊权限stick_bit (防删除其他用户)

防止别人删除自己的人间(root)除外

/tmp/目录下可以改别人的文件不能删除

/tmp/目录是带stick_bit权限的,删除文件目录是看父级目录的权限

五、软链接文件(ln -s)

软连接用法,ln -s 源文件写在前 需要连接的文件写到后面

目录也可以软链接

注意:如果更改文件名或者原文件不在了就会出错,

做软链接的时候尽量使用绝对路径

例子:

通过软链接的方式让持续写的日志更换地方存储

六、硬连接文件(ln)

注意
硬链接不支持对目录做硬链接
硬链接不支持跨分区做硬链接

硬链接用法ln 源文件 目标文件

七、find命令

which +命令 #搜索环境变量文件夹命令的位置 whereis +命令 #也是搜索命令在那里,在事先准备的文件库 到库里面去找 locate 不常用 locate安装:yum install -y mlocate locate用法:locate +文件名/命令 先要去遍历文件 生成数据库 生成数据库命令:updatedb

快捷键:

  • Ctrl+l 清屏
  • Ctrl+d 退出终端
  • Ctrl+c 终端任务
  • Ctrl+u 删除光标前面的内容
  • Ctrl+e 光标移到末尾
  • Ctrl+a 光标移动到开头
  • find命令

  • find /etc/ -name "文件名"

  • find /etc/ -type d -name "文件名" 指定路径,-type d 指定搜目录 -name "名字"指定目录名字

  • find /etc/ -type f -name "文件名"

指定路径,-type f 指定搜文件 -name "名字"指定文件名字

  • d:目录 f: 文件 l:软连接 s :sock文件 c:字符串文件 b:块社保
stat 查看文件的信息用法如下

文件的名字、大小、io块、文件类型、inode号、硬链接数量、 最近访问:Access atime 最近更改:Modify mtime 最近改动:Change ctime 更改文件内容会变:最近更改:Modify mtime/最近改动:Change ctime 更改文件权限会变:最近改动:Change ctime 访问文件内容会变:最近访问:Access atime

  • find / -tyep -name -mtime -ctime -atime

  • find / -type f -mtime(最近改动) -1(1天以内) +1(大于1天)

  • find /etc/ -type f -mtime -1 -name "*.conf"

为并且的关系 在目录下并且是文件并且最近改动在1天以内并且是*.conf

  • 用-o表示或者

  • find /etc/ -type f -o -mtime -1 -o -name "*.conf"

用find找硬链接

用ls -i 文件名查到inode号

  • find / -inum 1312999

  • find /root/ -type f -mtime -1(1天以内) +1(1天以前) -mmin -60(最近1个小时)

需求:在find的同时列出是不是最近1个小时内的访问

  • find /root/ -type f -mmin -60 -exec ls -l {} ;

注意:{}表示文件列表,出来很多项每个文件执行ls -l

实验:

find /root/ -type f -mtime -1 -exec mv {} {}.bak \; 对文件重命名
find /root/ -type f -mtime -1   查出文件

场景:需求找出一部分文件→列出来 挪到另外文件夹下去

实验:找出文件小于10k的文件

  • find /root/ -type f -size -10k

核实一下是不是小于10k

确实是小于10k 、686为686字节

find -type  -name -mtime -atime -ctime -size -o -exec

八、文件名后缀

Linux中对文件名后缀并没有严格的要求,可以随意

但是一般默认形成规范如txt为文本,log为日志,.conf为配置文件

九、linux和windows互传文件

前提是使用Xshell

安装:``yum instart lrzsz`
sa 文件名
rz   windows上的文件传到Linux上,是传到当前目录

总结

一、inode是什么?
理解inode,要从文件储存说起。
文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,
即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,
最常见的是4KB,即连续八个 sector组成一个 block。
文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,
比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,
中文译名为"索引节点"。
  • inode包含的信息
每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。
二、inode的内容
inode包含文件的元信息,具体来说有以下内容:
* 文件的字节数
* 文件拥有者的User ID
* 文件的Group ID
* 文件的读、写、执行权限
* 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,
   atime指文件上一次打开的时间。
* 链接数,即有多少文件名指向这个inode
* 文件数据block的位置

inode里没有保存文件名,但是改变文件名会改动ctime

是为了防止一些依赖ctime的增量备份出问题,系统发生的强制改变。

  • 文件名是保存在目录文件中
目录文件
Unix/Linux系统中,目录(directory)也是一种文件。打开目录,实际上就是打开目录文件。
目录文件的结构非常简单,就是一系列目录项(dirent)的列表。每个目录项,由两部分组成:
所包含文件的文件名,以及该文件名对应的inode号码。

常用及重要的知识点

  1. find
  2. 隐藏权限
  3. 软链接
  4. 互传文件

转载于:https://my.oschina.net/zenghong133/blog/3024231

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值