用户和组

Linux用户基本概念

  3A认证机制
  计算机区分不同的使用者 —— 用户标识(用户名、GID)、密码
  Authentication: 认证机制,通过某种方案来确认用户是其声称的用户,如密码、生物识别等
  Audition: 审计机制,监督权限的使用 ,log审计凭据---额外审计功能SELinuse
  Authorization: 授权机制, 资源使用级别

用户

  管理员用户:root,UID为0
  普通用户:分为系统用户和登陆用户
  (1)系统用户:UID1-499,1-999
  对守护进程获取进项权限分配,存在满足文件或服务启动的需要,一般不能登录
  (2)登陆用户:UID500+,1000+
  交互式登陆,由超级用户权限的用户创建的用户

用户组

  管理员组:root,GID为0
  普通组:分为系统组和普通组,
  (1)系统组:GID1-499,1-999
  (2)普通组:GID500+,1000+
  主要组和附加组:
  (1)主要组:用户必须属于一个且只有一个主组,组名同用户名,且仅包含一个用户
  (2)附加组:一个用户可以属于零个或多个辅助组

用户和组的配置文件

  /etc/passwd 用户及其属性信息
  所创建的用户帐号和其相关信息均是存放在/etc/passwd配置文件中。由于所有用户对passwd文件均有读取的权限,因此密码信息并未保存在该文件中,而是保存在了/etc/shadow的配置文件中。
  在passwd文件中,一行定义一个用户,每行均由多个不同的字段构成,各字段值间用":”分隔,每个字段均代表该帐号某方面的信息。
  passwd配置文件有很多帐号信息,这些帐号是由系统自动创建的,他们是linux进程或部分服务程序正常工作所需要使用的账户,这些账户的最后一个字段的值一般为/sbin/nologin,表示该帐号不能用来登录linux系统。
Linux用户管理
  /etc/shadow 用户密码及其相关属性
  用户的密码采用加密算法加密后,保存在/etc/shadow配置文件中,该文件只有root用户可以读取。
  与passwd文件类似,shadow文件也是每行定义和保存一个账户的相关信息。第一个字段为用户帐户名,第二个字段为账户的密码。
Linux用户管理
  /etc/group 组及其属性信息
Linux用户管理
  /etc/gshadow 组密码及其相关属性
Linux用户管理

用户和组命令

命令参数和选项

  useradd命令用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。
  userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则不删除相关文件。
  chage命令是用来修改帐号和密码的有效期限。
  groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。
  sermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。
Linux用户管理_第1张图片

实例:

(1)新建用户加入组
  useradd –g root –G zhao //-g:加入主要组、-G:加入次要组
(2)建立一个新用户账户,并设置ID
   useradd zhao -u 544
(设定ID值时尽量要大于500,以免冲突)
(3)删除用户及家目录
   userdel -r zhao

Linux用户管理_第2张图片

实例:

[root@zhao ~]# chage -l root
最近一次密码修改时间 : 3月 12, 2013
密码过期时间 :从不
密码失效时间 :从不
帐户过期时间 :从不
两次改变密码之间相距的最小天数 :0
两次改变密码之间相距的最大天数 :99999
在密码过期之前警告的天数 :7

(1)建立一个新组,并设置组ID加入系统
   groupadd -g 344 linuxde

(2)修改newuser的用户名为newuser1
  usermod -l newuser1 newuser

用户显示和切换

   id显示用户的ID以及所属群组的ID
  id命令可以显示真实有效的用户ID和组ID。

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

  su用于切换当前用户身份到其他用户身份
  su - username #用户和操作环境都改变
  su username #只切换用户不切换操作环境及环境变量不变。

-c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份
-f或——fast:适用于csh与tsch,使shell不用去读取启动文件
-l或——login:改变身份时,也同时变更工作目录,也会变更PATH变量
-m,-p或--preserve-environment:变更身份时,不要变更环境变量
-s或--shell=:指定要执行的shell
--help:显示帮助
--version;显示版本信息