系统用户管理(2)

关于系统用户管理部分,我们接着上次的继续,这次我们要学习一些新的命令。前面我们进行了用户的建立,删除等操作。那么我们怎么进行用户信息的更改呢?
1. usermod [选项] 用户名 ##更改用户信息

选项:
-l: usermod -l  新用户名 原用户名		    ##更改用户名称
-u: usermod -u 2222 用户名				##更改用户uid为2222
-g: usermod -g 2222 用户名				##更改用户初始组id为2222
-c: usermod -c "hello" 用户名			##更改用户的说明文字
-d: usermod -d 目录	用户名				##更改用户家目录的指向
-md:usermod -md 目录 用户名	  			##更改家目录的名称
-s: usermod -s 用户名					##更改用户shell
-L: usermod -L 用户名					##冻结用户
-U:usermod  -U 用户名  		            ##解锁用户

首先,我们需要打开监控,以便于观察后面的实验。
在这里插入图片描述
然后,建立一个新用户,就可以进行后面的操作了。
在这里插入图片描述
把名为yangmi 的用户改为huang.
在这里插入图片描述
之后,分别更改huang的uid和gid。
在这里插入图片描述
这里要注意的是,更改的gid必须是系统里面存在的,否则更改就会不成功。
用-c选项可以更改用户说明
在这里插入图片描述
更改之后是这个样子的:
在这里插入图片描述
用户说明‘hello’在上面显示了。
下面我们来谈一下如何改变家目录的指向,以及如何改变家目录的名称
在这里插入图片描述
这样,我们就能使huang的家目录指向/tmp,也就是说,他现在的家目录就是/tmp了。
那么怎么改变家目录的名称呢?
在这里插入图片描述
这样,我们就把家目录名称改为了huang。
在进行用户管理中,如果我们不想让一个用户登陆,那么,我们可以将这个用户锁定起来。
在这里插入图片描述
这样这个用户就不能登陆了。
在这里插入图片描述
我们可以看到,在第二列的地方有两个!!表示这个用户是不能登陆的
我们再把这个用户解锁。
在这里插入图片描述
在这里插入图片描述
感叹号是不是少了一个?那为什么还有一个呢?那是因为我们还没有给该用户一个初始密码,给了他一个密码之后就可以正常登陆了,那么,如何给用户设置密码呢,这就要用到passwd命令了。
2.passwd 用户名 ##更改密码
在这里插入图片描述
给huang 设定一个密码。
需要注意的是,在设置密码的时候是没有显示的,所以直接输入就可以了。root修改密码时不受任何限制,可以随便设置,比如我向设成123456也是可以的,但普通用户设置密码时必须知道当前用户原始密码,密码不能和帐号名相似,密码不能时纯数字或字母,密码不能是有序的字母和数字的组合。有任何一项设置都不能成功。在这里插入图片描述
我这里输入的新密码和旧密码太像,报错了。
说到密码,我们还要注意一下/etc/shadow这个配置文件,这个文件存放的信息都代表这什么呢?

vim /etc/shadow

在这里插入图片描述
我们可以看到,这个文件有很多行,每行的内容还用逗号分割开了。现在我们来看一下每一部分都表示什么意思吧。
它的格式是这样的:

用户名:密码:用户密码最后一次更改的时间:密码最短有效期:密码最长有效期:密码过期警告天数:非活跃天数:帐号到期日:用户自定义

看这个图我们就明白了:
在这里插入图片描述
首先,root表示的就是用户名;第二部分那一长串的东西集就是密码,不过是经过加密后的;第三部分16442表示用户最后一次更改密码的时间,不过这个时间是从1970年1月1日算起的。也就是用户root上一次更改密码的时间是1970年1月1日后的16442天;第四部分0是密码最短有效期,如果这个数字是1则表示在一天之内不能重新修改密码,这里是0则表示随时可以修改;第五部分表示密码最长有效期,用户必须在此有效期内更新密码,如果超时将会被冻结;第六部分表密码过期警告天数,这里是7,密码在过期前7天系统会给用户发送一个警告信息;第七部分表示非活跃天数,此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数如果设置为1,则表示密码过期一天后仍可正常使用,但过了这一天,就不能使用了。第八部分表示帐号到期日,也就是帐号到了这一天就到期了,不能用了,当然此位默认为空,也就是不会过期。第九部分是用户自定义,这个暂时还没有用。
了解了这个文件的作用,我们来看看怎么用命令去修改里面的内容吧

passwd -e 用户名		##改变用户最后一次更改密码时间为0,用户登录时会被强制改变密码

也可以用

chage -d 0 用户名

在这里插入图片描述
我们可以看到
在这里插入图片描述
第三部分表为0了。

passwd -n 1 用户名	 ##用户在1天之内不能修改密码

也可以用

chage -m 1 long	

在这里插入图片描述
可以看到:
在这里插入图片描述
第四部分变为1了。
除此之外,还可以用命令修改其他部分
当然,因为修改的是root用户,所以改完之后要记得修改回来。

修改用户密码最长有效期:
passwd -x 30 long				##用户long必须在30天之内修改密码
chage -M 30 long
修改密码警告期限:
passwd -w 6  long				##密码过期前6天有警告输出
chage -W 6 long
修改用户非活跃天数
passwd -i 1 long				##密码过期后仍可登录系统的天数,1代表1天
chage -I 1 long
修改用户到期日:
chage -E 2019-01-01 long 		##long用户在2019-01-01日会被冻结 

用户授权

在linux里,权力的划分是很明确的,什么人可以干什么,什么人不可以干什么,都分的一清二楚,合理的利用权限可以让我们更加方便的管理系统。
1.权力下放文件/etc/sudoers。
我们来看看这个文件。
在这里插入图片描述
在这里插入图片描述我们看到这个文件的100行左右,文件大部分都是注释,我们要注意的只有这部分:
在这里插入图片描述
这是什么意思呢,我们看

用户	主机名称=(得到用户的身份)	命令

更改这部分的内容我们就可以实现对权限的下放。那么问题来了,我们在什么情况下要对权力进行下放呢?
以useradd命令为例,我们知道,普通用户是没有权限执行这一条命令的,那么我们怎么做到,不切换用户的身份,也能执行这条命令呢?很简单,他缺什么,我们就给什么。
在这里插入图片描述
可以看到,我现在是一个普通用户,没有权限执行这个命令,现在,我们对/etc/sudoers文件进行修改。这里我们不用vim进行修改,因为它不提供语法检测
我们使用使用visudo编辑此文件,visudo在使用时和vim差不多,这里就不介绍了。
在这里插入图片描述
在这里添加

student	localhost=(root)	/usr/sbin/useradd

之后保存推出就完成了。
在这里,student用户在localhost主机下,以root的身份执行/usr/bin/useradd命令,需要注意的是,在执行命令的时候要在前面加上sudo才能正确执行命令。

在这里插入图片描述输入密码后,我们看到
在这里插入图片描述
用户已经建立成功了。
要是要免密输入的话就在修改文件时输入:

student	localhost=(root)	 NOPASSWD: /usr/sbin/useradd

在使用命名时就不用输入密码了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值