这周我们学习Linux用户的管理
我们需要了解普通用户和超级管理员的区别,用户命令的增删改查,普通用户于超级管理员之间的切换,普通用户之间的切换,普通用户的配置文件操作
Linux系统是一个多用户多任务的分时操作系统,每个进程都有一个特定的文件,文件为一个特定的用户拥有。
每一个用户都有自己唯一的id,,用户可以属于不同的用户组,uid为用户id,gid是用户所有组的id
输入su然后输入root密码后进入超级管理员模式。
输入id命令可以查看超级管理员的uid是0
组id也是 0,输入id yukino(用户名)
可以看到现在我们创建用户的uid是1000,组id也是1000,而用户可以属于不同的组,以后用户想要加入不同的组,之后的组id会越来越长。
每个文件都有一个所有者(owner),使用ll命令可以查看文件的所有者。
第三列为文件的所有信息。
接着我们学习查看进程用户名的命令 ps aux
首先我们需要安装软件包
输入命令 yum -y install httpd
之后重启服务 systemctl start httpd
然后我们就可以查看httpd进程的用户名
ps aux | grep httpd
接着我们来学习用户/组相关的文件
在Linux系统中,所有的用户名和密码都存放在/etc/passwd和/etc/shadow这两个文件夹中。在/etc/passwd文件中。一行记录对应一个用户,每行用户又被冒号(:)分隔为7个字段,分别为用户名称、密码占位符、用户uid、主组gid、注释性描述、用户主目录、用户的shell。
在/etc/shadow文件中,每行记录也由冒号分隔为9个字段,依次为用户名称、加密后的密码、最近改动密码时间、密码不可变更时间(99999为没有限制)、密码重新变更时间、密码过期时间、密码过期宽恕时间、用户失效时间、保留。
查看/etc/passwd文件夹和/etc/shadow文件夹均用cat命令。
$id为加密算法,有$1(MD5)、$5(SHA-256)、$6(SHA-512),$id号越大加密程度越高。
之后我们来学习管理用户/组的操作
首先使用useradd命令创建用户jsj01,然后使用grep命令过滤出该用户信息
useradd jsj01
grep "jsj01" /etc/passwd /etc/shadow /etc/group其中/etc/shadow行中显示"!!,表示密码未设置。在/home目录下可查看新创建的用户,系统还会为用户创建一个邮箱。
创建用户user02和user03,并使用"-g"参数指定已存在的附加组。
groupadd hr
groupadd fd
useradd user02 -g hr
useradd user03 -g hr,fd
输入id命令就可以查看user02和user03分别加入了新的组,这里不能直接将jsj01这个用户按照这种方式进行添加组,它只适用于刚开始创建的用户,创建好的用户想要修改组我们后续会学到修改命令。
如果在使用useradd命令时加入了错误的设置数据,或者要对一些信息进行详细的修改,除了直接在/etc/passwd与/etc/shadow文件中修改,也可以使用usermod与gpasswd命令。
用户组的信息保存在etc/group文件中,上面创建的组在该文件的尾部,使用tail命令就可以查看,可以看出gid是从低到高排序的,一般情况下不需要专门设置组的gid,如果需要指定gid,添加参数"-g’或者"-gid"即可。
标签:密码,命令,用户,博客,etc,第五,Linux,shadow,id From: https://www.cnblogs.com/Yukino0/p/17738956.html