一、文件用户和组修改
1.在/root下创建一个1.txt的文件,它的默认用户和默认组都是root。
下面我们对它的各种属性进行修改:
修改文件对应的用户(递归修改):chown -R [用户] 1.txt,可以看到文件的用户已经变为oldboy
修改文件对应的用户和组:chown [用户.用户组] 1.txt,可以看到文件的用户和组已经变为oldboy
或
修改文件对应的组:chgrp [用户组] 1.txt ,可以看到文件的组变为oldboy
二、给文件加锁chatter:目的是不让别人随意修改文件
1.我们给文件1.txt增加一个加锁属性chattr +i ,并且查看一下文件lsattr命令,可以看到文件的权限位多了i标志
如果这个时候我们对1.txt文件进行添加内容或删除,都是失败的
2.现在我们给1.txt文件解锁chattr -i,让其恢复正常可编辑属性,可以看到1.txt文件在权限位的i标志消失了
现在我们可以进行追加内容和删除文件
实际生产环境中,我们可以系统关键的文件进行加锁保护,但是我们在操作时先要做解锁操作,否则没有任何编辑权限,root用户也是如此
[root@oldboy ~]# chattr +i /etc/passwd /etc/group /etc/shadow
给关键文件加锁:/etc/gshadow /etc/sudoers
[root@oldboy ~]# chattr +i /etc/sudoers
[root@oldboy ~]# visudo #可以看到再编辑时(root用户)会提示报错,无权限
visudo: /etc/sudoers: Permission denied
以下是chattr对应的属性
+i #给文件加锁
-i #给文件解锁
= #给文件赋予某个属性
三、Linux文件权限
1.同样先来创建一个文件,来看看默认权限
-rw-r--r--. 1 root root 0 Aug 31 00:50 test.txt
-rw-r--r--就为此文件的默认权限
rw- r-- r--
用户权限 用户组权限 其他权限
4个字符的含义:
r 对于文件是可读 对于目录是浏览目录下的文件.
w 对于文件是可写 对于目录是创建\删除文件(和x配合).
x 对于文件是可执行 对于目录是能否进入目录.
- 没有权限
字符对应的数字
r 4
w 2
x 1
- 0
2.两者的转化
字符权限 数字权限
rw-r--r-- ==== 6+4+4
所以上面文件对应的默认权限就是644
下面是几个计算权限的实例
drwxrwxr-- 774
-rw-r--r-x 645
drwx--xr-x 715
dr-xrwx--x 571
d--xr-xrwx 157
----r--r-- 044
3.我们对一个文件的权限来进行修改(chmod命令)
-R 是递归修改
和chatrr命令一样,修改权限也有类似的属性
动作:
-减少
+增加
=赋予新的权限
前三位 u(user) 用户位
中三位 g(group)用户组位
后三位 o(other)其他用户位
a(all)
--x-w-r--
下面的例子是我们将test.txt文件的用户组位增加权限
我们对test.txt文件做更加复杂的权限操作
前三位:增加rwx
中三位:减少w
后三位:改为x