浅谈用户、组之管理指令

今天呢,我们来聊一聊关于用户和组的管理指令。

一、用户和组的概念

对于我们的计算机而言,它是不记录名字的,只记录数字,所以,就给每一个用户排了编号,这个编号我们就称之为用户ID。大家都知道,linux系统下,拥有最高权限的用户就是root(超级管理员)了,所以root(超级管理员)的ID就是0,排在了最前面,以彰显它的地位。在我们的linux centos7系统中,系统用户(进程)的ID号是1-999,普通用户的ID号是从1000开始的,在我们创建用户时,系统会自动分配一个ID号,当然我们也可以自己指定,至于如何指定,在下文中小编会给大家介绍的。

关于组,组就是把若干个用户放在其中,这样一来,就更加方便我们对成员的管理,比如:把公司里一个部门的成员放在一个组里,直接把权限设置到组,这样,这个部门的人都可以访问到他们需要访问的文件,会比一个一个设置快捷方便很多。

二、用户和组的主要配置文件

用户和组的配置文件有很多,主要的文件就是下面的这四个:

1/etc/passwd该文件中存储的是用户及其属性信息,包括名称、UID、主组ID等等。

2/etc/group顾名思义,这个文件中存储的就是组及其属性信息啦。

3/etc/shadow该文件存储的是用户密码及其相关属性。

4/etc/gshadow该文件存储的是组密码及其相关属性。

每个文件的具体内容和用法稍后我们也会提到。

三、四大主要文件的格式

1/etc/passwd

linux系统中,想要了解一个文件最简单的方法就是用man啦。

上图就是man出来的结果,红色方块圈出来的就是格式信息啦~我们用cat查看一下/etc/passwd的具体信息,下图就是root具体信息的截图。

图中可以看出,每一部分内容是由":"分隔开来的,每一部分的意思就是上一张图中用红色方块框起来的部分,分别如下:

登录用户名:密码:UIDGID:用户全名或注解:用户家目录:默认的登陆shell

2/etc/group

同理,我们用man查看一下:

同样的,我们来看一下具体的显示:

分别如下:组名:密码:GID号:组成员列表

在这里,需要说明的是:组成员列表显示的是将该组作为辅助组的成员列表。(很重要很重要很重要!!!)那么问题来了,如果我们将组成员列表中的某用户主组更改为这个组,还会显示吗?我们就用gentoo这个用户来试一下:

            

从图中,我们可以看出,当成员先把改组当做辅助组,再转成主要组时,显示内容是不变的~

3/etc/shadow

我们来man一下该指令:

接下来我们看一下root用户的具体信息:

每一块的具体说明,在上一张图中已经标示过了。

在这里,我们要介绍一个命令——chage

Chage -l username显示帐户的密码信息

    -d 指定密码的上次修改时间(yyyy-mm-dd)

    -d 0 则强制用户下次登录时必须修改密码

    -E 指定账户的过期时间

    -I 密码过期之后多少天帐户过期

    -m 设置最小存活时间

    -M 设置最大存活时间

    -W 设置密码过期前的提醒时间

chage username交互式修改用户的密码策略

可能有人会问,什么是交互式修改用户的密码呢?下面我们就来演示一下:

当我们输入chage weichen指令后,就会依次弹出图中信息,我们挨个填一下就好。这样是不是很方便呢~修改过后我们来查询一下weichen的信息:

图中我们可以看出,已经按照我们设定的修改过啦~

4/etc/gshadow

Gshadow一共显示四部分信息,同样以root为例:

分别为:组名:组密码位:管理员:组成员

一样的,该处显示的组成员也是将该组作为辅助组的成员列表。

上图中我们可以看出,组密码位和管理员都是空的,那么如何设置呢?

设置组密码: gpasswd groupname

关于管理员,我们要说的命令会详细一些:

任命管理员 gpasswd -A xiaoqiao,luren admin

撤消所有管理员 gpasswd -A "" admin

gpasswd -a libai admin往组中增加用户

gpasswd -d libai admin将用户从组中删除

gpasswd -r admin删除组密码

gpasswd -R admin限制非辅助组用户可以通过newgrp admin获取主组权限。当前密码被删除替换为!

gpasswd -M redhat,libai admin设置辅助组的成员列表。

重点来了!管理员只能由root来任命或者撤销,可以同时有多名一起,中间用","隔开。身为管理员,当然有不一样的权力啦:管理员可以修改组密码,同时也可以将用户从该组(辅助组)当中添加或者删除!

四、用户和组的管理命令

千呼万唤使出来,我们终于说到了最重要的部分。

1、用户管理命令:

1)用户创建之useradd

useradd

-u uid username 创建用户时指定uid(如不指定则Centos:500-60000, Centos7: 1000-60000)

-o -u uid username 创建用户时指定uid(可以与已存在用户的uid相同)

-g groupname username 创建用户时指定主组为某个已存在的组。(将不会再创建与用户同名的组)

-c ... username 创建用户时指定描述信息。相当于chfn ... username

-d path username 指定用户的家目录(确保指定的家目录所在的上级目录要存在,且家目录本身不能存在)

-s /sbin/nologin username指定用户的默认shell

-G group1[,group2] username指定用户的辅助组

-N username 设置用户的主要组为默认组(users,uid=100)

-r username 创建系统用户

2)用户属性修改之usermod

usermod

-u newuid username         修改用户的UID

-o -u newuid username 修改用户的uid(可以与已存在用户的uid相同)                        

-aG 加组名,可以追加辅助组而不用覆盖之前的组

-G "" username usermod -G primarygroup username 清空用户所有的辅助组

-g groupname username 修改用户的主组

-s /sbin/nologin username修改用户的默认shell

-c ... username 修改用户时指定描述信息。相当于chfn ... username

-d /.../path username 修改用户的家目录(不会创建,只修改/etc/passwd当中的家目录信息)

-m -d /.../path username修改用户的家目录信息,并将家目录移动到目的目录并改名。

-l newname oldname 修改用户名

-L 给用户/etc/shadow中的密码位加!使用户被锁定

-U !拿掉。

-e yyyy-mm-dd 设置一个帐户过期时间

-f days 指定密码过期之后多少天帐户过期

3)删除用户之userdel

Userdel的用法很简单,后面加上用户名即可。需要说明的一点是,如果你想在删除用户的时候,连同他的家目录和邮件等信息一同删除,则需要加上-r,如图所示:

这样过就可以把用户李白的所有信息都删除了。

4)查看用户信息之ID

id username 查看每一用户的信息

id –u 查看当前登录用户的UID

id –un 查看当前登录用户的用户名

id –g 查看当前登录用户的GID

id –gn 查看当前登录用户的主组名字

5)切换用户之su

su (switch user)

su username 非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

su - username 登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换

-c 'command' 以用户的身份执行命令而不登录

2、组管理命令

1)创建组之groupadd

groupadd -g gid groupname 创建指定gid的组

 -r groupname 创建系统组

2)修改组属性之groupmod

groupmod

-n newgrpname oldgrpname 修改组名

-g newgid groupname 修改gid

3)删除组之groupdel

groupdel groupname 删除组

4)更改及查看组成员之groupmems

groupmems -g admin -a libai (仅能一次加一个用户到组中)

groupmems -g admin -d libai 将指定成员从组中删除

groupmems -g admin -l 列出指定组的成员列表(辅助组)

groupmems -g admin -p 清空指定组的所有成员(辅助组)。

  

  

  

  

以上,就是我对用户和组管理的小结,如有不足之处,还请大家多多指教诺~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值