linux daily --user
linux用户管理
1./etc/passwd:记录用户信息的文件。
➜ vi /etc/passwd
#帐号名称:密码:用户ID:组ID:描述信息:用户根目录:用户登陆信息(shell)
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
meroc:x:1000:1000:meroc,,,:/home/meroc:/bin/bash
帐号:其实我理解就是用户名,同一个系统中唯一。
密码:系统中有一个/etc/shadow文件用于存放加密后的口令,所以在这里这一项是“x”来表示,如果用户没有设置口令,则该项为空。如果passwd字段中的第一个字符是“*”的话,那么,就表示该账号被查封了,系统不允许持有该账号的用户登录。
用户ID:0为系统管理员(创建一个用户,将用户ID改为0,则它成为系统管理员),0-500为系统保留,500+供普通用户使用。
组ID:详细解释参看/etc/group
描述信息:一些描述
用户根目录:用户登陆后的默认目录
用户登陆信息:用户的SHELL
2./etc/shadow:
➜ sudo vi shadow
账户名称:密码:上次改动密码的日期:密码不可被改动:密码需要重新修改的天数:密码修改警告期:帐号失效期:帐号取消日期:保留字段
root:$6$IJc6MmlT$UOsiFoyTyOVvFEzeWJLUHLKJIrb7WVbtxkG8vY00jTh4unBjsmgvgFXIAiuOp5mxk9oan6pRYTpc2QVA9Pnc71:16082:0:99999:7:::
daemon:*:15455:0:99999:7:::
meroc:$6$bapFxouH$F/BomzLTnJ6iD6.zcJYnSx8NVTk5QNO.idKqThVRlqvYD.ncD7N05uNhzJBz4cfNlkmuQ/k3xG5.UzxoUPqFM/:16078:0:99999:7:::
mysql:!:16081:0:99999:7:::
3./etc/group
➜ sudo vi /etc/group
群组名称:群组密码:群组ID:群组成员
root:x:0:
daemon:x:1:
meroc:x:1000:
sambashare:x:124:meroc
mysql:x:1001:
群组密码:通常不需要设定。
群组成员:分隔符用“,”无空格
4.adduser:为系统添加新的用户
用户的默认设置通过 /etc/login.def 和 /etc/default/useradd 这两个文件的内容创建的,若login.defs和useradd中有相同的选项,以后者为准。
/etc/login.def 部分选项(*号为必选):
*MAIL_DIR /var/mail #邮件存放默认目录
*ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin #root用户的PATH
*ENV_PATH PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games #普通用户的PATH
UMASK 022 #useradd和newuser命令用于创建HOME目录。
PASS_MAX_DAYS 99999 #密码需要改变时间
PASS_MIN_DAYS 0 #密码多久需要变更
PASS_WARN_AGE 7 #密码失效前几天发送警告信息
UID_MIN 1000 #默认帐号起始UID数
UID_MAX 60000 #最大UID限制
/etc/default/useradd部分选项:
SHELL=/bin/sh #默认的shell
HOME=/home #用户默认的根目录
SKEL=/etc/skel #在创建用户时,用户根目录下的内容内容是从这个目录下复制过去的。
命令详解:
useradd [-u uid][-g gid][-d home][-s shell]
-u:指定uid
-g:指定gid
-d:指定已存在目录作为根目录
-s:指定shell
5.passwd:设置用户的密码
➜ passwd meroc
Changing password for meroc.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
*新增用户后,若未为新用户设置密码,新用户将无法登陆。