原文地址: Linux 增加用户和组
欢送拜访我的博客: http://blog.duhbb.com/
引言
本文记录了 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
命令的选项:
--badnames do not check for bad names
-b, --base-dir BASE_DIR 新账户的主目录的基目录
--btrfs-subvolume-home use 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_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix 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/