useradd
Linux用户在操作系统可以进行日常管理和维护,涉及到的相关配置文件如下:
/etc/passwd 保存用户信息
/etc/shadow(影子) 保存用户密码(以加密形式保存)
/etc/group 保存组信息
/etc/login.defs 用户属性限制,密码过期时间,密码最大长度等限制
/etc/default/useradd 显示或更改默认的useradd配置文件(useradd 默认创建用户 自动建立家目录 添加附属组 --很多参数)
如需创建新用户,可以使用命令useradd,执行命令useradd kk即可创建kk用户,同时会创建一个同名的组kk,默认该用户属于kk主组。
用法:useradd [选项] 登录(我用颜色标记常用的)
useradd -D
useradd -D [选项]
选项:
-b, --base-dir BASE_DIR 指定新账户的家目录;
-c, --comment COMMENT 新账户的 GECOS 字段;
-d, --home-dir HOME_DIR 新账户的主目录;
-D, --defaults 显示或更改默认的 useradd 配置;
-e, --expiredate EXPIRE_DATE 新账户的过期日期;
-f, --inactive INACTIVE 新账户的密码不活动期;
-g, --gid GROUP 新账户主组的名称或ID;(指定GID)
-G, --groups GROUPS 新账户的附加组列表;(添加到什么组)
-h, --help 显示此帮助信息并推出;
-k, --skel SKEL_DIR 使用此目录作为骨架目录;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库;
-m, --create-home 创建用户的主目录;(指定家目录的位置)
-M, --no-create-home 不创建用户的主目录;(不创建家目录,是系统用户)
-N, --no-user-group 不创建同名的组;
-o, --non-unique 允许使用重复的 UID 创建用户;
-p, --password PASSWORD 加密后的新账户密码;
-r, --system 创建一个系统账户;
-R, --root CHROOT_DIR chroot 到的目录;
-s, --shell SHELL 新账户的登录 shell;
-u, --uid UID 新账户的用户 ID;(指定UID)
-U, --user-group 创建与用户同名的组;
-Z, --selinux-user SEUSER 为SELinux 用户映射使用指定 SEUSER
Useradd示例
useradd -G 组名 用户名
新建ba用户,并加入到ba1,ba2附属组;
[root@web02 ~]# useradd -G ba1,ba2 ba useradd: group 'ba1' does not exist useradd: group 'ba2' does not exist [root@web02 ~]# groupadd ba1 [root@web02 ~]# groupadd ba2 [root@web02 ~]# useradd -G ba1,ba2 ba [root@web02 ~]# id ba uid=1010(ba) gid=1010(ba) groups=1010(ba),1001(ba1),1002(ba2)
Usermod
用法:usermod [选项] 登录
选项:
-c, --comment 注释 GECOS 字段的新值;
-d, --home HOME_DIR 用户的新主目录;
-e, --expiredate EXPIRE_DATE 设定帐户过期的日期为 EXPIRE_DATE;
-f, --inactive INACTIVE 过期 INACTIVE 天数后,设定密码为失效状态;
-g, --gid GROUP 强制使用 GROUP 为新主组;
-G, --groups GROUPS 新的附加组列表 GROUPS;
id username --- 查看用户信息
-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中,
并不从其它组中删除此用户;
-h, --help 显示此帮助信息并推出;
-l, --login LOGIN 新的登录名称;(修改用户名)
-L, --lock 锁定用户帐号;
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用);
-o, --non-unique 允许使用重复的(非唯一的) UID;
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码;
-R, --root CHROOT_DIR chroot 到的目录;
-s, --shell SHELL 该用户帐号的新登录shell环境;
-u, --uid UID 用户帐号的新UID;
-U, --unlock 解锁用户帐号;
-Z, --selinux-user SEUSER 用户账户的新SELinux 用户映射。
passwd命令 root可以为自己修改 为普通用户添加|修改密码
将ba用户名改为baba
usermod -l 新名字 原先名
[root@web02 ~]# usermod -l baba ba [root@web02 ~]# id baba uid=1010(baba) gid=1010(ba) groups=1010(ba)
普通用户只能对自己进行密码的修改(普通用户必须按照要求)
设置 -- 使用周期 -- 所有的用户 只有7天有效 7天后自动删除
groups可以查看用户都在哪些组
groups 用户名
[root@web02 ~]# id ba uid=1010(ba) gid=1010(ba) groups=1010(ba),1001(ba1),1002(ba2) [root@web02 ~]# groups ba ba : ba ba2
gpasswd可以指定用户T出指定组
[root@web02 ~]# groups ba ba : ba ba1 ba2 [root@web02 ~]# gpasswd -d ba ba1 Removing user ba from group ba1 [root@web02 ~]# groups ba ba : ba ba2 [root@web02 ~]# gpasswd -d ba ba2 Removing user ba from group ba2 [root@web02 ~]# groups ba ba : ba
所有的Linux或者Windows系统都有组的概念,通过组可以更加方便的管理用户,组的概念应用于各行行业,例如企业会使用部门、职能或地理区域的分类方式来管理成员,映射在Linux系统,同样可以创建用户,并用组的概念对其管理。
Linux组有如下特点:
每个组有一个组ID;
组信息保存在/etc/group中;
每个用户至少拥有一个主组,同时还可以拥有31个附属组。
通过命令groupadd、groupdel、groupmod来对组进行管理,详细参数使用如下:
groupadd用法
-f, --force 如果组已经存在则成功退出;
并且如果 GID 已经存在则取消 –g;
-g, --gid GID 为新组使用 GID;
-h, --help 显示此帮助信息并推出;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;
-o, --non-unique 允许创建有重复 GID 的组;
-p, --password PASSWORD 为新组使用此加密过的密码;
-r, --system 创建一个系统账户;
groupmod用法
-g, --gid GID 将组 ID 改为 GID;
-h, --help 显示此帮助信息并推出;
-n, --new-name NEW_GROUP 改名为 NEW_GROUP;(给组改名)
-o, --non-unique 允许使用重复的 GID;
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD;
groupmod修改组名称,将ba组名,改成haha
groupmod -n 改的名字 原来组名
[root@web02 ~]# groupmod -n haha ba [root@web02 ~]# id ba uid=1010(ba) gid=1010(haha) groups=1010(haha)
groupdel用法
userdel thinkmo1 保留用户的家目录;
userdel -r thinkmo1 删除用户及用户家目录,用户login系统无法删除;
userdel -rf thinkmo1 强制删除用户及该用户家目录,不论是否login系统。

评论