用户管理


就像windows一样,我们需要使用一个用户来登录系统,linux也是如此。linux默认用户是root,权限很大,我们不希望权限过大以免出现差错,或多人使用时需要不同的权限和账号。

linux使用了用户和用户组来解决这个问题,如果你有接触过数据库,那么用户组就可以理解为角色,即是拥有相同权限或功能职责的用户集合。

每个用户除了至少属于一个用户组外,还拥有一个家目录,当用户登入后会自动进入到自己的家目录,存放于/home/目录下,相当于每个用户的专属工作平台。

用户


添加

useradd [选项] 用户名

选项作用
-c<备注>加上备注(保存在passwd的备注栏位中)
-d<登入目录>指定用户登入时的起始目录
-e<有效期限>指定帐号的有效期限
-f<缓冲天数>指定在密码过期后多少天即关闭该帐号
-g<群组>指定用户所属的用户组
-G<群组>指定用户所属的附加群组
-m自动建立用户的登入目录
-M不要自动建立用户的登入目录
-n取消建立以用户名称为名的群组
-s<shell>指定用户登入后所使用的shell
-u<uid>指定用户ID

在这里插入图片描述

查询

whoamiwho am iwho查询当前登录用户
在这里插入图片描述

id [选项] 用户名

选项作用
-g或–group显示用户所属群组的ID
-G或–groups显示用户所属附加群组的ID
-n或–name显示用户,所属群组或附加群组的名称
-r或–real显示实际ID
-u或–user显示用户ID
-help显示帮助
–version显示版本信息

在这里插入图片描述

注意:

  • uid=0代表超级用户
  • 1-499代表系统用户
  • 500-65535代表普通用户。

修改

usermod [选项] 用户名

选项作用
-c<备注>修改用户帐号的备注文字
-d登入目录>修改用户登入时的目录
-e<有效期限>修改帐号的有效期限
-f<缓冲天数>修改在密码过期后多少天即关闭该帐号
-g<群组>修改用户所属的群组
-G<群组>修改用户所属的附加群组
-l<帐号名称>修改用户帐号名称
-L锁定用户密码,使密码无效
-s<shell>修改用户登入后所使用的shell
-u<uid>修改用户ID
-U解除密码锁定

在这里插入图片描述

passwd [选项] 用户名

选项作用
-d删除密码
-S显示密码信息
-l停止账号使用
-u启用已被停止的账户
-f强迫下次登录时必须修改口令
-w口令要到期提前警告的天数
-i口令过期后多少天停用账户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

插播反爬信息 )博主CSDN地址:https://wzlodq.blog.csdn.net/

切换

su – 切换用户名
注意:

  1. 从权限高的用户切换到权限低的用户时不需要输入密码,反之需要。
  2. 使用 exit 指令,可以返回到原来的用户。
    在这里插入图片描述
    在这里插入图片描述

删除

userdel 用户名
userdel -r 用户名删除用户登入目录以及目录中所有文件

在这里插入图片描述

用户组


增加

groupadd 用户组

选项作用
-g指定新建工作组的 id
-r创建系统工作组,系统工作组的组ID小于 500
-K覆盖配置文件 “/ect/login.defs”

在这里插入图片描述

修改

groupmod [选项] 用户组

选项作用
-g <群组识别码>设置欲使用的群组识别码
-o重复使用群组识别码
-n <新群组名称>设置欲使用的群组名称

在这里插入图片描述
注意修改Alice的用户组是指令usermod
在这里插入图片描述

删除

groupdel 用户组

在这里插入图片描述

相关文件


/etc/passwd

/etc/passwd是用户的配置文件,记录用户的各种信息,每一行都表示的是一个用户的信息;一行有7个段位;每个段位用:号分割。
在这里插入图片描述

  • 第一字段:用户名(也被称为登录名);
  • 第二字段:口令;看到的是一个x,其实密码已被映射到/etc/shadow 文件中;
  • 第三字段:UID ,用户ID标识号;
  • 第四字段:GID,用户组ID标识号;
  • 第五字段:备注,可以不设置;
  • 第六字段:用户的家目录所在位置;
  • 第七字段:用户所用SHELL 的类型;

/etc/shadow

/etc/shadow文件是/etc/passwd 的影子文件,这个文件并不是由/etc/passwd产生,这两个文件是应该是对应互补的;shadow内容包括用户及被加密的密码以及其它/etc/passwd不能包括的信息,比如用户的有效期限等。每行包括9个段位,每个段位之间用:号分割。
在这里插入图片描述

  • 第一字段:用户名(也被称为登录名),在/etc/shadow中,用户名和/etc/passwd 是相同的,这样就把passwd 和shadow中用的用户记录联系在一起;
    第二字段:密码(已被加密),如果是有些用户在这段是x,表示这个用户不能登录到系统;
  • 第三字段:上次修改口令的时间;这个时间是从1970年01月01日算起到最近一次修改口令的时间间隔(天数),可以通过passwd 来修改用户的密码,然后看/etc/shadow中此字段的变化;
  • 第四字段:两次修改口令间隔最少的天数;如果设置为0,则禁用此功能;也就是说用户必须经过多少天才能修改其口令;此项功能用处不是太大;默认值是通过/etc/login.defs文件定义中获取,PASS_MIN_DAYS 中有定义;
  • 第五字段:两次修改口令间隔最多的天数;这个能增强管理员管理用户口令的时效性,应该说在增强了系统的安全性;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_MAX_DAYS 中定义;
  • 第六字段:提前多少天警告用户口令将过期;当用户登录系统后,系统登录程序提醒用户口令将要作废;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_WARN_AGE 中定义;
  • 第七字段:在口令过期之后多少天禁用此用户;此字段表示用户口令作废多少天后,系统会禁用此用户,也就是说系统会不能再让此用户登录,也不会提示用户过期,是完全禁用;
  • 第八字段:用户过期日期;此字段指定了用户作废的天数(从1970年的1月1日开始的天数),如果这个字段的值为空,帐号永久可用;
  • 第九字段:保留字段,目前为空,以备将来Linux发展之用;

此外,这个文件只有root权限可以读取和操作。
在这里插入图片描述

/etc/group

/etc/group文件时用户组的配置文件,记录Linux包含的组的信息。分为 4 个字段,还是以:号分割。
在这里插入图片描述

  • 第一字段:组名,用户组的名称,由字母或数字构成。与/etc/passwd中的登录名一样,组名不应重复;
  • 第二字段:用户组加密后的口令,一般为空,或者是x;
  • 第三字段:GID,用户组ID标识号;
  • 第四字段: 组内用户列表,不同用户之间用逗号(,)分隔。这个用户组可能是用户的主组,也可能是附加组;

原创不易,请勿转载本不富裕的访问量雪上加霜
博主首页:https://wzlodq.blog.csdn.net/
微信公众号:吾仄lo咚锵
如果文章对你有帮助,记得一键三连❤

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐