Linux用户管理

Posted Super_J

tags:

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

1.  /etc/passwd     存放用户信息的文件,每一行代表一个用户信息。

/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式: 

name:password:uid:gid:comment:home:shell 
name 用户登录名 
password 用户口令。此域中的口令是加密的,常用x表示。当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较。如果此域为空,表明该用户登录时不需要口令。 
uid 指定用户的 UID。用户登录进系统后,系统通过该值,而不是用户名来识别用户。 
gid GID。如果系统要对相同的一群人赋予相同的权利,则使用该值。 
comment 用来保存用户的真实姓名和个人细节,或者全名。 
home 指定用户的主目录的绝对路径。 
shell 如果用户登录成功,则要执行的命令的绝对路径放在这一区域中。它可以是任何命令。
如果/etc/passwd文件存放的是用户的信息,由6个分号组成的7个信息,解释如下 
(1):用户名。 
(2):密码(已经加密) 
(3):UID(用户标识),操作系统自己用的 
(4):GID组标识。 
(5):用户全名或本地帐号 
(6):开始目录 
(7):登录使用的Shell,就是对登录命令进行解析的工具。
例如:

 

2./etc/shadow       存放用户密码的信息

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

 

1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号

2)“口令”字段存放的是加密后的用户口令字,如果为空,则对应用户没有口令,登录时不需要口令;

星号代表帐号被锁定;

双叹号表示这个密码已经过期了。

$6$开头的,表明是用SHA-512加密的, $1$ 表明是用MD5加密的 $2$ 是用Blowfish加密的 $5$ 是用 SHA-256加密的。

3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。

4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。

5)“最大时间间隔”指的是口令保持有效的最大天数。

6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。

7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。

8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。

 

3. passwd username    修改username的密码

    gpasswd groupname    修改组的密码

用户自己输入passwd则可以直接修改自己的密码 ,查看 passwd 

 

 有特殊权限s,setuid的意思。

普通用户之所以可以修改密码,在于有此权限,会变成命令所有者的权限,就是修改的时候变成了root,才能将密码写入shadow,不然查看shadow文件普通用户是没有w权限的。

授予s权限:chmod u+s  或者chmod 4755  ,其中4表示s权限给所有者,如果是2755就给所有组,会变成root,

1755就是其它用户,但是是用t表示, 比如chmod o+t    ,就是授予黏着位的意思。如果一个目录具有777的权限,那么a用户就可以删除b用户创建的文件,这显然不合理,利用黏着位就可以避免这种现象。

 

4./etc/group

组名:组密码位:GID:组内用户列表

group -g GID 组名    指定GID添加组

useradd -u UID username -g groupname -G groupname   主组,副组 

将用户添加进一个组的两个方法:

gpasswd -a groupname username     Linux下

usermod -G groupname username   Unix下

详见http://blog.csdn.net/u011537073/article/details/51987121

 

5.多个用户同时对一个目录想要具有读写权限,那么只要将这几个用户放在一个组里面,把目录所属组改成这个组(用chgrp 组名 目录),然后修改组的权限即可 

 

pwck    检测/etc/passwd文件是否有错误

vipw     可以锁定/etc/passwd文件进行编辑,防止多个用户同时修改

id         可以查看用户id和组信息

finger   查看用户详细信息

su         切换用户

passwd -S    查看用户密码状态

who 、w       查看当前登录用户信息

 

6.   密码锁定只是在shadow 里面加了两个感叹号,这样加密格式就被破坏了。

7.

 执行pwunconv指令可以关闭用户投影密码,它会把密码从shadow文件内,重回存到passwd文件里

 

8.批量添加用户

(1)创建用户信息文件比如user.info,此时先不用指定密码,然后newusers < user.info

(2) 执行pwunconv,将shadow的投影密码放回passwd里面。

          创建用户密码文件如passwd.info,  里面只写username:passwd,然后执行chpasswd < passwd.info就导入了passwd文件里面,

          再执行pwconv就可以转换到shadow文件里头

 

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

Linux用户权限管理命令

Linux系列教程(十五)——Linux用户和用户组管理之用户管理命令

Linux系列教程(十五)——Linux用户和用户组管理之用户管理命令

Linux学习之用户管理命令与用户组管理命令(十五)

linux用户及权限详解-用户组-用户管理-权限管理

Linux用户权限管理