liunx用户增删改查 组管理 权限介绍

组管理 终端命令

添加组:groupadd 组名

删除组:groupdel 组名

查看组:cat /etc/group

修改文件所属的组:chgrp  目标组名  文件/目录

权限介绍

drwxr-xr-x. 2 root group01 4.0k

d:文件类型     (首字母)

rwx:用户对这个目录或文件的操作权限 (2/3/4)

r-x:用户所属的组对这个目录或文件的操作权限(5/6/7)

r-x:其他用户对这个文件或目录的操作权限  (8/9/10)

r:read 读取权限

w:write 写入权限

x:execute 执行权限

root:所属用户

group01:所属组

4.0k:文件的大小

用户的增删改查

添加用户:useradd [参数] 用户名

删除用户:userdel -r 用户名   (连同家庭组里面一起删除)

为用户设置密码:passwd [参数] 用户名+回车

查看当前系统有哪些用户: cat /etc/passwd

查看 root 用户的UID 和 GID信息  id root

查看系统登录的用户:who

查看当前用户:whoami

修改用户:usermod [参数] 用户名

将用户加入/移出群组:gpasswd [参数] 组名

useradd 参数:

参数 含义
-u UID 手工指定用户的 UID,注意 UID 的范围(不要小于 500)。
-d 主目录 手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限;
-c 用户说明 手工指定/etc/passwd文件中各用户信息中第 5 个字段的描述性内容,可随意配置;
-g 组名 手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。一旦手动指定,则系统将不会在创建此默认的初始组目录。
-G 组名 指定用户的附加组。我们把用户加入其他组,一般都使用附加组;
-s shell 手工指定用户的登录 Shell,默认是 /bin/bash;
-e 曰期 指定用户的失效曰期,格式为 “YYYY-MM-DD”。也就是 /etc/shadow 文件的第八个字段;
-o 允许创建的用户的 UID 相同。例如,执行 “useradd -u 0 -o usertest” 命令建立用户 usertest,它的 UID 和 root 用户的 UID 相同,都是 0;
-m 建立用户时强制建立用户的家目录。在建立系统用户时,该选项是默认的;
-r 创建系统用户,也就是 UID 在 1~499 之间,供系统程序使用的用户。由于系统用户主要用于运行系统所需服务的权限配置,因此系统用户的创建默认不会创建主目录。

passwd参数:

参数 含义
-S 查询用户密码的状态,也就是 /etc/shadow 文件中此用户密码的内容。仅 root 用户可用
-l 暂时锁定用户,该选项会在 /etc/shadow 文件中指定用户的加密密码串前添加 “!”,使密码失效。仅 root 用户可用
-u 解锁用户,和 -l 选项相对应,也是只能 root 用户使用
–stdin 可以将通过管道符输出的数据作为用户的密码。主要在批量添加用户时使用。
-n 天数 设置该用户修改密码后,多长时间不能再次修改密码,也就是修改 /etc/shadow 文件中各行密码的第 4 个字段;
-x 天数 设置该用户的密码有效期,对应 /etc/shadow 文件中各行密码的第 5 个字段
-w 天数 设置用户密码过期前的警告天数,对于 /etc/shadow 文件中各行密码的第 6 个字段;
-i 日期 设置用户密码失效日期,对应 /etc/shadow 文件中各行密码的第 7 个字段;
-d 清除用户密码

usermod 参数

参数 含义
-c 用户说明 修改用户的说明信息,即修改 /etc/passwd 文件目标用户信息的第 5 个字段
-d 主目录 修改用户的主目录,即修改 /etc/passwd 文件中目标用户信息的第 6 个字段,需要注意的是,主目录必须写绝对路径
-e 日期 修改用户的失效曰期,格式为 “YYYY-MM-DD”,即修改 /etc/shadow 文件目标用户密码信息的第 8 个字段
-g 组名 修改用户的初始组,即修改 /etc/passwd 文件目标用户信息的第 4 个字段(GID)
-u Uid 修改用户的UID,即修改 /etc/passwd 文件目标用户信息的第 3 个字段(UID)
-G 组名 修改用户的附加组,其实就是把用户加入其他用户组,即修改 /etc/group 文件
-l 用户名 修改用户名称
-L 临时锁定用户(Lock)
-U 解锁用户(Unlock),和 -L 对应
-s shell 修改用户的登录 Shell,默认是 /bin/bash

注意:并不是所有的 Linux 发行版都包含这个命令,因此,使用前可以使用 man usermod 命令确定系统是否支持.

此命令对用户的临时锁定,同 passwd 命令一样,都是在 /etc/passwd 文件目标用户的加密密码字段前添加 "!",使密码失效;反之,解锁用户就是将添加的 "!" 去掉.

gpasswd参数:

选项 功能
选项为空时,表示给群组设置密码,仅 root 用户可用。
-A user1,… 将群组的控制权交给 user1,… 等用户管理,也就是说,设置 user1,… 等用户为群组的管理员,仅 root 用户可用。
-M user1,… 将 user1,… 加入到此群组中,仅 root 用户可用。
-r 移除群组的密码,仅 root 用户可用。
-R 让群组的密码失效,仅 root 用户可用。
-a user 将 user 用户加入到群组中。
-d user 将 user 用户从群组中移除。

sudo命令的总结

第一步:使用普通用户登录系统,

进入root用户所属目录创建文件夹001,

mkdir 001

创建时报错 “权限不够”

第二步:临时使用超级管理员权限进行创建命令

sudo  mkdir  001  

报错 "xxx"不在sudoers文件中

第三步:

使用

  vi  /etc/sudoers  

打开sudoers文件找到此行(可以借助find查找):

root    ALL=(ALL)      ALL

在此行下面添加

普通用户名 ALL=(ALL) ALL

最后强制保存退出(:wq!)

第四步:

切换成普通用户重新创建

“sudo mkdir 001”(需要输入用户的密码)

目录文件权限的修改

方法1:

给文件夹或目录赋予权限

chmod +r  w  x       文件或文件夹(目录) 

给文件夹或目录取消权限

chmod -r  w  x       文件或文件夹(目录)      

方法2:

给全部用户都赋予读写执行权限

chmod a+rwx abc.conf 

给文件所有者赋予读写执行权限

chmod u+rwx abc.conf 

给组用户赋予读写执行权限

chmod g+rwx abc.conf

给其他用户赋予读写执行权限

chmod o+rwx abc.conf 

方法3:

直接用数字赋予权限

chmod -R  777   文件或文降夹(目录)    	-R:递归(目标文件夹不为空)

补充:

1.      r  w  x   - 
分别对应 4  2  1   0
 	例如: 7   			 5  		 	4
 		 (4+2+1)     	(4+0+1)		  (4+0+0)
 对应权限: r w x	 	  r	-  x        r -  -
 则这个文件的对应权限为   (文件类型)rwxr-xr--
 
2.文件或文件夹(目录)的权限是一个二进制的数,
  例如  d  rwx  rwx  rwx          
  二进制   111  111  111
  十进制	 7    7    7
  所以这个目录对应的权限数字就是 777     

修改文件/文件夹所属的用户和组

普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。

chown [-R] 目标用户名 : 目标用户所属的组  文件/文件夹(目录)
-R(注意大写)选项表示连同子目录中的所有文件,都更改所有者。
参数 含义
-deference 作用于符号链接的指向,而不是链接文件本身。
-v 显示详细的处理信息。
-R 处理指定目录以及其子目录下的所有文件。
-h 修复符号链接。
-f 忽略错误信息。
-c 显示更改的部分的信息

有不对的地方还请给我留言,感谢!

你可能感兴趣的:(linux)