what?什么是用户账户?

   用户账户:实现操作者和计算机交互式操作的基础,是操作者的身份在满足了验证条件之后的计算机系统中的映射;

   对于计算机来讲,用户其实就是使用计算机的人,用户的名称能够自己定义,一个人能拥有多个账户。有了用户才能对计算机进行操作。


why?为什么需要用户账户?

   假如计算机不需要用户账户,也就是少了身份认证这种东西,那么任何一个人都可以对计算机进行操作,这样对于计算机来说是十分不安全的。计算机的资源必须只有经过身份认证的系统用户才能给予使用权限。所以计算机必须具有用户账户和认证账户的手段。


when?什么时候需要用户账户?

   计算进行操作的时候,执行指令需要权限。而权限只有对应的用户才能拥有。


用户账户分类:

超级用户(管理员):root

普通用户:包括系统用户和登陆用户

  系统用户(非登录用户):为了保证安全,往往会让某些进程或服务必须以非管理员的用户身份运行;这类非管理员用户,称为系统用户;此类用户一般不允许登录到系统的;

  登录用户:能够通过登录行为验证用户身份进而获得资源访问权限并可以对资源进行操作的用户,可以称为登录用户;

 

HOW?既然有这么多的用户账户,那么怎么样区分它们呢?

   这里用用户的标识方法来识别和区分,有两种方法

   用户账户的标识方式:每个用户都有对应的数字ID

用户登录名称:

为操作者提供的简单易记的字符串标识;

用户的数字ID(UID):

为计算机操作系统提供的标准的数字标识符号,0~2^32-1

  

     超级用户:

用户名:root

UID:0


普通用户:

系统用户:

CentOS 6-:1~499

CentOS 7+:1~999

登录用户

CentOS 6-:500+

CentOS 7+:1000+

注意:60000+的UID通常需要用户自定义标识;



what?什么是组用户?

组账户:将具有某些相同或相似属性的用户联系在一起以便可以集中授权的容器;

组的分类:(跟用户账户分类差不多)

超级用户组

普通用户组

系统用户组

登录用户组


组账户的标识方法:(跟用户账户的标识方法差不多)

组账户名称:

组账户ID(GID):

超级用户组:0

系统用户组:

CentOS 6-:1~499

CentOS 7+:1~999

登录用户组:

CentOS 6-:500+

CentOS 7+:1000+


有了用户账户,也有了组账户,它们的关系?

 在Linux中,每个用户必须至少属于一个组;

用户账户的GID标识被称为用户的主要组(基本组),Primary Group;每个用户必须要有主要组,而且只能有一个;


在主要组的基础之上,用户可以与其他的组账户存在逻辑关系,此类组称为用户的附加组(附属组,额外组),Addtion Group;对于用户来说,此类组可以没有,也可以有多个;


用户和组的管理命令:

 组账户的管理命令:

   groupadd、groupdel、groupmod

  用户账户的管理命令:

   useradd、userdel、usermod

  认证相关的命令:

   passwd、gpasswd

  其他的相关命令:

   chage,chsh,finger,su,id


与用户和组相关的命令:

  具体的功能可以在Xshell中用man 查看

   1.groupadd  


   2.groupdel


     注意:如果某个组是某个用户的主要组,则该组不能删除;


   3.groupmod

   

   4.useradd

 

   5.userdel

  

   6.usermod


   7.passwd

    

   8.chage  

     

   9.chsh 

   

   10.finger


   11.id


   12.su