Linux 添加用户和组

原文地址: Linux 添加用户和组
欢迎访问我的博客: http://blog.duhbb.com/
引言 【Linux 添加用户和组】本文记录了 Linux 中添加用户和组的一些实用命令, 将其汇集到一起方便查找和排查问题. 缘起于一次启动 nginx 报错了, 后来发现是 nginx 这个用户没有, 随想到需要增加组和用户, 将相关命令记录于此.
cannot open /etc/group groupadd :cannot open /etc/group, 后来看别人的博客介绍, 原来是在添加用户时, 需要涉及到 /etc/group, /etc/gshadow, /etc/shadow, /etc/passwd 这是个文件. 而且这四个文件的权限都是隐藏权限, 后来修改这四个文件的权限后在添加用户和组就可以了.
修改文件权限

chattr -i /etc/gshadow chattr -i /etc/shadow chattr -i /etc/group chattr -i /etc/passwd

添加用户和组
groupadd apache useradd -g apache apache

useradd -s /sbin/nologin -M nginx -g nginx

useradd 命令的选项:
--badnamesdo not check for bad names -b, --base-dir BASE_DIR新账户的主目录的基目录 --btrfs-subvolume-homeuse BTRFS subvolume for home directory -c, --comment COMMENT新账户的 GECOS 字段 -d, --home-dir HOME_DIR新账户的主目录 -D, --defaults显示或更改默认的 useradd 配置 -e, --expiredate EXPIRE_DATE新账户的过期日期 -f, --inactive INACTIVE新账户的密码不活动期 -g, --gid GROUP新账户主组的名称或 ID -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_DIRchroot 到的目录 -P, --prefix PREFIX_DIRprefix directory where are located the /etc/* files -s, --shell SHELL新账户的登录 shell -u, --uid UID新账户的用户 ID -U, --user-group创建与用户同名的组 -Z, --selinux-user SEUSER为 SELinux 用户映射使用指定 SEUSER

其他命令
# 建用户: adduser phpq# 新建 phpq 用户 passwd phpq# 给 phpq 用户设置密码# 建工作组 groupadd test# 新建 test 工作组# 新建用户同时增加工作组 useradd -g test phpq# 新建 phpq 用户并增加到 test 工作组 # 注::-g 所属组 -d 家目录 -s 所用的 SHELL# 给已有的用户增加工作组 usermod -G groupname username gpasswd -a user group# 临时关闭: 在/etc/shadow 文件中属于该用户的行的第二个字段 (密码) 前面加上*就可以了. 想恢复该用户, 去掉*即可. # 或者使用如下命令关闭用户账号: passwd peter –l# 重新释放: passwd peter –u# 永久性删除用户账号 userdel peter groupdel peter usermod –G peter peter# (强制删除该用户的主目录和主目录下的所有文件和子目录)# 从组中删除用户# 编辑/etc/group 找到 GROUP1 那一行, 删除 A 或者用命令 gpasswd -d A GROUP# 显示用户信息 id user cat /etc/passwd# 查看用户和用户组的方法 /etc/passwd# 用户列表文件 /etc/group# 用户组列表文件 cut -d : -f 1 /etc/passwd# 查看系统中有哪些用户 cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1# 查看可以登录系统的用户# 查看用户操作:w 命令 (需要 root 权限) w [username]# 查看某一用户 who# 查看登录用户 last# 查看用户登录历史记录

原文地址: Linux 添加用户和组
欢迎访问我的博客: http://blog.duhbb.com/

    推荐阅读