用户和组管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户和组管理相关的知识,希望对你有一定的参考价值。

用户配置文件和密码配置文件

查看前三行/etc/passwd文件(用户配置文件),每创建一个用户都会在这个文件的最末尾增加一行

[[email protected] ~]# head -3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

/etc/passwd用户配置文件的结构

用户名;密码占位符;uid;gid;用户注释信息;用户家目录;用户登陆shell

/etc/shadow用户密码配置文件

[[email protected] ~]# head -3 /etc/shadow
root:$6$UQWG6Mpk7MzOQPvP$MnDpXbJfQwme3NPE0Kt4W/mFvpsYPy1N1oNgGMtOPIXOXjL7oPuXtfy.6dxPrk6OyAf2b/LBPhJiBCCT1eYSJ/::0:99999:7:::
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::

用户名;用户密码;上次更改密码的时间(距离1970年1月1日相隔的天数);要过多少天才可以更改密码(默认为0不受限制);密码多少天后到期;密码到期前的警告天数;密码宽限天数;帐号失效时间;保留字段

注:设置一样的密码,通过加密后,得到的 /etc/shadow中的密码是不一样的


用户组管理

[[email protected] ~]# head -3 /etc/group
root:x:0:
bin:x:1:
daemon:x:2:

/etc/group字段含义

组名;密码;组ID;组成员

/etc/gshadow

[[email protected] ~]# head -3 /etc/gshadow
root:::
bin:::
daemon:::

组名;密码;组管理者;组内用户列表


/etc/passwd-;/etc/shadow-;/etc/group-;/etc/gshadow-;这四个文件是对应的备份文件


useradd命令

-c: 加上备注文字,备注文字保存在passwd的备注栏中
-d: 指定用户登入时的主目录,替换系统默认值/home/用户名
-D: 变更预设值
-e: 指定帐号的失效日期,默认表示永久有效
-f: 指定密码过期后多少天关闭帐号。如果为0则表示帐号立即被停用;如果为-1则帐号一直可用。默认为-1
-g: 指定用户所属的基本组(这个组必须存在)
-G: 指定用户所属的附加组
-m: 自动建立用户的登入目录
-M: 不要自动建立用户的登入目录
-n: 取消建立以用户名称为名的群组
-r: 建立系统帐号
-s: 指定用户登入后使用的shell
-u: 指定用户ID号

userdel命令

-f: 强制删除用户,即使用户当前已登录
-r: 删除用户的同时,删除与用户相关的所有文件

groupadd命令

-g: 指定新建组的ID
-r: 创建系统组
-k: 覆盖配置文件/etc/login.defs
-o: 允许添加组ID号不唯一的组

groupdel命令

groupdel 组名
注:您不能移除现有用户的主组。在移除此组之前,必须先移除此用户
    您需要手动检查所有文件系统,以确保没有遗留的属于此组的文件

usermod命令

-c: 修改用户帐号的备注信息
-d: 修改用户登入时的目录
-e: 修改帐号的失效日期
-f: 修改在密码过期后多少天即关闭帐号
-g: 修改用户所属的基本组
-G: 修改用户的附加组
-l: 修改用户帐号名称
-L: 锁定用户帐号
-s: 修改用户登入后所使用的shell
-u: 修改用户ID
-U: 解除密码锁定

passwd命令

-k: 保留即将过过期的用户在期满后仍能使用 
-d: 删除用户密码
-l: 锁定用户
-u: 解除锁定
-f: 强制操作
-x: 两次密码修正的最大天数
-n: 两次密码修正的最小天数 
-w: 在距多少天提醒用户修改密码
-i: 在密码过期后多少天,用户被禁掉
-S: 查询用户的密码状态
--stdin: 从标准输入中读取密码

注:空密码不能登陆到Linux服务器的。/etc/shadow中的第二个字段带有"*"或"!"或"!!"或"",说明这个密码是有问题的,是不能登入系统的

[[email protected] ~]# echo "xiaoming"|passwd --stdin xiaoming
[[email protected] ~]# echo -e "123\n123"|passwd xiaoming

以上两条命令都可以实现修改用户的密码


mkpasswd命令

[[email protected] ~]# yum install expect -y
[[email protected] ~]# mkpasswd 
[email protected]
[[email protected] ~]# mkpasswd -l 18 -s 3
&w8vx?kbeQjxXnp}u8
-l: 指定长度
-s: 指定特殊符号的个数

su命令

作用: 用于切换用户;su - username; -:彻底切换到用户目录

[[email protected] ~]# su - zhangsan -c "touch zhangsan.txt" #以用户zhangsan的身份创建zhangsan.txt,但没有切换到zhangsan环境下

例: 如果管理员没有给普遍用户lisi创建家目录,切换到lisi,看看有什么情况

[[email protected] ~]# su - lisi
-bash-4.2$
[[email protected] ~]# cp /etc/skel/.bash* /home/lisi/
[[email protected] ~]# chown -R lisi:lisi /home/lisi/
[[email protected] ~]# su - lisi
[[email protected] ~]$


以上是关于用户和组管理的主要内容,如果未能解决你的问题,请参考以下文章

win10系统本地用户和组在哪

win10本地用户和组在哪里

Linux用户和组管理

linux系统用户和组管理

用户和组权限管理笔记

管理用户和组账号;管理目录和文件的属性