记录下Linux CentOS更改文件的权限命令与用户及用户组管理命令,供大家参考。
Linux CentOS更改文件的权限命令
chgrp (全称:change group)
groupadd testgroup 添加用户组
chgrp testgroup test1 修改文件的所属用户组是testgroup.
如果test1是目录,命令只修改了本身的用户组。
chgrp -R testgroup test1 修改test1文件以及子目录,子文件的所属组。
chown user1 dir3 dir3文件或目录的所有者改成user1
chown -R user1 dir 目录dir用户改成user1,包括dir里面的子目录和文件。
chown -R user1:testgroup test 目录test以及子目录和文件所有者改成user1,所属组是testgroup
Linux使用数字代替rwx,r=4,w=2,x=x,-=0 如:rwxrwx---=770.
目录的默认权限 755,文件的默认权限644
chmod 750 test 修改test的权限为rwxr-x---.
chmod 744 test rwxr----- 只能自己看到test,并且执行,别人看不到改目录里面的内容。用户组的人可以看到改目录,但是进不去,因为打开目录就是执行。
chmod -R 744 级联更改
u代表user,g代表group,o代表others,a代表全部。
chmod u=rwx,og=rx test 修改user权限为rwx,others和group权限是rx.
chmod u-x test user权限减去x.
=======
umask 改变文件的默认权限
目录的默认权限是755 普通文件的默认权限是644
umask 查看umask值 0022 (第一个0表示022是八进制) ----w-w-
普通文件最大权限是rw-rw-rw- 666;目录的最大权限是rwxrwxrwx 777;
777-022=755 目录的默认权限 666-022=644 普通文件的默认权限。
umask 002 设置默认减去权限为002.这样就会间接的改变了普通文件和目录的默认权限
==============
change attribute
chattr [+-=][param] 文件或目录
+ 增加,-减少,=设定
param 值
1)A 文件或目录的atime将不可修改。
2)s 会将数据同步写入磁盘中。
3)a 只能追加,不能删除,非root用户不能设定改属性
4)c 自动压缩改文件,读取时会自动解压。
5) i 不能删除,重命名,设定链接,写入以及新增数据。
chattr +i dir2 dir2增加i属性 ;touch dir2/test 就会提示权限不足
chattr -i dir2 dir2去掉i属性;touch dir2/test 就能创建test文件。
CentOS用户和用户组管理
groupadd grptest1 按照系统默认的gid创建组。根uid一样,gid也是从1000开始的。
groupadd -g 1008 grptest2 创建gid=1008的用户组:grptest2
groupdel grptest2 删除组grptest2
groupdel不能删除user1的用户主组
useradd [-u UID] [-g UID] [-d HOME] [-M] [-s]
-u 表示自定义UID
-g 表示新增用户的用户组名,可以跟组id,也可以跟组名
-d 自定义用户的家目录
-M 表示不建立家目录
-s 表示自定义shell
useradd test10 新增用户test10.
如果useradd不加任何选项,直接跟用户名,则会创建一个跟用户名同名的组。
userdel user12 删除用户user12 ,保留家目录
userdel -r user12 删除用户user12 ,连同家目录一并删除。
passed gys 设置用户gys密码。
su 切换到root用户,当前目录不变。
su - 切换到root用户,目录变成 /root