Linux用户和组
用户和组的相关文件
文件名 | 作用 |
---|---|
/etc/passwd | 系统中的账号信息 |
etc/shadow | 存放密码及其策略相关信息 |
/etc/group | 存放用户组的信息 |
/etc/gshadow | 存放用户组的密码及其策略相关信息 |
/etc/default/useradd | 创建新用户时默认的配置信息 |
/etc/skel/* | Directory containing default files. |
/etc/login.defs | 用户和组默认的配置信息 |
/etc/shells | 该文件记录着合法的 shell 版本 |
/etc/passwd文件
说明:存放用户相关信息,每一行都代表一个用户,有几行就代表有几个账号在你的系统中,每一行都以冒号作为分隔符有7个字段。
root | x | 0 | 0 | root | /root | /bin/bash |
---|---|---|---|---|---|---|
用户名称 | 密码占位符 | uid | gid | 说明信息 | 用户家目录 | 用户登录shell |
/etc/shadow文件
说明:存放密码及其策略相关信息,以冒号作为分隔符九个字段。`
root | 省略 | 14126 | 0 | 99999 | 7 | 空 | 空 | 空 |
---|---|---|---|---|---|---|---|---|
账户名 | 加密后密码 | 最近密码修改的日期 | 密码不可被更动的天数 | 密码需要重新变更的天数 | 密码需要变更期限前的警告天数 | 密码过期后的账号宽限时间 | 账号失效日期 | 保留 |
/etc/group文件
root | x | 0 | root |
---|---|---|---|
组名 | 群组密码,一般不设定 | GID | 此群组支持的账号名称 |
/etc/default/useradd文件
[root@www ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100 # 预设的群组
HOME=/home # 默认的家目录所在目录
INACTIVE=-1 # 密码失效日 , 在 shadow 第 7 栏
EXPIRE= # 账号失效日 , 在 shadow 第 8 栏
SHELL=/bin/bash # 预设的 shell /sbin/nologin 将无法登陆
SKEL=/etc/skel # 用户家目录的内容数据参考目录
CREATE_MAIL_SPOOL=yes # 是否主动帮助使用者建立邮件信箱 (mailbox)
/etc/skel/目录
[root@www skel]# ll -a /etc/skel
total 40
drwxr-xr-x. 4 root root 4096 Jan 2 01:58 .
drwxr-xr-x. 125 root root 12288 Mar 21 03:09 ..
-rw-r--r--. 1 root root 18 Jul 9 2013 .bash_logout
-rw-r--r--. 1 root root 176 Jul 9 2013 .bash_profile
-rw-r--r--. 1 root root 124 Jul 9 2013 .bashrc
-rw-r--r--. 1 root root 500 May 7 2013 .emacs
drwxr-xr-x. 2 root root 4096 Jul 14 2010 .gnome2
drwxr-xr-x. 4 root root 4096 Jan 2 01:52 .mozilla
/etc/login.defs文件
[root@www ~]# cat /etc/login.defs
MAIL_DIR /var/spool/mail # 用户默认邮件信箱放置目录
PASS_MAX_DAYS 99999 # /etc/shadow 第5栏,密码需要重新变更的天数
PASS_MIN_DAYS 0 # /etc/shadow 第4栏,密码不可被更动的天数
PASS_MIN_LEN 5 # 密码最短的字符长度,已被pam模块取代,失去效用
PASS_WARN_AGE 7 # /etc/shadow 第6栏,过期前会警告天数
UID_MIN 500 # 使用者最小的 UID 不能 <500
UID_MAX 60000 # 使用者最大的 UID 不能 >60000
GID_MIN 500 # 自定义组最小的 UID 不能 <500
GID_MAX 60000 # 自定义组最大的 UID 不能 >60000
CREATE_HOME yes # 默认是否主动建立用户家目录
UMASK 077 # 用户家目录建立的umask
USERGROUPS_ENAB yes # 使用userdel时,是否会删除初始群组
ENCRYPT_METHOD SHA512 # 经过 SHA512 进行加密处理
/etc/shells文件
[root@www skel]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
用户和组的相关命令
用户和组 | |
---|---|
新建组 | groupadd |
新建用户 | useradd |
修改密码 | passwd 密码 >8 位字符、小写 / 大写 / 数字 / 特殊符号之间任选 3 位 |
修改用户属性 | usermod |
修改组属性 | groupmod |
修改密码属性 | chage |
修改 shell | chsh |
删除用户 | userdel |
作用 | 命令 |
------------- | -------- |
删除组 | groupdel |
查看已存在用户的基本信息 | id |
查看当前用户支持的群组信息 | groups |
新建组:groupadd
groupadd [options] group
# 新建组 test 制定 gid 为 888
[root@www ~]# groupadd -g 888 test
新建用户:useradd
useradd [options] LOGIN
[root@www ~]# useradd -u 888 -g 888 -s /sbin/nologin alice
[root@www ~]# id alice
uid=888(alice) gid=888(test) groups=888(test)
[root@www ~]# tail -n 1 /etc/passwd
alice:x:888:888::/home/alice:/sbin/nologin
[root@www ~]# tail -n 1 /etc/shadow
alice:!!:16880:0:99999:7:0:16881:
设置密码:passwd
passwd [-k][-l] [-u [-f]][-d] [-e][-n mindays] [-x maxdays] [-w] warndays] [-i inactivedays] [-S] [--stdin] [username]
# 给alice用户设置密码
[root@www ~]# passwd alice
Changing password for user alice.
New password:
BAD PASSWORD: it is based on a dictionary word
Retype new password:
passwd: all authentication tokens updated successfully.
# 设置密码失效日期为 7 天
[root@www ~]# passwd -i 7 alice
Adjusting aging data for user alice.
passwd: Success
修改组属性:groupmod
groupmod [options] GROUP
[root@www ~]# groupmod -g 999 test
[root@www ~]# grep test /etc/group
test:x:999:
[root@www ~]# groupmod -n test1 test
[root@www ~]# grep test /etc/group
test1:x:999:
修改用户属性:usermod
usermod [options] LOGIN
[root@www ~]# usermod -g test2 -G test3 alice
[root@www ~]# id alice
uid=888(alice) gid=1000(test2) groups=1000(test2),1001(test3)
[root@www ~]# usermod -s /sbin/nologin alice
[root@www ~]# grep alice /etc/passwd
alice:x:888:1000::/home/alice:/sbin/nologin