Linux命令-用户和组管理

介绍用户和组相关命令之前,介绍几个文件:

/etc/passwd:保存用户属性信息

wKiom1NfrpuD0zyTAAA1yT6Iy_w287.jpg

用户名:密码占位符:UID:GID:注释信息:家目录:默认shell

/etc/shadow:保存用户的密码及密码相关属性信息

wKiom1NfrwzATpCIAABMov0FGWc334.jpg

用户名:加密后的密码:最近一修改密码时间:密码最短使用天数:密码最长使用天数:密码过期前多少天开始警告用户:用户非活动天数:用户锁定天数:保留字段

/etc/group:保存组属性信息

wKiom1Nfs6jhKzsPAAAfEl3_npM748.jpg

组名:组密码占位符:GID:以此组为附加组的用户列表,如有多个以“,”分隔

/etc/gshadow:保存组密码


1.用户管理

  • 新建用户:

   格式:useradd [-option] [argument] USERNAME

#    useradd hadoop,新建用户hadoop:

   默认会新建与hadoop相同的组,并作为hadoop的基本组,用户hadoop的UID等于/etc/passwd中最大UID+1;如果/etc/group中没有与用户hadoop的UID相同的GID,则hadoop组的GID等于hadoop用户的UID,否则,hadoop组的GID等于/etc/group中最大GID+1

wKiom1NftZ-DqlHFAABylFKpmB0892.jpg

#    useradd -u UID USERNAME,新建用户时指定UID:范围1-65535

wKiom1NfuU7gpdHhAACPxB37WTo046.jpg

#    useradd -g [GID|GRPNAME] USERNAME,新建用户时指定用户基本组:

   指定基本组时,该组必须存在;新建用户oracle的GID是1111,也就是mysql组;

[root@xufei~]#useradd -g mysql oracle

wKiom1Nful3h7SVPAABzEZcq_Sg481.jpg

#   useradd -c COMMENT USERNAME,新建用户时添加注释信息:

wKiom1Nfu9ySDcsjAACyhcVciNM763.jpg

#    useradd -d /path/to/somewhere USERNAME,新建用户时指定家目录:

wKioL1NfvbjC1tMhAABZRRnB2_U674.jpg

#   useradd -s /path/to/SHELL,指定默认shell:

可以cat /etc/shells查看有哪些shell可供使用

wKioL1NfvoziZg0eAACSQKAvzMg554.jpg

------------------------------------------

   我们可以使用id,finger查看用户属性信息:

  1. id USERNAME:不加USERNAME,显示当前用户的信息;

wKiom1Nfv2TisUHwAADK65p0Iek109.jpg

  id -u USERNAME:只显示uid;

wKioL1Nfv7aB3LSCAAAYKCJ1rB4933.jpg

   同理,id -g USERNAME:只显示基本组gid;

   id -G USERNAME:显示用户的所有gid;

wKioL1NfwFuABmvUAAAh7fBW0kI689.jpg

   id -n:以name代替IDs,组合-ugG;

wKiom1NfwMaD1zEaAAAp2InRop4209.jpg同理,-nu,-ng;

   2.finger USERNAME:可以显示login name,注释信息,家目录,默认shell等

wKiom1NfwVng-yJVAAB0ZN9paJ0899.jpg

---------------------------------------------------

#   useradd -r USERNAME,创建系统用户:1-499的uid和gid是系统用户和系统组使用的

  虽然testd的finger信息显示其家目录是/home/testd,实际系统用户是没有家目录的

  你可以ls /home进行查看

wKiom1NfwgGjyJSxAACc6grdkbQ175.jpg

#    useradd -M USERNAME,新建用户时不创建家目录:和创建系统用户类似,家目录实际不存在

wKiom1NfwvjTAmQpAACe60_XqA8912.jpg

#    useradd -m USERNAME,新建用户时必须创建家目录

  • 修改用户属性:

#   usermod [option] [argument] USERNAME

#    修改hadoop的登录名:

wKiom1NgbZLghTXpAABIwRzNn_4804.jpg

#    修改hadoopa的UID:

wKioL1NgbarhODRLAACatac89U8162.jpg

#    修改hadoopa的基本组:

wKioL1NgbhXS_i3rAABZmNCf7Y4483.jpg

#    修改hadoopa的附加组:

   wKiom1Ngb0mzxMNrAADr6Kypzvk756.jpg

   用户的基本组只有一个,附加组可以有多个,如果想给hadoopa增加附加组就需要使用-a选项:

   wKiom1NgcCbhU5pxAADB8xdSggE300.jpg


#    修改hadoop的家目录:

    使用-m -d选项把原来家目录下的文件一并移动到新家目录

   wKioL1NgfrCC8q1rAAMWeUuGuQE952.jpg

#    修改hadoopa的默认shell:

   wKiom1NggCeSUnXrAACQRnhqz7A255.jpg

   wKioL1NggAjB1sv9AAA0SFq9XD4658.jpg

  • 删除用户:

    格式:userdel [option] USERNAME

#   userdel USERNAME:

   wKioL1NggW-ja6nNAABj2z4g92w800.jpg

   但是家目录和邮件都没有删除

   wKiom1NggezDe_fcAACINRNsa5s506.jpg

#    userdel -r USERNAME:

   连同家目录一并删除

   wKiom1NgghaxWUzhAABINGI674I874.jpg

2.组管理

  • 新建组:

#    groupadd [option] GRPNAME

#    groupadd GRPNAME:

   自动生成的GID=/etc/group中最大UID+1

wKioL1NgaHLz9kZtAAA-_qmsIBQ654.jpg

#    groupadd -g GID GRPNAME:范围1-65535

wKiom1NgaNGyk-1GAABHo6838pQ319.jpg

#    groupadd -r GRPNAME:

   创建系统组,那么GID一定是1-499之间的

wKioL1NgaU-y7qZlAABKPIlSp68567.jpg

  • 修改组属性:

    groupmod [option] GRPNAME

#    groupmod -n new_group_name GRPNAME:

wKiom1NgarXDeoTlAABNU-mVQNY209.jpg

#   groupmod -g GID GRPNAME:

wKioL1NgasShGVqcAABRCBuc8Ic696.jpg

   删除组:

#    groupdel GRPNAME

wKioL1Ngaxfw-jvSAADLboYFX1o592.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章