id


该命令用于显示用户的ID, 群组ID

这里有实际与有效ID之分,暂且不理解

语法:

  1. id [-gGnru][--help][--version][用户名称]
  2. # -g 表示group
  3. # -G 用户所属附加群组ID
  4. # -n 显示name
  5. # -r 实际ID
  6. # -u 用户ID

示例:

id

uid=0(root) gid=0(root) 组=0(root)

id -g # 返回0

id -un #显示用户名称

id -gn #显示组名称

useradd 添加用户


添加用户设置默认值保存在/etc/default/useradd
可以使用-D选项查看默认值
useradd -D

GROUP=100 #新用户默认添加到GID为100的公共组
HOME=/home    #HOME目录
INACTIVE=-1    #密码过期不会不禁用
EXPIRE=    #用户的过期时间
SHELL=/bin/bash    #登录shell
SKEL=/etc/skel    #将/etc/skel的内容到HOME目录下
CREATE_MAIL_SPOOL=yes    #创建一个接收邮件的文件

useradd命令行参数

参数 描述
-m 创建用户的HOME目录. 默认不创建
-c comment 用户备注
-d home_dir 为主目录起名
-e expire_date YYYY-MM-DD指定账户过期时间
-f inactive_days 密码过期多少天账户被禁用,0表示马上,1表示禁用该功能
-g initial_group 用户登录组的GID或组名
-G group 用户登录组 之外的附加组
-k 必须和-m一起使用, 将/etc/skel目录内容复制到HOME目录
-M 不创建用户HOME目录
-n 创建一个与用户登录名同名的新组, 经测试无效
-r 创建系统账户
-p password 指定默认密码
-s shell 指定登录shell
-u uid 指定UID

在-D选项跟上参数修改系统默认的新用户设置

参数 描述
-b default_home home位置
-e expiration_data 过期日期
-f inactive 禁用天数
-g group 默认的组
-s shell 登录shell

userdel 删除用户


userdel不带参数只会删除/etc/passwd文件中的用户信息, 带上-r参数会删除用户HOME目录和邮件目录

修改用户


命令 描述
usermod 修改用户账户的字段
usermod -g 用户组 用户名 修改用户用户组
usermod -G 用户组 用户 将用户添加到用户组中
passwd 修改已有用户的密码
chpasswd 从文件中读取登录名密码并更新密码
change 修改密码的过期日期
chfn 修改用户账户的备注
chsh 修改默认登录shell

groupadd 新建用户组


groupmod 修改用户组


groupmod -g 修改用户组GID
groupmod -n new_name old_name 修改用户组名