Linux用户管理

一、用户帐号的管理
1.用户帐号的分类
超级用户(UID=0):具有一切系统操作权限
普通用户(UID=500—MAXUID默认值60000):操作权限受到限制
伪用户(UID=1—499):限制了本机登录(只用于远程登录,建立用户时不会建立本地用户配置文件)
注:用户的UID的取值,除0以外,其它值不允许用户取相同的值
2.用户帐号包含的信息
用户名:用户的字符
口令:
UID:用户唯一标识符
GID:用户组的唯一标识符
所属组
用户主目录:用户登录的初始目录
SHELL类型:设置SHELL程序的种类
3.用户数据文件
(1)/etc/passwd
功能:存放系统的用户帐号信息
内容:用户名  密码 UID GID 所属组 用户主目录 SHELL
实例: u1 : x : 501: 501: u1     /home/u1 :/bin/bash

  u1是用户名 x 表示密码加密,口令存放在shadow中 501(第一个):用户的ID 

  501(第二个):用户的组ID   u1:所属组的组名 /home/u1:u1用户的家目录 /bin/bash:用户的shell
 注:如果采用了shadow,此处存放口令的为x字符,真正密码保存在/etc/shadow中
   如果不采用shadow,采用明文件显示,如果采用md5加密的话所存放的为密文
(2)/etc/shadow
功能:存放用户口令(加密过的口令)
实例: u1 : bq$# : 10750: 0: 999 :7 : -1 :-1 : 12546
说明: u1 用户名
         b1$# 加密的口令  
        10750 从1970.1.1开始计算,该口令修改后已过去了多少天
         0    需要再过多少天这个口令可以被修改
9999 密码的有效期
7 口令失效多少天前发出警告
-1 口令失效多少天之后禁用这个账户
-1 口令从1970.1.1计算,该口令已经禁用了多少天
12546 保留
4.用户管理的工具
(1)命令工具
1)建立用户
格式:useradd [参数] 用户名
参数:-u UID:指定用户的UID值
-g 组名:指定用户的所属组
-G 组名:指定用户附加组
-d 路径:指定用户主目录
-e 时间:指定用户有效日期
-s SHELL:指定SHELL的类型
-m :建立用户主目录
-M :不建立用户主目录
-r :建立一个伪用户
实例:1)# useradd u2
2)# useradd -g g2 u2
3)# useradd -e 03/28/04 –g g3 -d /etc/ u3
2)删除用户 格式:userdel [参数] 用户名
 参数:-r : 删除用户主目录
 实例:1)# userdel u2
2)# userdel u3
3)设置用户口令  格式:passwd [用户名]
 实例:#passwd u2
4)修改用户信息  格式:usermod [参数] 用户名
 参数:-l 新的用户名:修改用户主目录
   -d 路径:修改用户主目录
   -G 组名:修改附加组
 实例:1)# usermod -d / u3
   2)# usermod -G u2 u3
   3)# usermod -l user3 u3
用户管理器
二、组帐号管理
1.组的分类
私用组:只能包含一个用户(由创建用户的自动创建)
标准组:可以包含多个用户
2.组的信息
组名:组的标识符号
GID:组的唯一标识符
口令
组的成员
3.组的管理文件  /etc/group
 功能:存放系统组信息
 内容: g1: x : 500 :u1,u2,u3
4.组帐号的管理工具
(1)命令
 1)建立组
  格式:groupadd [参数] 组名
  参数:-g GID :指定GID的值
     -r :建立伪用户组(1--499)
  实例:1)# groupadd g2
     2)# groupadd –r g3
 2)删除组
  格式:guoupdel 组名
  实例:guoupdel G3
3)修改组的信息
  格式:groupmod [参数] 组名
  参数:-n 新组名:修改组的GID
     -g GID:修改组的GID
  实例:1)# groudmod -n group g1
     2)# groupmod -g 860 u1,u2
4)添加/删除组成员
  格式:gpasswd [参数] 组名
  参数:-a 用户名 : 向指定组添加用户
     -d 用户名 : 从指定组中删除用户
  实例:1)#gpasswd -a u1 root
     2)#gpasswd -d u1 root
5)显示用户所属组
  格式:groups [用户名]
  实例:1)#groups (显示当前用户所属组)
     2)#groups root (显示root用户的所属组)

你可能感兴趣的:(linux,配置管理,bash)