/************************** 用户信息管理 *************************/
三个用户信息文件
**/etc/passwd** : 用户的信息库
name:passwd:UID:GID:GECOS:directory:shell
name : 用户名
passwd : 加密的密码或占位符
UID : user id
GID : 用户主组ID
GECOS : 注释信息
directory : 用户的家目录
shell : 用户登录时默认启动的shell程序的位置
**/etc/shadow** : 用户密码
用户名:加密的密码:密码最近修改时间:最短使用期限:最长使用期限:警告期段:过期期段:保留字段
**/etc/group** : 组的信息库
group_name:password:GID:user_list
user_list:以此组为附加组的用户列表
基础概念
用户类别:
管理员 | 普通用户
管理员 : root
普通用户 : 系统用户 | 登录用户
组类别:
管理员组 | 普通用户组
基本组 | 附加组
私有组 | 公共组
用户管理
*创建用户:*
**useradd** [opt] 登录名
-p PASSWORD : 指定用户密码
-u UID : 指定UID
-g GROUP : 指定基本组(此组得事先存在)
-G GROUP1[,GROUP2...] : 指定附加组
-c : 指定注释信息
-d : 指定家目录(将复制/etc/skel)
-s : 指定shell(/etc/shells下有shell列表)
-r : 创建系统用户
-D [opt] : 显示|修改 创建用户的默认配置 修改的结果保存于/etc/default/useradd中
/etc/login.defs
创建用户时的诸多默认设定配置文件
*修改用户信息:*
**usermod** [opt] 登录名
-p PASSWORD : 修改用户密码
-u UID : 修改UID
-g GROUP : 修改基本组
-G GROUP1[,GROUP2...] : 修改附加组(覆盖修改)
-a : 须与-G一同使用,表示追加而非覆盖
-c : 修改注释信息
-d : 修改家目录,原有文件不跟随移动
-m : 与-d一同使用,表示移动原家目录文件
-l : 修改用户名
-s : 修改默认shell
-L : 锁定用户密码 (将在原密码前加'!'表示禁用)
-U : 解锁用户密码 (将删除'!'符号)
*删除用户:*
**userdel** [opt] 登录名
-r : 删除用户并删除其家目录
用户组管理
*添加组:*
**groupadd** [opt] group_name
-p PASSWORD : 指定组密码
-g GID : 指定GID;默认为上一组的GID+1
-r : 创建系统组
*修改组属性:*
**groupmod** [opt] group_name
-p PASSWORD : 修改组密码
-g GID : 修改GID
-n new_name : 修改组名
*删除组:*
**groupdel** [opt] group_name
passwd 命令
1) passwd : 修改用户自己的密码
2) passwd USERNAME : 修改指定用户密码,默认root有此权限
-l,-u : 锁定和解锁用户
-d : 清除用户密码
-e DATE : 修改过期期限 日期
-i DAYS : 修改非活动期限 天数
-n DAYS : 修改最短使用期限 天数
-x DAYS : 修改最常使用期限 天数
-w DAYS : 修改警告期限 天数
--stdin : 从标准输入获取输入
例: echo "PASSWORD" | passwd --stdin user_name
gpasswd 命令
组密码文件: /etc/gshadow
gpasswd [opt] group
-a USERNAME : 向组中添加用户
-d USERNAME : 从组中移除用户
/************************** 文件权限管理 *************************/
文件类型
-,f : 常规文件
d : directory : 目录文件
b : block device : 块设备文件 支持以块为单位的*随机访问*
c : charactor device : 字符设备文件 支持以字符为单位的*线性访问*
l : symbolic link : 符号连接文件
p : pipe : 命名管道
s : socket : 套接字文件
文件权限
查询方法:ls -l /some/file/name
形式:rwx rwx rwx
作用:
左三位 : user 权限 : 属主权限
中三位 : group 权限 : 属组权限
右三位 : other 权限 : 其他用户权限
8进制表示:
--- : 000 : 0
--x : 001 : 1
-w- : 010 : 2
-wx : 011 : 3
r-- : 100 : 4
r-x : 101 : 5
rw- : 110 : 6
rwx : 111 : 7
用户类别简写:
u : user : 属主
g : group : 属组
o : other : 其他
a : all : 所有用户
chmod命令
功能:修改文件权限
用法:
1) chmod [opt]...MODE[,MODE...]...FILE...
2) chmod [opt]...OCTAL-MODE FILE...
3) chmod [opt]...--reference=RFILE FILE...
1) chmod [opt]...MODE[,MODE...]...FILE...
1. 赋权 : 操作一类用户的所有权限
u=m , g=m , o=m , a=m
(m为rwx样式的权限表示 m为空表示无权)
2. 授权 : 操作一类用户的一个权限位
u+m,u-m
g+m,g-m
o+m,o-m
a+m,a=m
(m为r/w/x样式的权限表示 m为空表示无权)
2) chmod [opt]...OCTAL-MODE FILE...
例:chmod 660 /etc/some/file
3) chmod [opt]...--reference=RFILE FILE...
例:chmod --reference=/ref_file /dis_file
选项:
-R : --recursive : 递归修改
从属关系修改命令
**chown命令**
1) chown [opt]... [owner][:[group]] file...
无owner选项则只修改属组
2) chown [opt]... --reference=RFILE file...
选项:
-R : 递归修改
**chgrp命令**
chown :group 可实现该功能,故不赘述之 详见 # man chgrp