linux学习笔记-day12-passwd和shadow

passwd和shadow文件都存放于/etc/目录下。如果这两个文件不存在或者出现问题,则linux系统将无法登录。

passwd文件每一行分为7个字段,第一行如下

root:x:0:0:root:/root:/bin/bash

第1个字段为用户名;第2个字段表示密码,早期的UNIX系统将密码存放到这个字段中,后来存放于shadow文件中。第3个字段为UID表示系统用户的唯一标志符,是一个整数,早期这个字段是16位,现在已经支持32位,0表示root用户。第4个字段也是数字,表示用户所在的组标志,gid;第5个字段为注释,没有特别的含义,第6个字段为用户的家目录;第7个字段为用户的shell。linux的shell有sh, csh, ksh, tcsh,bash等。该字段除了具体的shell还有/sbin/nologin表示该用户不允许登录。

shadow文件的每一行分为9个字段

root:!:17769:0:99999:7:::

第1个字段为用户名,对应passwd文件的第1个字段。第2个字段为密码,应该是一段很长的密文,但是不知道为什么ubuntu为一个感叹号。第3个字段是上次更改密码的日期,是一个数字,以1970年1月1日为基数计算出来的。第4个字段要过多少天才可以更改密码,为0表示不受限制。第5个字段为密码到期日期,99999表示无到期时间。如果为7表示密码7天后到期。第6个字段为密码到期前的警告期限,如果设置为7,则表示密码到期前7天将会发出警告。第7个字段表示账号失效期限。第8个字段表示账号的生命周期。第9个字段是保留字段。

/etc/group文件存储组信息,具体如下

root:x:0:

第1个字段表示组名称。第2个字段表示组密码,linux中组基本不设密码,x表示无密码。第3个字段表示GID。第4个字段表示该组下面的用户,用,分隔。

增加组命令

groupadd test

增加test组,gid从1000开始递增。

删除组命令

groupdel test

如果组包含用户则无法删除该组,直到组下面的用户全部删除之后才能删除组。

增加用户的命令使用useradd

后面有5个选项

  • -u 表示自定义uid
  • -g 自定义gid
  • -d 自定义家目录
  • -M 不建立家目录
  • -s 自定义shell
useradd test

上面的命令不加任何选项,则会自动创建用户,并且创建同名的组

删除用户使用userdel命令

linux中使用passwd命令修改密码

passwd test

则修改test用户的密码。如果后面不加用户名,则修改当前用户的密码。并且只有root用户可以修改其他用户的密码,普通用户只能修改当前用户的密码。

你可能感兴趣的:(linux学习笔记-day12-passwd和shadow)