CentOS用户与用户组操作

一、用户操作

1、查看用户

cut -d : -f 1 /etc/passwd                               # 输出所有用户名
cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1 # 输出可登陆的用户名
cat /ect/passwd                                         # 输出用户信息

  cut和cat是不同的命令。/etc/passwd文件每一行代表一个用户,被冒号使用格式如下:

username:password:UserID:Group ID:comment:home directory:shell

  分别代表用户名、密码、用户ID(整数)、组ID(整数)、用户说明、用户登陆的主目录、用户登陆后执行命令。值得注意的是密码现在不存这个文件了,改成 /etc/shadow 文件。

2、添加用户

useradd -h                           # useradd命令帮助
useradd username                     # 添加一个用户username
useradd username -g groupname                      # 添加一个用户并加入group组中,组不存在会报错
useradd username -g groupname -s /bin/false        # 创建不登陆的用户
useradd username -g groupname -s /sbin/nologin     # 创建不登陆的用户

useradd mysql -g mysql -s /bin/false -r            # 创建系统用户,且不用登陆,系统用户是不会创建用户目录的

  添加用户时的默认参数:

3、设置用户密码

passwd username # 设置用户密码

4、修改用户

usermod -h                                           # usermod命令帮助
usermod username -l username2                        # 修改用户username登陆名为username2
usermod username -l username2 -d /home/username2 -m  # 修改用户名、home目录
usermod username -g groupname                        # 修改用户组

  小技巧:将系统用户改为普通用户

usermod username -s /bin/bash               # 修改Shell

mkdir /home/username                        # 创建用户目录,和/etc/passwd中的保持一致
cp /etc/skel/.bashrc /home/username/        # 环境变量文件,否则登陆时显示 -bash-4.2$
cp /etc/skel/.bash_profile /home/username/  #环境变量文件,否则登陆时显示 -bash-4.2$

5、删除用户

userdel -h            # userdel命令帮助
userdel username      # 删除用户,家目录和邮箱目录会被保留,再次创建该用户时会报错
userdel -r username   # 删除用户,家目录和邮箱目录同步删除

如果忘记使用-r参数,手工删除/home/var/spool/mail对应的目录即可。

rm -rf /home/xxx                    # xxx代表用户名
rm -rf /var/spool/mail/xxx

6、其它

su - username  # 切换登陆用户
last           # 查看用户登陆记录

二、用户组操作

1、查看用户组

cut -d : -f 1 /etc/group # 列出用户组名
cat /etc/group           # 输出用户组文件内存

2、添加用户组

groupadd -h   # groupadd命令帮助
groupadd test # 添加test用户组

3、修改用户组

groupmod -h             # groupmod命令帮助
groupmod test -n mytest # 将test用户组改名为mytest

4、删除用户组

groupdel -h   # groupdel命令帮助
groupdel test # 删除test用户组,组不存在会报错
原文地址:https://www.cnblogs.com/zhi-leaf/p/12691378.html