个人网站设计论文摘要,无锡网络营销推广软件,wordpress 搬家出错,怎么看一个网站是否被k目录 一、权限概述
1. 什么是权限
2. 为什么要设置权限
3. Linux中的权限类别
4. Linux中文件所有者
4.1. 所有者分类
4.2. 所有者的表示方法
属主权限
属组权限
其他权限
root用户#xff08;超级管理员#xff09;
二、普通权限管理
1. ls查看文件权限
2. 文件…目录 一、权限概述
1. 什么是权限
2. 为什么要设置权限
3. Linux中的权限类别
4. Linux中文件所有者
4.1. 所有者分类
4.2. 所有者的表示方法
属主权限
属组权限
其他权限
root用户超级管理员
二、普通权限管理
1. ls查看文件权限
2. 文件权限详解
3. 设置文件/文件夹权限
字母形式
数字形式
练习题
4. 特别说明
三、属主zhu与属组zu设置
1. 什么是属主与属组
2. 为什么要修改属主与属组
3. chown修改文件的属主
4. chgrp修改文件的属组
5. chown同时修改属主与属组
四、特殊权限
1. 设置位SSetUid
2. 沾滞位T (sticky bit)
五、ACL访问控制
1. 基本命令
2. getfacl命令
3. setfacl命令
六、umask
1. 什么是umask
2. umask值
3. 修改umask值 一、权限概述
1. 什么是权限
在多用户计算机系统的管理中权限是指某个特定的用户具有特定的系统资源使用权利
在Linux 中分别有读、写、执行权限 权限针对文件 权限针对目录 读r 表示可以查看文件内容cat 表示可以(ls)查看目录中存在的文件名称 写w 表示可以更改文件的内容vim 修改保存退出 表示是否可以删除目录中的子文件或者新建子目录(rm/touch/mkdir) 执行x 表示是否可以开启文件当中记录的程序,一般指二进制文件(.sh) 表示是否可以进入目录中(cd)
一般给予目录读权限时也将会给其执行权限属于“套餐”组合
2. 为什么要设置权限
服务器中的数据价值员工的工作职责和分工不同应对自外部的攻击内部管理的需要
3. Linux中的权限类别
Linux 系统一般将文件权限分为3 类
read读
write写
execute执行
4. Linux中文件所有者
4.1. 所有者分类
对于文件的所有者又分为3类
user(属主
group属组
other其他用户
user(属主文件的创建者或拥有者换句话说某个账户对这个文件有的权限
A 一个人
B 多个人
group属组文件所属的用户组换句话或某个用户组对这个文件有的权限。
A 一个人
B 多个人
other其他用户除了上面提到的属主和属组之外的所有用户对这个文件有的权限
A 一个人
B 多个人
举例
爱情公寓拆迁拆迁款按照政策分配如下一半给张伟另一半由爱情公寓3601和3602室的其余的伙伴平分
如果把拆迁款看做一个文件那么这个文件的权限是
属主张伟
属组3601和3602的其他伙伴他们是一个组
其他用户没有
4.2. 所有者的表示方法
属主权限
u(the user who owns it)属主权限
用 u 表示文件所有者默认为文档的创建者
属组权限
g(other users in the files group)属组权限
用 g 表示在文件所属组默认是创建文件的用户的主组里的用户
其他权限
o(other user not in the files group)其他权限
用 o 表示既不是文件的创建者也不在文件属组里的用户称为其他人
linux ugo权限所谓ugo就是User, Group,Other三个单词的首字母
就指属主主组其他三种权限。
ugo 等于 u g o
a all) 等于u g o
root用户超级管理员
在Linux 中root 用户在所有用户中 root 用户 拥有最大的权限 可以管理着普通用户设置文档的权
限时不必考虑 root 用户
二、普通权限管理
1. ls查看文件权限
要设置权限就需要知道文件的一些基本属性和权限的分配规则
在Linux 中ls 命令常用来查看文档的属性用于显示文件的文件名和相关属性
ls命令本人之前概述过用于查看文件信息简写用法ll
用法一ll
示例代码
# ll
含义查看当前文件夹下的所有目录和文件的详细信息 
2. 文件权限详解
Linux 中存在三类身份
属主(owner拥有者)
属组(group用户组)
其他用户others
各自有不同的权限对于一个文档来说其权限具体分配如下
linux一共有7种文件类型,分别如下:
-普通文件
d目录文件
l 软链接类似Windows的快捷方式
下面四种是特殊文件
b块设备文件例如硬盘、光驱等
p管道文件
c字符设备文件例如猫等串口设备
s套接口文件/数据接口文件例如启动一个MySql服务器时会产生一个mysql.sock文件
文件权限对应关系对应数字 权限 对应数字 意义 r 4 可读 w 2 可写 x 1 可执行
前10位字符表示含义第1位表示文件类型第2-4位表示文件所有者的权限情况第2位r表示读权限第3位w表示写权限第4位x表示执行权限第5-7位表示与文件所有者同组的用户的权限情况第5位r表示读权限第6位-表示不可写第7位x表示执行权限第8-10位表示除了组外的其他用户权限情况第8位r表示读权限第9位-表示不可写第10位x表示执行权限简述第1位表示文件类型第2-4位表示文件 属主所有者的权限情况第5-7位表示与文件 属组用户组的用户的权限情况第8-10位表示 其他除了属主和属组之外的其他用户权限情况
3. 设置文件/文件夹权限
命令chmod
语法# chmod [选项] 权限模式 文档
作用增加或者减少当前文件所有者的权限不能改变所有者只能改变现有所有者的权限
常用选项-R递归设置权限 当文档类型为文件夹的时候
权限模式就是该文档需要设置的权限信息
文档可以是文件也可以是文件夹可以是相对路径也可以是绝对路径。
注意点如果想要给文档设置权限操作者要么是root 用户要么就是文档的所有者
字母形式
字母形式对应前面提到的u g or w x的表示方法
使用root用户登录
用法一chmod -R 要增加的权限 文件名
示例代码
#chmod -R ux quanxian.txt
含义对于quanxian.txt文件给 属主 增加 执行 权限 用法二chmod -R 多个要增加的权限 文件名
示例代码
#chmod -R gx,ox quanxian.txt
含义对于quanxian.txt文件给 属组 增加 执行 权限给 其他 增加 执行权限
注意同时改变多个对象的权限中间使用“逗号“分割。 用法三chmod -R 要减少的权限 文件名
示例代码
#chmod -R o-x quanxian.txt
含义对于quanxian.txt文件给 其他用户 减少 执行权限
img srcassets/chmod03.jpg stylewidth:960px /
用法四chmod -R 要赋予的权限 文件名
示例代码
#chmod -R urwx,grwx,orwx quanxian.txt
含义对于quanxian.txt文件给属主属组其他都 赋予 读写执行权限 用法五chmod -R 要赋予的权限 文件夹
示例代码
#chmod -R arwx quanxianfolder
含义对于quanxianfolder文件夹给所有用户属主属组其他都 赋予 读写执行权限 相关参数总结 字母 选项 作用 u谁 user 属主 g谁 group 属组 o谁 other 其他用户 a谁 all 所有人包含ugo 作用 加 增加作用 -作用 减 移除作用 作用 等于 赋值作用 r权限 read 可读权限 w权限 write 可写权限 x权限 execute 可执行权限 -权限 - 没有任何权限
1、如果同时设置多个身份的权限时候每个身份之间需要通过英文逗号分开
例如
#chmod -R urwx,grwx,orwx quanxian.txt
2、在权限设置中如果有两部分权限一样则可以合在一起写
例如
# chmod urwx,grwx
等价于
# chmod ugrwx
数字形式
经常会在技术网站上看到类似于# chmod 777 a.txt 这样的命令这种形式称之为 数字形式权限
文件权限与数字的对应关系我们会发现没有7这个数字 权限 对应数字 意义 r 4 可读 w 2 可写 x 1 可执行
权限与数字对应详解 数字 权限 作用 0 - 不能读不能写不能执行 1 execute 不能读不能写可执行 2 write 不能读可写不能执行 3 21 不能读可写可执行 4 read 可读不能写不能执行 5 41 可读不能写可执行 6 42 可读可写不能执行 7 421 可读可写可执行
技巧不要背上面的表格只要记住RWX对应4,2,1之后做10以内加法
用法六chmod -R 要赋予的权限数字形式 文件名
示例代码
#chmod -R 765 quanxian.txt
含义对于quanxian.txt文件给属主所有权限属组读写权限其他读和执行权限
注意
全部权限7 rwx 4 2 1
读写权限6 rw 4 2
读和执行5 rx 4 1
综上所述u7g6o5 问题用超级管理员设置文档的权限命令是# chmod -R 731 shop请问这个命令有没有什么不合理的地方
分析
所有者权限7 4 2 1 读 写 执行
同组用户权限3 2 1 写 执行
其他用户权限1 执行问题在权限731中的3权限3表示写执行权限但是写又必须需要能打开之后才可以写因此必须需要具备可读权限因此此权限设置不合理。注实际工作中各位小伙伴在设置权限时一定不要设置这种奇葩权限一般情况下单独出现2、3的权限数字一般都是有问题的权限。
一般linux系统中不允许出现 777 的权限
练习题
1、使用root 用户设置文件夹/root/shop 的权限为属主全部权限属组拥有读和执行权限其他用户没有权
限请使用数字权限的形式设置
rwx7,rx415,0
# chmod -R 750 /root/shop
2、请置文件/root/readme.txt 的权限权限要求为
属主拥有全部权限属组要求可以读写其他用户只读要求使用数字形式
rwx7,rw426,r4
# chmod 764 /root/readme.txt
3、请设置/root/email.doc权限权限要求只有属主可以读写除此之外任何人没有权限
rw6,0,0
# chmod 600 /root/email.doc
4. 特别说明
在Linux 中如果要删除一个文件不是看文件有没有对应的权限
而是看文件所在的目录是否有写权限如果有才可以删除同时必须具备执行权限 权限针对文件 权限针对目录 读r 表示可以查看文件内容 表示可以(ls)查看目录中存在的文件名称 写w 表示可以更改文件的内容 表示是否可以删除目录中的子文件或者新建子目录(rm/touch/mkdir) 执行x 表示是否可以开启文件当中记录的程序,一般指二进制文件(.sh) 表示是否可以进入目录中(cd)
三、属主zhu与属组zu设置
1. 什么是属主与属组
属主所属的用户文档所有者这是一个账户这是一个人
属组所属的用户组这是一个组
基本语法# ls -l查看文档属主与属组 2. 为什么要修改属主与属组
举例
一个财务表格以前由胡一菲进行更新她有读写权限现在胡一菲去阿拉善沙漠找曾老师了改权限没用
需要把属主改成诸葛大力由诸葛大力更新
3. chown修改文件的属主
基本语法# chown [-R] 新文档拥有者名称 文档路径
作用更改文档的所属用户change owner
选项-R 代表递归修改文件的属主
示例代码1将readme.txt文档属主更改为 zhengge
#touch readme.txt
#ll readme.txt#chown zhengge readme.txt
将readme.txt文件的属主设置为zhengge#ll readme.txt
示例代码2将shop文件夹的拥有者更改为zhengge
#mkdir shop
#ll
#chown zhengge shop
将shop文件夹的属主设置为zhengge#ll
4. chgrp修改文件的属组
基本语法# chgrp [-R] 新文档组名称 文档的路径
作用更改文档的所属用户组change group
示例代码1将readme.txt文档所属组修改为 zhengge
错误信息invalid user: ‘zhengge’
不可用的账户zhengge
原因检查是否有这个账户如果没有需要新建
示例代码2将shop文档所属组修改为 zhengge
5. chown同时修改属主与属组
基本语法语法# chown [-R] username:groupname 文档路径
示例代码将readme.txt文件的拥有者与所属组都更改为root
#ll readme.txt
#chown root:root readme.txt
将readme.txt文件的属主和属组同时设置为root#ll readme.txt
注意
一般来说chown 指令只有是由系统管理者(root)所使用
普通用户没有权限可以改变别人的档案拥有者也没有权限可以将自己的档案拥有者改设为别人
只有系统管理者(root)才有这样的权限
四、特殊权限
1. 设置位SSetUid
作用为了让一般使用者临时具有该文件所属主/组的执行权限
例如
/usr/bin/passwd在执行它的时候需要去修改/etc/passwd和/etc/shadow等文件
这些文件除了root外其他用户都没有写权限但是又为了能让普通用户修改自己的密码该怎么办呢
可以临时让他们具有root的权限而这个 s 权限就是用来完成这个特殊任务的
s 权限只能应用在二进制的可执行文件上 示例代码不想让普通用户修改自己的密码
which命令可以用于查看二进制可执行文件所在位置
去除s权限基本语法
#which passwd
#ll /usr/bin/passwd #chmod u-s /usr/bin/passwd
或者
#chmod 0755 /usr/bin/passwd
去除passwd程序的s权限#ll /usr/bin/passwd 测试普通用户
# 查看当前用户
whoami
# 修改密码
passwd
注意
0755最前面的0表示不使用任何特殊权限如果想使用数字设置特殊权限可以使用4表示设置S位
2. 沾滞位T (sticky bit)
命令chmod
语法# chmod [选项] 文件夹
作用只允许文件的创建者和root用户删除文件
常用选项
ot 添加粘滞位
o-t 去掉粘滞位
用法chmod ot 目录名
示例代码
#chmod ot
含义给目录增加粘滞位权限。
举例
公司多个部门公用一个文件夹work,为了让所有人都能访问work文件夹赋予了777权限
用户root新建了一个文件root.txt发现被别人删除了,我们希望root建立的文件只有root自己可以删。
步骤1root用户下操作
root用户新建文件夹/work并且新建两个文件root.txt和root1.txt赋予/work文件夹和下面的文件777权限
#mkdir /work
#cd /work
#touch root.txt
#touch root1.txt
#chmod -R 777 /work
#ll -d /work
img srcassets/teshu02.jpg stylewidth:960px /
步骤2 wangwu用户下操作
在没有设置粘滞位的时候wangwu可以删除root创建的文件
cd /work
ll -d /work
ll
rm -rf root.txt
ll
img srcassets/teshu03.jpg stylewidth:960px /
步骤3root用户下操作:
给/work文件夹添加粘滞位
#ll -d /work/
#chmod ot /work
#ll -d /work/
img srcassets/teshu04.jpg stylewidth:960px /
步骤4wangwu用户下操作
发现添加粘滞位后无法删除root2.txt文件
#ll -d /work/
#chmod ot /work
#ll -d /work/
img srcassets/teshu05.jpg stylewidth:960px /
步骤5root用户下操作
去掉/work文件夹的取消粘滞位
#ll -d /work/
#chmod o-t /work
#ll -d /work/
img srcassets/teshu06.jpg stylewidth:960px /
步骤6wangwu用户下操作
wangwu用户下发现又可以删除了
img srcassets/teshu07.jpg stylewidth:960px /
五、ACL访问控制
问题我们学过的所有者身份包含哪些
答案:ugo,属主属组其他。
问题我们学过的文件权限包含哪些
答案rwx读写执行特殊s,t ACL是 Access Control List访问控制列表的缩写在 Linux 系统中 ACL 可实现对单一用户设定访问文件
的权限
1. 基本命令
getfacl命令查看文件的ACL策略及权限
setfacl命令 给文件针对某个用户或者某个组来增加设置ACL策略
2. getfacl命令 3. setfacl命令
-m 修改acl策略
-x 去掉某个用户或者某个组的权限
-b 删除所有的acl策略
-R 递归,通常用在文件夹
maskmask定义除other和所有人(拥有者)外的最大权限
setfacl -m u:用户名:rwx /usr/local/shichangbu 给单个用户单独加权限setfacl -m g:用户组名:rwx /usr/local/shichangbu 给单个组单独加权限setfacl -x u:用户 /usr/local/shichangbu 去掉某个用户的权限
setfacl -x g:组名 /usr/local/shichangbu 去掉某个组的acl策略setfacl -b -R /usr/local/shichangbu 删除所有的acl策略,递归子文件例如
setfacl -m u:user01:rw file1 针对于单个用户给可读可写权限
setfacl -m g:sysadmin:rw file1 针对于单个组给可读可写权限
示例代码1给newuser01用户单独在市场部文件夹上增加rx权限
#mkidr /shichangbu
#cd /shichangbu
#touch file{1..5}.txt
#chown -R root:itheima shichangbu/
递归设置shichangbu文件夹的属主是root属组是itheima
#getfacl shichangbu/#useradd newuser01
#passwd newuser01 #setfacl -m u:newuser01:rx -R /usr/local/shichangbu/
单独设置newuser01对于shichangbu文件夹的rx权限并且递归包含所有子文件#getfacl /usr/local/shichangbu
查看/usr/local/shichangbu文件夹的ACL权限
六、umask
1. 什么是umask
umask表示创建文件时的默认权限即创建文件时不需要设置而天生的权限
例如
root用户下touch a 文件a的默认权限是644
普通用户下touch b 文件b的默认权限是664
644和664我们并没有设置其中的关键因素就是umask
最大默认权限
文件666
文件夹777
2. umask值
可以使用命令umask来查看umask的值
基本语法# umask 注0022中第一位0代表特殊权限位可以不设置。
umask的默认值在root和普通用户下是不一样的分别是022和002
分析 结合上述的举例得知
默认权限最高权限-umask 644666-022 // 664666-002
但是
当umask为011创建文件的默认权限应该是655但是实际运行的时候默认权限是 666
666 - rw-rw-rw-
011 - -----x--x
相减得
666 - -rw-rw-rw-
注意
这个特殊情况仅出现在文件因为文件[二进制文件除外]没有x执行权限)
所以查看文件的umask时我们要特别注意是否有奇数位x表示1
3. 修改umask值
umask 数值修改当前用户的umask 如# umask 044
不过这样设置的umask会在用户重新登录的时候恢复原来的值我们可以把修改的umask保存在~/.bashrc
操作步骤
#vim ~/.bashrc
① 在文件末尾添加umask 044
② 保存退出
③ 重新登录用户则保存成功
示例代码