Linux文件和用户权限
一、用户/用户管理
用户身份and能力root
满足多个用户同时工作的需求
超级用户:默认是root,但不绝对(当uid == gid ==0时,为root),只有一个
系统用户/虚拟用户:标志/sbin/nologin,无法登陆系统但是可以具备密码,避免因为某个进程被攻击
普通用户:只能用超级用户进行创建/授权的,在运维中常用
对用户的增删改查:
useradd命令:用于创建用户
实例:
usermod命令:用于修改用户的属性
userdel命令:用于删除用户
groupadd命令:用于创建用户组
二、文件权限
Linux系统下全是文件(目录),从/根目录开始,/home目录
创建用户时会自动在当前用户的home目录下建立同名的家目录(不管是系统用户还是普通用户),一般默认为系统用户不去创建家目录,
useradd -d 指定家目录(用户可以多人共用一个家目录,但自己只能有一个)。
windows下 .txt .doc .ppt不同类型的文件
Linux中一切都是文件,.txt .doc .ppt是同一类文件
目录文件 -- 文件夹 d
链接文件 -- 快捷方式 l
块设备文件 -- 光盘/硬盘/U盘 b
字符设备文件 -- 虚拟终端 c
Linux的用户相关信息都是存储在/etc/passwd中。
Linux的用户密码都存储在/etc/shadow中。
Linux的所有群组名都存储在/etc/group中。
切记,不能删除这三个文件。
- 10个字符确定不同用户能对文件干什么
- 第一个字符代表文件(-)、目录(d),链接(l)
- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)
- 第一组rwx:文件所有者的权限是读、写和执行
- 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行
- 第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行
r表示可读,w表示可写,x表示可执行,而-表示无权限
r可读权限read: 4
对文件: 可以浏览内容
对目录: 可以浏览目录,但是无法进入
w可写权限write: 2
对文件: 可以修改内容
对目录: 对文件移动/重命名/删除/增加
x可写权限exec: 1
对文件: 具备x权限的,执行脚本
对目录: 可以进入目录
文件可以删除与否 不是看自己是否具备权限 而是看上层目录是否具备w权限
权限值的范围:000<= 权限 <=777
默认目录权限 755 rwxr-xr-x 基于777减去umask
默认文件权限 644 rw-r--r-- 基于666减去umask umask默认等于022(掩码)
通过chmod命令
两种授权方式
数字授权 chmod -R 777 /test # -R参数表示递归,里面的所有的内容都会权限重置
生产环境 一般都是600
表达式授权
a=all 全部
u=user 前三位属主
g=group 中间三位数组
o=other 后三位
+ 赋予权限
-撤销权限
=覆盖权限
测试: /test 777权限(rwxrwxrwx)
通过表达式方法 ---> 644权限
chmod u-x,g=r,o=r /test
chgrp:改变文件所属群组
eg. chgrp (-R) users filename -R是表示递归持续更改
chown:改变文件拥有者
eg. chown (-R) user filename -R是表示递归持续更改
#特殊权限,后面详细介绍
#隐藏权限,后面详细介绍