用户管理

一、用户和用户组的概念
用户:使用操作系统的人
用户组:具有相同系统权限的一组用户

/etc/group 存储当前系统中所有用户组信息
— Group: x : 123 : abc,def,xyz
— 组名称:组密码占位符:组编号:组中用户名列表

/etc/gshadow 存储当前系统中用户组的密码信息
— Group : * : : abc,def,xyz
— 组名称:组密码:组管理者:组中用户名列表

/etc/passwd 存储当前系统中所有用户的信息
— user : x : 123 : 456 : xxxxxxx : /home/user : /bin/bash
— 用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型

/etc/shadow 存储当前系统中所有用户的密码信息
— user :vf;/Zu8sdf..:::::
— 用户名:密码:::::

二、用户和用户组的基本命令
groupadd 用户组
#添加用户组
例:
— [root@localhost ~]# groupadd sexy

groupmod -n 新用户组名 旧用户组名
#修改用户组名
例:
— [root@localhost ~]# groupmod -n market sexy

groupmod -g 用户组编号 用户组名称
#修改用户组编号
例:
— [root@localhost ~]# groupmod -g 668 market

groupadd -g 用户组编号 用户组名称
#创建新用户,并指定编号
例:
— [root@localhost ~]# groupadd -g 888 boss

groupdel 用户组名称
#删除用户组
例:
— [root@localhost ~]# groupdel market
注:删除用户组前需要先删除或转移当前用户组的用户

useradd -g 用户组名称 用户名
#添加新用户并指定的用户组
例:
— [root@localhost ~]# useradd -g sexy sdf

useradd -d 用户文件夹 用户名
#添加新用户并指定用户文件夹
例:
— [root@localhost ~]# useradd -d /home/xxx imooc

注:添加新用户时,如果没有指定用户组,会对应生成与用户名相同的用户组

usermod -c 用户备注 用户名
#给用户添加注释
例:
— [root@localhost ~]# usermod -c dgdzmx sdf

usermod -l 新用户名 旧用户名
#修改用户名
例:
— [root@localhost ~]# usermod -l cls sdf

usermod -d 用户文件夹 用户名
#给用户指定新用户文件夹
例:
— [root@localhost ~]# usermod -d /home/cls cls

usermod -g 用户组 用户名
#给用户指定用户组
例:
— [root@localhost ~]# usermod -g sexy imooc

userdel 用户名
#删除用户
例:
— [root@localhost ~]# userdel jzmb

userdel -r 用户名
#删除用户同时删除用户文件夹
例:
— [root@localhost ~]# userdel -r jzmb

touch /etc/nologin
#禁止除了root外的所有用户登录,只要在/etc/下建立nologin文件,文件不包含任何内容

三、用户和用户组进阶命令
passwd -l 用户名
#锁定用户
例:
— [root@localhost ~]# passwd -l cls

passwd -u 用户名
#解锁用户名
例:
— [root@localhost ~]# passwd -u cls

passwd -d 用户名
#清除用户密码
例:
— [root@localhost ~]# passwd -d cls

主要组与附属组
用户可以同时属于多个组
— 一个主要组
— 多个附属组
The main and subsidiary group

gpasswd -a 用户 附属组名称
#给用户添加附属组
例:
— [root@localhost ~]# gpasswd -a cls boss

newgrp 用户组
#用户切换用户组
例:
— [root@localhost ~]# newgrp boss

gpasswd -d 用户名 用户组
#把用户从某用户组中移除
例:
— [root@localhost ~]# gpasswd -d cls boss

useradd -g 主用户组 -G 附属用户组1,附属用户组2… 用户名
#新建用户,并指定用户组及附属用户组
例:
— [root@localhost ~]# useradd -g group1 -G group2,group3… test

gpasswd 用户组名称
#设置用户组密码
例:
— [root@localhost ~]# gpasswd imooc

四、其他命令
su 用户名
#切换用户
例:
— [root@localhost ~]# su username
注:如果只输入su不输入用户名,表示切换到root用户

whoami
#我是谁?显示当前登陆用户名

id 用户名
#显示指定用户信息,包括用户编号、用户名、主要组编号及名称,附属组列表
例:
— [root@localhost ~]# id imooc

groups 用户名
#显示指定用户所在的所有组
例:
— [root@localhost ~]# groups imooc

chfn 用户名
#设置用户资料,依次输入用户资料
例:
— [root@localhost ~]# chfn imooc

finger 用户名
#显示用户详细资料
例:
— [root@localhost ~]# finger imooc

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据