Linux用户和组

1.Linux中用户

用户的信息

信息 备注
用户名 用户的名称
密码 用户的密码
UID 用户的ID号,可以多个。UID可用于控制权限
组群 一个用户可以有1个主要组群,多个附属组群。赋予一个组群权限,组群中的用户自动获取权限
家目录 用户登录后进入的目录,默认/home/用户名。root的家目录是/root。
登录Shell 命令解释器,自己编写的程序也可以成为一个Shell,如果用户的登录Shell是这个程序,则用户只能执行程序中编写的功能.常用/bin/bash,禁止用户登录/sbin/nologin
备注 用户的备注信息
用户信息的文件在/etc/passwd里面。各列含义如下:
用户名:密码:UID:主要组群的GID:备注:家目录:登录Shell
密码原来存放在/etc/passwd文件,后来转在/etc/shadow中,打开文件后以x表示

密码信息

信息 备注
密码 经过加密后存储
上一次修改密码的时间 表示为从1970年1月1号开始到最近一次修改密码的时间
密码有效期最少天数 自上次修改密码后开始计算,至少要这么多天才能再次修改密码
密码有效期最大天数 自上次修改密码后开始计算,过了这么多天后提示用户必须修改信息,为0或者空则不通知
密码修改警告期 从密码有效期最大天数前多少天提示用户修改密码
密码非活动期 过了密码有效期最大天数后仍未修改密码,下次登录强制修改密码,如果过了此时间则账号冻结
账号失效天数 从1970年1月1日起过多少天后账号冻结
密码信息的文件在/etc/shadow里面,需要root权限进入。各列含义如下:
用户名|密码|上一次修改密码的时间|密码有效期最少天数|密码有效期最大天数|密码修改警告期|密码非活动期|账号失效天数

Linux用户分为超级用户root,系统用户,普通用户三类。

组信息

信息 备注
组群名 组群的名称
GID 组群ID号,也允许不唯一,不同组群名可以有一个共同的编号。
用户列表 属于该群组的用户有哪些
组信息在/etc/group文件里面,各列含义如下:
群组名称|原来存储群组密码,现用x表示|GID|用户列表(只有用户设置为附属群组才会出现在这里)

用户或组管理命令

1.添加用户 useradd

useradd后面的选项可多个组合使用

命令 功能
useradd JJ 创建名称为JJ的用户,UID自动设置,主要组群为JJ,家目录为/user/JJ,shell为/bin/bash
useradd -u xxxx JJ 创建名称为JJ的用户,UID为xxxx,其他未设置用默认
useradd -g xxx JJ 创建名称为JJ的用户,主要组群为xxx(可以输入组的ID或名称)
useradd -G xxx,xx JJ 创建名称为JJ的用户,附属组群为xxx,xx
useradd -d a JJ 创建名称为JJ的用户,家目录为a
useradd -s b JJ 创建名称为JJ的用户,shell设置为b
useradd -e 2020-5-30 JJ 创建名称为JJ的用户,用户截止日期为2020-5-30
useradd -c “a” JJ 创建名称为JJ的用户,用户的备注为a

1.如果创建的用户想用别的用户的UID需要在useradd 后面加 -o -u a JJ 意为创建UID为a的用户的别名用户JJ。

2.另外-r表示不创建家目录,-m表示创建家目录,在红帽系统中不加-m也会自动创建。但Ubuntu中并且useradd JJ。不会自动设置shell,且不加-m不会创建家目录,如果用户创建了,没有创建对应家目录,在图形界面登不上去。

2.修改用户 usermod

命令 功能
usermod -u a JJ 将JJ的UID改为a
usermod -g a JJ 将JJ的主要组群改为a(a可为ID或者名称)
usermod -G a JJ 将JJ的附属组群改为a
usermod -G -a b JJ 将JJ的附属组群添加b
usermod -d a 将JJ的家目录设置为a
usermod -s a JJ 将JJ的shell改为a
usermod -l a JJ 将JJ的名称改为a

3.删除用户 userdel

命令 功能
userdel JJ 删除用户JJ,但不删除家目录
userdel -r JJ 删除用户JJ且删除家目录
userdel -r -f JJ 若JJ已登录,能强制删除JJ且删除家目录

4.新建组信息 groupadd

命令 功能
groupadd JJ 新建组JJ,组ID自动分配
groupadd -g a JJ 新建ID为a的组JJ

5.更改组信息 groupmod

命令 功能
groupmod -n a JJ 修改组JJ的名称为a
groupmod -g a JJ 修改组JJ的ID为a

另外想用别的组id,需要groupmod -o

6.删除组信息 groupdel

命令 功能
groupdel JJ 删除组JJ,但要求JJ组里面没有用户。

7.密码信息管理

一个用户刚建立时,要对其设置密码,或者删除其密码。才能登陆上用户。

命令 功能
passwd JJ 设置JJ的密码
passwd -l JJ 将JJ账号锁定,不能登录
passwd -u JJ 解锁用户JJ
passwd -d JJ 删除JJ的密码,JJ可以不用密码就登录
passwd -n a JJ 将JJ的密码最少有效期设为a,n为mindays
passwd -x a JJ 将JJ的密码最大有效期设为a,x为maxdays
passwd -w a JJ 将JJ的密码修改警告期设为a,w为warndays
passwd -i a JJ 将JJ的密码非活动期设为a,i为inactive

上面的useradd,usermod等指令可以在后面加-h查看帮助面板

8.查看信息

命令 功能
id JJ 查看JJ的UID,主要组群和附属组群的GID
finger JJ 查看JJ的家目录,shell,和最近一次登录时间

你可能感兴趣的:(Linux)