linux查看目录的所属组,Linux学习笔记(八)文件和目录权限chmod、更改所有者和所属组chown、umask、隐藏权限...

一、chmod

chmod 命令用于修改文件或者文件夹的权限,

之前学习过

ls -l

782bf6f9cd3e09be9801ef99d49535d9.png

如图,第一位-之前已经学习过,代指这是一个文本

之后的 rw-r--r--是文件的权限

前三位rw-是文件所有者的权限

中间三位r-- 是文件所属组的权限

后三位r--是其他用户的权限

文件的权限有三种:

r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。

w(Write,写入):对文件而言,具有新增,修改,删除文件内容的权限;对目录来说,具有新建,删除,修改,移动目录内文件的权限。

x(eXecute,执行):对文件而言,具有执行文件的权限;对目录来说该用户具有进入目录的权限。

权限拥有权限值,r=4 ,w=2 ,x=1,

上图中rw-r--r-- 就可以用644表示

将此文件的权限修改为700

chmod 700 /tmp/chen1/123.txt

然后

ls -l /tmp/chen1/

f0e9e49b4065c5c16fd9782df6f22ed2.png

可以发现123.txt的权限变成了rwx------

也可以使用

chmod g+r,o+w /tmp/chen1/123.txt

此时文件权限变为rwxr---w- 即742

7c5f22c65d68cab7265723dfa3b32b2f.png

g就是group用户组

o就是other其他用户,

还有个u是指文件所有者,这种方法可以明确的修改文件的权限,比起用权限值修改略麻烦;

接下来修改文件夹的权限

cc338a51343fda8afb37e6fc49169145.png

ls -ld /tmp/chen1/

文件权限为rwxr-xr-x 755

chmod 700 /tmp/chen1/

ls -l /tmp/chen1/

2ec41db89924b6313dfecca0e6e11474.png

可以发现123.txt文件权限并没有改变,也就是说chmod命令只是修改了文件夹本身的权限,并没有修改文件夹内部文件的权限

如果要修改文件夹和文件夹内部文件的权限,则使用下面的命令

chmod -R 741 /tmp/chen1/

可以发现文件夹/tmp/chen1/与文件/tmp/chen1/123.txt的权限都变为了741;

二、chown

change owner 修改文件所属用户

cat /etc/passwd

5970ff7d1f4219dd67315667841a164b.png

可以看到最后两个是我之前增加的用户chen1和user1

接着我来修改文件/tmp/chen1/123.txt的用户

ls -l /tmp/chen1/123.txt

455f5e263203d922382ba55cb06611aa.png

可以看到文件的用户和用户组都是root

修改所属用户

chown chen1 /tmp/chen1/123.txt

80753bb45fa7d1b21ace7cec9ac15c02.png

查看

ls -l /tmp/chen1/123.txt

修改所属组

chgrp user1 /tmp/chen1/123.txt

查看

ls -l /tmp/chen1/123.txt

也可以使用

chown user1:chen1 /tmp/chen1/123.txt

同时修改用户组和用户,用冒号分隔即可,

ls -l /tmp/chen1/123.txt

单独修改用户组也可以

chown :user1 /tmp/chen1/123.txt

bd632d1107a8f31c05c1e80e0c8c3f63.png

三、umask

umask 用来改变新建文件和新建文件夹的默认权限

文件夹默认所有的权限值777,文件666

90cbe6b58f0626127e80a653b214e213.png

umask 默认为0022

umask 第一位的0可以先省略

所以新建文件夹默认权限为 777-022 = 755

新建文本默认权限为 666-002=644 ;

如果将umask修改为0003

umask 0003

则新创建的文件夹权限变为 777-003=774

而新建文本权限为 664 而并不是663

这是因为,文本所有权限为664(rw-rw-rw-) 003 (-------wx)

由于664权限中已经没有x权限,所以现在权限为(rw-rw-rw-)- (-------wx) =(rw-rw-r--)

四、chattr

隐藏权限

使用

man chattr 可以查看具体用法

chattr +i /tmp/chen1/123.txt

67ab6e4118f2e388c0b2711db9cd88d1.png

则文件/tmp/chen1/123.txt无法修改、删除

使用

lsattr /tmp/chen1/123.txt

可以看到有i权限

chattr -i /tmp/chen1/123.txt

就可以删除i权限;

chattr +a /tmp/chen1/123.txt

a6adb356a8c6c12a89a350ef93e498bd.png

则文件/tmp/chen1/123.txt只可以追加,无法进行删除等其他操作

并且只可以使用echo asaddasd >> /tmp/chen1/123.txt这种方式追加,无法用vi编辑追加

chattr -a /tmp/chen1/123.txt

删除a权限;

当文件夹拥有i权限时,文件夹内文件可以追加,也可以可以用vi追加或修改文件,但是不可以删除文件,无法创建新文件;

当文件夹拥有a权限时,文件夹内文件可以追加,也可以可以用vi追加或修改文件,可以新建文件,但是不可以删除文件;

lsattr -R /tmp/chen1/

可以查看文件内所有子文件隐藏权限。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值