1,chown
该命令用于修改文件的所有者,或者同时修改所有者与用户组。
注意
1,只要root才能执行该命令,普通用户无法执行,即使是文件的所有者。
2,用户必须已存在于系统,也就是在/etc/passwd中有记录的用户名。
[yang@localhost tmp]$ ll
total 4
-rwxrw-r--. 1 yang yang1 8 Nov 15 23:09 test
[yang@localhost tmp]$ chown -v alex test
# 只要root才能执行该命令,普通用户无法执行,即使是文件的所有者
chown: changing ownership of ‘test’: Operation not permitted
failed to change ownership of ‘test’ from yang to alex
[yang@localhost tmp]$ chown -v aaa test
# 用户必须已存在于系统,也就是在/etc/passwd中有记录的用户名
chown: invalid user: ‘aaa’
[root@localhost tmp]# chown alex:alex test
# root权限同时修改所有者与用户组,用":"隔开所有者与用户组
[root@localhost tmp]# ll
total 4
-rwxrw-r--. 1 alex alex 8 Nov 15 23:09 test
2,chgrp
与 chown 命令不同,chgrp 允许普通用户改变文件所属的组。
注意:
1,只有 root和文件所有者才可执行chgrp修改用户组
2,文件所有者修改用户组时,目标用户组须是该文件所有者所在的组。
文件test对应的所有者为yang,用户组为yang
将文件test的用户组修改为yang1,报错
用户yang只是在yang这个组中
将yang同时加入到另外一个组yang1中,这样yang就属于两个组,第一个为有效组,第二个为附属组,接着修改文件test的用户组,发现可以修改,所以,目标用户组须是该文件所有者所在的组
3,chmod
该命令是控制用户对文件的权限,只有root和文件所有者有权限执行chmod去修改文件权限。
[yang@localhost tmp]$ chmod 777 test
[yang@localhost tmp]$ ll
total 4
-rwxrwxrwx. 1 yang yang 8 Nov 15 23:09 test
4,chattr、lsattr
文件或者目录除了基本属性外,还有隐藏属性,可以通过chattr命令添加隐藏属性,lsattr查看添加的隐藏属性。
部分重要属性只有root才有权限添加,比如i、a
文件添加 i 属性后,不能被删除、改名、写入或者添加数据,即使是root。
[root@localhost tmp]# chattr +i test # 添加 i 属性
[root@localhost tmp]# lsattr
s---i----------- ./test
[root@localhost tmp]# rm test
rm: remove regular file ‘test’? y
rm: cannot remove ‘test’: Operation not permitted
[root@localhost tmp]# chattr -i test # 删除 i 属性
文件添加 a 属性后,不能被删除、修改文件数据,只能添加数据。
使用lsattr可以查看已经添加的隐藏属性,如果哪天遇到一个连root都无法修改的文件,那么赶紧检查下文件是否添加了 i 属性。
以上内容都是自己测试后得到的,如有错误,麻烦评论拍砖指出,学习学习!!!