Linux 用户和组

来源:互联网 发布:青岛雨人软件 编辑:程序博客网 时间:2024/06/06 17:23

Linux中与用户权限有关的文件有四个

passwd  里面是用户账户的基本状态

shadow 里面是用户的密码的MD5加密结果

group     里面是组的基本状态

gshadow 里面是组密码的MD5加密结果

此外如果当前Linux支持sudo 比如 ubuntu 还有一个和sudo有关的文件 sudoers

以上所有文件都在/etc/目录下

passwd文件中每个用户占一行,每行分为七列(两个冒号之间,叫做一列)如下图所示


第一列表示用户名 如root 

第二列有两个选择,如果是x表示登录需要密码,如果是空表示登录不需要密码 

第三列表示用户ID

第四列表示组ID

第五列表示用户说明,需要注意的是,ubuntu里面的图形界面登录时显示的名称是这里的用户说明这个名称,ubuntu将这个用户分为几段,用逗号隔开


如上图test 分别是电话手机等信息。显示的时候只显示第一个逗号前面的,也就是test1这个地方重名无所谓

第六列表示的用户家目录 也就是$HOME变量的值,一般都是在/home下建立用户名文件夹。

第七列表示默认的shell终端,shell也是分类型的,有bash shell ksh 等 一般都是默认bash

如果把第二列直接变为空(注意,是将x删去,而不需要留出一个空格)那么图形界面登陆的时候不需要输入密码,直接点击login 但是在终端下切换用户仍需要输入密码

奇怪的是无论输入什么密码都不正确,具体原因我也不知道



如上图所示,在终端下经常看到以上形式,实际上就是跟passwd文件夹中对应的,test表示用户名,也就是第一列 @符号分割后面跟着ubuntu 也就是登录名,对应第五列,冒号分割后面跟着的表示当前目录,~是一个特殊符号表示家目录,可以试试切换另一个目录,则这里发生相应变化。最后一个符号$是一个标志位,可以是$表示普通用户,也可以是#表示超级用户。当然了,这些都是说的默认设置,实际上这个提示符也是可以改的,他对应$PS1变量。

这里也可以看出Linux定义他的使用者都是懂行的。


shadow文件则是密码MD5加密之后的结果,想直接得到密码的原始字符串是不可能的,分为两列

第一列是用户名

第二列如果以$1$打头表示已经设置密码,以!!打头表示未设置密码,未设置密码并不是说可以不用输入密码登陆,而是会所密码是空


另外的group gshadow文件,由于很少为组设置密码,所以没什么好说的

sudoers文件暂时还不懂是什么。

可以通过命令  who whoami groups id 命令,查看当前用户账号的基本信息


原创粉丝点击