权限管理2 以及文本处理工具的使用

### 权限


修改文件的属主:chown


```
chown [OPTION]... [OWNER][:[GROUP]] FILE...
用法:
OWNER
OWNER:GROUP
:GROUP
命令中的冒号可用.替换
-R: 递归
chown [OPTION]... --reference=RFILE FILE...
```
示例:
```
su root -c 'chown zhang1.zhang1 ff1'
Password: 
[zhangxiao@localhost ~]$
```
- ####  修改文件的属组:chgrp
```
chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...
```
示例
```
chgrp zhangxiao ff1
 [zhangxiao@localhost ~]$ ll ff1
-rw-rw-r--. 1 zhang1 zhangxiao 0 Apr  5 10:07 ff1
[zhangxiao@localhost ~]$
```
-R 递归
一个用户的token是登录的时候获取的,所以一旦我们改了用户的属性后新的token需要重新登录才能生效   
- 目录的基础权限有三个
文件:
```
r: 可使用文件查看类工具获取其内容
w: 可修改其内容
x: 可以把此文件提请内核启动为一个进程
 目录:
r: 可以使用ls查看此目录中文件列表
w: 可在此目录中创建文件,也可删除此目录中的文件
x: 可以使用ls -l查看此目录中文件列表,可以cd进入此目录
X:只给目录x权限,不给文件x权限
```
#### 文件的权限基本针对三类人
```
owner: 属主, u
group: 属组, g
other: 其他, o
```
- #### 修改文件权限:   
chmod
语法:chmod(选项)(参数)  
> 常用选项:-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;  
> --reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
```
chmod u+x,g+w ff1  //为文件f01设置自己可以执行,组员可以写入的权限
chmod u=rwx,g=rw,o=r f01
chmod 764 f01
chmod a+x f01  //对文件f01的u,g,o都设置可执行属性
```
- #### umask
umask的本质含义是取消相对应的权限(二进制对位取消)  
> 通常情况下新建的文件权限是:666-umask(对位相减)  
> 新建的文件夹全是是:777-umask
umask用法
umask (022)


- #### SUID权限用数字4表示
```
当用户执行程序时,临时集成其程序所有者的权限
只对二进制可执行程序有效
SUID设置在目录上无意义
权限设定:
chmod u+s FILE...
chmod u-s FILE...
```
SGID:用数字2表示


```
任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限
启动为进程之后,其进程的属组为原程序文件的属组
权限设定:
chmod g+s FILE...
chmod g-s FILE...
```
备注:如果给目录增加SGID权限则目录中新建的文件集成目录的所属组


- #### 粘滞位:sticky用数字1表示
一般粘滞位给文件夹用,使文件夹中的文件只能文件的所有者删除
用法:chmod o+t diename


- #### chattr
语法:chattr (选项 )+(属性) 文件或目录
选项:
```
-R:递归处理,将指令目录下的所有文件及子目录一并处理;
-V:显示指令执行过程;
+<属性>:开启文件或目录的该项属性;
-<属性>:关闭文件或目录的该项属性;
=<属性>:指定文件或目录的该项属性。
```
属性:
```
a:(文件只可以追加内容)
A:锁定读取时间
b:不更新文件或目录的最后存取时间;
c:将文件或目录压缩后存放;
d:将文件或目录排除在倾倒操作之外;
i:不得任意更动文件或目录;
s:保密性删除文件或目录;
S:即时更新文件或目录;
u:预防意外删除
```
备注:lsattr可以查看锁定的文件


- ### ACL
ACL权限是给文件或目录针对除所有者、所属组和其他人之外的人设置权限  
命令
setfacl  


```
-m增加权限  
-x删除权限  
-b删除文件或目录的所有acl权限
-K:删除默认ACL权限
示例:
[zhangxiao@localhost ~]$ setfacl -m u:zhang1:6 ff2
[zhangxiao@localhost ~]$ getfacl ff2
# file: ff2
# owner: zhangxiao
# group: zhangxiao
user::rw-
user:zhang1:rw-
group::rw-
mask::rw-
other::r--


[zhangxiao@localhost ~]$
```
用getfacl+文件名查看文件的所有权限包括acl权限
##### mask权限
mask给文件权限限高,对除owner和other外的所有人有效
用setfacl -m mask::【0(权限)】| +文件名




- ### 文本处理工具
- WC
语法wc(选项)(参数)
WC+文件名默认显示文件的   行数:单词(空格分割):字节:
```
-c或--bytes或——chars:只显示Bytes数;
-l或——lines:只显示列数;
-w或——words:只显示字数。
```
示例
```
[root@localhost data]# wc fstab
 12  60 541 fstab
```
- #### cut
按照纵列方式切割文本并显示
语法:cut 【选项】+参数  
```
选项:-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
-f 可以输出单一字段或者多个字段,多个连续字段用(-)连接 不连续字段用(,)连接
--out-delimiter=<字段分隔符>:指定输出内容是的字段分割符;
-c:仅显示行中指定范围的字符
```
示例


```
[root@localhost data]# cut fstab -d' ' -f3


#


by
#
filesystems,
man
#








[root@localhost data]#
```
- #### sort
语法:sort【选项】文件名
选项
```
:-f:排序时,将小写字母视为大写字母;
-r:以相反的顺序来排序;
-t<分隔字符>:指定排序时所用的栏位分隔字符;
-k:表示已指定字段排序
-n:按数值大小排序
-u:去除重复
```


```
示例:
[root@localhost data]# sort -t: -k3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
zhangxiao:x:1000:1000:zhangxiao:/home/zhangxiao:/bin/bash
xiaoxiao:x:1001:1001::/home/xiaoxiao:/bin/bash
zhang:x:1002:1002::/home/zhang:/bin/bash
zhang1:x:1003:1003::/home/zhang1:/bin/bash
zhang3:x:1004:1004::/home/zhang2:/bin/bash
tomcat:x:1005:1005::/home/tomcat:/bin/bash
qemu:x:107:107:qemu user:/:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
```
- #### uniq
用法:uniq 【选项】
通常和sort一起用
```
-c显示每行重复的次数
-d仅显示重复的行
-u仅显示未重复的行
```
- #### diff
 
```
diff 命令的输出被保存在一种叫做“补丁”的文件中
 使用 -u 选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件
patch 复制在其它文件中进行的改变(要谨慎使用)
 适用 -b 选项来自动备份改变了的文件
$ diff -u foo.conf foo2.conf > foo.patch
$ patch -b foo.conf foo.patch
```
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值