通过建站学运维(课时5)

1.文件增加隐藏权限(chattr)和查看隐藏权限(lsattr)

1.1 chattr 选项 +i 权限
1.2 chattr 选项 +a 权限
1.3 chattr 选项“i”与“a”区别
1.4 lsattr 选项 -a -d -R
2.特殊权限
2.1 set_uid 权限,作用于二进制文件,可执行文件
2.2 set_gid 权限
2.3 stick_bit 防删位
3.软链接和硬链接
3.1软链接文件
3.2 硬链接文件
3.3 软链接和硬链接区别
4. 搜索文件命令
4.1 其他搜索命令:
4.2 find命令
4.3 查看文件或者文件系统的状态 stat
5. 文件名后缀
6. linux和windows文件互传(rz和sz)
7.linux常用终端快捷键

chattr

命令介绍:
只有超级权限的用户才具有使用该命令的权限,这项指令可改变存放在ext2、ext3、ext4、xfs、ubifs、reiserfs、jfs等文件系统上的文件或目录属性。

命令功能:
改变文件属性。
属性介绍:
A:即Atime,告诉系统不要修改对这个文件的最后访问时间。
S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。
a:即Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:当dump程序执行时,该文件或目录不会被dump备份。
D:检查压缩文件中的错误。
i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
s:彻底删除文件,不可恢复,因为是从磁盘上删除,然后用0填充文件所在区域。
u:当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件,用来防止意外删除文件或目录。
t:文件系统支持尾部合并(tail-merging)。
X:可以直接访问压缩文件的内容。

	语法:
	chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...]   

	命令参数:
	-R 递归处理,将指定目录下的所有文件及子目录一并处理。
	-v<版本编号> 设置文件或目录版本。
	-V 显示指令执行过程。
	+<属性> 开启文件或目录的该项属性。
	-<属性> 关闭文件或目录的该项属性。
	=<属性> 指定文件或目录的该项属性。

实例:

## 首先创建一个文件,查看此文件属性 ##
[root@linux-01 ~]# touch 1.txt
[root@linux-01 ~]# ll  1.txt 
-rw-rw-r--. 1 root root 65 3月  18 17:52 1.txt
[root@linux-01 ~]# lsattr 1.txt 
---------------- 1.txt
[root@linux-01 ~]# head -n2 /etc/passwd  > 1.txt 
[root@linux-01 ~]# cat 1.txt  
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

## 给文件增加i属性,看哪些操作是不可以进行的 ##
[root@linux-01 ~]# 
[root@linux-01 ~]# chattr  +i  1.txt 
[root@linux-01 ~]# lsattr 1.txt 
----i----------- 1.txt
## 查看是否可以编辑文件 ##
[root@linux-01 ~]# vi 1.txt   
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
~                                                                                                                                
"1.txt" [readonly] 2L, 65C    ## 提示此文件是只读文件,无法进行编辑 ##   

使用i插入提示 -- INSERT -- W10: Warning: Changing a readonly file  

[root@linux-01 ~]# ll
总用量 12
-rw-rw-r--. 1 root root   65 3月  18 17:52 1.txt
-rw-rw-r--. 1 root root   65 3月  18 18:05 1.txt~   ## 强制保存会生成一个缓冲文件 ##
-rw-------. 1 root root 1420 3月  14 01:02 anaconda-ks.cfg.1

[root@linux-01 ~]# touch 1.txt
touch: 无法创建"1.txt": 权限不够
[root@linux-01 ~]# mv  1.txt  2.txt
mv: 无法将"1.txt" 移动至"2.txt": 不允许的操作
[root@linux-01 ~]# rm 1.txt
rm:是否删除普通文件 "1.txt"?y
rm: 无法删除"1.txt": 不允许的操作
[root@linux-01 ~]# head -n2 /etc/passwd >> 1.txt
-bash: 1.txt: 权限不够
[root@linux-01 ~]# mv 1.txt /tmp/
mv: 无法将"1.txt" 移动至"/tmp/1.txt": 不允许的操作

#小结;给文件加上i权限,无法编辑,无法删除,无法追加,无法移动,相当于锁死文件。
## 把之前的i权限删除,加上a权限  ##
[root@linux-01 ~]# chattr  -i 1.txt
[root@linux-01 ~]# chattr  +a  1.txt
[root@linux-01 ~]# lsattr 1.txt
-----a---------- 1.txt

[root@linux-01 ~]# touch 1.txt
[root@linux-01 ~]# head -n2 /etc/passwd >> 1.txt
[root@linux-01 ~]# cat 1.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@linux-01 ~]# rm 1.txt
rm:是否删除普通文件 "1.txt"?y
rm: 无法删除"1.txt": 不允许的操作
[root@linux-01 ~]# mv 1.txt /tmp/
mv: 无法将"1.txt" 移动至"/tmp/1.txt": 不允许的操作

lsattr:

命令介绍:
显示文件隐藏属性。
语 法:
lsattr [-adlRvV][文件或目录…]
命令说明:
用chattr执行改变文件或目录的属性,可执行lsattr指令查询其属性。
lsattr 命令显示文件系统属性与ls 显示的UNIX 文件系统属性是两个不同的概念。lsattr实现的属性是文件系统的物理属性,而ls显示的文件属性是操作系统进行管理文件系统的逻辑属性。
命令参数:
-a  显示所有文件和目录,包括以".“为名称开头字符的额外内建,现行目录”.“与上层目录”…"。
-d  若目标文件为目录,则显示该目录的属性信息,而不显示其内容的属性信息。
-l  不得任意更动文件或目录。
-R  递归处理,将指定目录下的所有文件及子目录一并处理。
-v  显示文件或目录版本。
-V  显示版本信息。
实例:


## -a 选项 ##
[root@linux-01 ~]# lsattr  -a  /root/
---------------- /root/.
---------------- /root/..
---------------- /root/.bash_logout
---------------- /root/.bash_profile
---------------- /root/.bashrc
---------------- /root/.cshrc
---------------- /root/.tcshrc
---------------- /root/.bash_history
---------------- /root/.ssh
---------------- /root/anaconda-ks.cfg.1
---------------- /root/.lesshst
-----a---------- /root/1.txt
---------------- /root/1.txt~
---------------- /root/1.txz~

## -d 选项 ##
[root@linux-01 ~]# lsattr  -d  /root/
---------------- /root/

## -R 选项 ##
[root@linux-01 ~]# lsattr  -R  /root/
---------------- /root/anaconda-ks.cfg.1
-----a---------- /root/1.txt
---------------- /root/1.txt~
---------------- /root/1.txz~


set_uid:

set_uid 权限,作用于二进制文件,可执行文件

## 查看passwd的权限,s代表set_uid的权限,意思是:普通用户在执行命令的时候临时拥有所有者也就是root的权限 ##
[root@linux-01 ~]#  which passwd
/usr/bin/passwd
[root@linux-01 ~]# ll /usr/bin/passwd 
-rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd

## 我们可以查看到,给ls加上s的权限,普通用户就可以查看root用户的家目录 ##
[root@linux-01 ~]# chmod u+s  /usr/bin/ls    
[root@linux-01 ~]# ll /usr/bin/ls
-rwsr-xr-x. 1 root root 117680 10月 31 03:16 /usr/bin/ls

[root@linux-01 ~]# chmod u=rws  /usr/bin/ls
[root@linux-01 ~]# ll /usr/bin/ls
-rwSr-xr-x. 1 root root 117680 10月 31 03:16 /usr/bin/ls

 ## 上面两条都是给所有者加权限,为什么有一个小s ,一个大S呢 ##

这是由于第一条是在u=rwx的权限基础上在加一个set_uid的权限,是小s

第二条是直接把所有者的权限给改成rwS,并没有x的权限,所以是大S。

set_gid

set_gid 作用于文件时,和set_uid的作用类似;
set_gid 作用于目录时,所有在此目录下创建的文件和文件夹都与父目录的所属组相同。

[root@linux-01 ~]# mkdir /root/xihaji
[root@linux-01 ~]# ll -d /root/xihaji/
drwxrwxr--. 2 root root 6 3月  18 21:48 /root/xihaji/

[root@linux-01 ~]# chmod g+s /root/xihaji/
[root@linux-01 ~]# mkdir xihaji/123
[root@linux-01 ~]# ll -d xihaji/123/
drwxrwsr--. 2 root root 6 3月  18 21:48 xihaji/123/

[root@linux-01 ~]# chown :xihaji xihaji/
[root@linux-01 ~]# ll -d xihaji/123/
drwxrwsr--. 2 root root 6 3月  18 21:48 xihaji/123/

[root@linux-01 ~]# mkdir xihaji/234
[root@linux-01 ~]# ll  xihaji/
总用量 0
drwxrwsr--. 2 root root   6 3月  18 21:48 123
drwxrwsr--. 2 root xihaji 6 3月  18 21:50 234


stick_bit 防删位

## 其他用户权限t就是指防删除位置 ##
[root@linux-01 ~]# ll -d /tmp/
drwxrwxrwt. 13 root root 281 3月  18 03:08 /tmp/ 

## 防删除是指用户1在tmp下没有删除用户2创建的文件的权限 ##
[user1@linux-01 tmp]$ rm xihaji/
rm: 无法删除"xihaji/": 是一个目录

软链接和硬链接

软链接文件
软连接是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件。
注:在制作软连接得时候尽量使用绝对路劲,尽量使用绝对路径。使用绝对路劲时,移动软连接到其他位置不会报错。

硬链接文件

[root@linux-01 ~]# touch 1.txt
[root@linux-01 ~]# mkdir 111
[root@linux-01 ~]# ll
总用量 4
drwxrwxr--. 2 root root    6 3月  19 00:09 111
-rw-rw-r--. 1 root root    0 3月  19 00:09 1.txt
-rw-------. 1 root root 1420 3月  14 01:02 anaconda-ks.cfg.1
[root@linux-01 ~]# ln -s  /root/1.txt   /home/xihaji/1.txt
[root@linux-01 ~]# ll !$
ll /home/xihaji/1.txt
lrwxrwxrwx. 1 root root 11 3月  19 00:10 /home/xihaji/1.txt -> /root/1.txt
[root@linux-01 ~]# ll 1.txt 
-rw-rw-r--. 1 root root 0 3月  19 00:09 1.txt


[root@linux-01 ~]# ln /root/1.txt  /home/xihaji/2.txt
[root@linux-01 ~]# ll !$
ll /home/xihaji/2.txt
-rw-rw-r--. 2 root root 0 3月  19 00:09 /home/xihaji/2.txt
[root@linux-01 ~]# ln /root/111   /home//xihaji/222
ln: "/root/111": 不允许将硬链接指向目录
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值