1. 用户账号和组账号概述
1.1用户账号(uid)
linux中每个用户是通过user id(uid)来唯一标识的。
uid的范围:
centos6
普通用户500-60000
系统用户 1-499
centos7
普通用户 1000-60000
系统用户 1-999
系统用户的类型:
1、普通用户(权限受限的用户)
2、超级管理员
3、程序用户
1.2组账号
一个用户一定存在一个基本组
1.基本组: 一个用户一定要有一个基本组 ,且只有一个
2.附加组: 一个用户可以没有附加组,一个用户可以有多个附加组
1.3对用户信息及密码的存放
/etc/passwd | 用户信息的存放 |
/etc/shadow | 存放用户密码信息 |
/etc/passwd
/etc/shadow
2.对用户及其用户组的改变操作
2.1添加用户
useradd [选项] 用户名
-s | 默认shell类型 /bin/bash /sbin/nologin |
-u | 指定uid |
-M | 不建家目录 |
-d | 指定家目录 |
-e | 用户失效时间 |
-g | 指定基本组 |
-G | 指定附加组 |
-r | 随机生成 系统用户 |
useradd www -u 2000 -M -s /sbin/nologin
新建一个用户 www 不建立家目录 不允许登录 且指定uid位2000
2.2密码管理
passwd [选项] 用户名(对刚创建的用户则是设置密码,对已经存在密码的用户则是修改密码)
选项:
-d | 清空指定用户的密码,仅使用用户名即可登录系统 |
-l | 锁定用户账户 |
-S | 查看用户账户的状态(是否被锁定) |
-u | 解锁用户账户 |
2.3修改用户账号的属性
usermod [选项] 用户名
-l | 修改用户名 |
-L | 锁定用户 |
-U | 解锁用户 |
-u | 修改用户的uid号 |
-d | 修改用户的宿主目录位置 |
-e | 修改用户的账户失效时间 |
-g | 修改用户的基本组名 |
-G | 修改用户的附加组名 |
-s | 指定用户的登录shell |
2.4删除用户
userdel [选项] 用户
2.5添加组
groupadd [-g gid] 组账号名
2.6组内管理
gpasswd——添加、设置、删除组成员
gpasswd 用户 组
-a | 将用户加入组 |
-d | 将用户删除出组 |
-M | 批量加减 |
3.权限
3.1认识权限
权限字符 | r | w | x | - |
权限种类 | 读 | 写 | 执行 | 没有任何权限 |
八进制代表数 | 4 | 2 | 1 | 0 |
二进制代表数 | 100 | 10 | 1 | 0 |
r(Read):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限
w(Write):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(execute):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
-:表示没有任何操作权限
注意:
1、文件夹的最小权限是 x。 一定要带上否则无法进行任何操作,超级管理员不受影响
2、删除一个文件和所在文件夹权限有关和自身没关系。注意超级管理员
3.2例题
执行cp /etc/issue /data/dir/所需要的最小权限
cp:执行命令,所以x
etc:到目录下,执行
issue:可以读写,r
data:执行命令到此目录下,x
dir:可写可执行,wx
4.分配权限
4.1chomd修改文件权限
-R递归 修改权限
4.2chown修改属主 属组
chown 属主.属组 文件名
4.3umask文件落地的权限
umask 的值可以用来保留在创建文件权限
实现方式:
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
5.三种特殊权限
1、suid
2、gudi
3、sticky(面试题)
sticky位 粘贴位 文件夹有效 文件无效 只能对文件夹使用
面试题:/tmp
t权限中多了t是什么意思
/tmp文件夹的作用(所有用户的临时文件都会在这个文件夹里面,权限还是777)
加了t就是除了管理员和所属主其他人不能删除文件