乐趣区

关于linux:Linux-添加用户和组

原文地址: 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/

退出移动版