第十四章 权限管理

摘要:
-L,--dereference跟随链接-f,--file-system显示文件系统状态而非文件状态-c--format=格式使用指定输出格式代替默认值,每用一次指定格式换一新行--printf=格式类似--format,但是会解释反斜杠转义符,不使用换行作输出结尾。

权限管理
1.什么是权限
针对某些文件或者进程,对用户进行限制

2.权限和用户的关系
文件类型	文件属主(所属用户)权限	文件所(属组)属用户组		其他用户
d				rwx						r-x								r-x

硬链接数	文件的属主(所属用户)	文件的属组(所属用户组)	文件的大小(文件中的字节数)
2 			root 					root  						64 

文件的修改时间		文件名
Jul  1 02:00 		bak



rwxrwx--x			rlb			root   		 rlb

[root@rlb ~]# useradd rlb100 -g root

root			
rlb
rlb
rlb100

普通文件
-
软链接文件
l
socket,套接字
s
块设备
c

2.授权方式
1)+号 -号 授权
rw- r-x -wx
--x -w- r--
--x -w- r--
rwx ---> u(user)g(group)o(other)

[root@rlb ~]# chmod u+w rlb
u+x
g+w
o+r	

2)数字授权
r:4
w:2
x:1
-:0

rwxr-xr-x		 bak  755

3)=号授权
[root@rlb ~]# chmod u=rwx,g=rw,o=r rlb

权限对文件的作用
读取权限(r)
文件只有r权限: 具有读取阅读文件内容权限
1.能使用查看类命令cat、head、tail、less、more
2.不能复制、不能移动、不能编辑,不能删除 写入权限(w)
如果文件只有w权限: 具有新增、修改文件内容的权限
1.使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
2.使用echo、cat命令重定向或追加重定向技术可以往文件内写入数据
3.不能复制、不能移动、不能删除,(删除需要看上级目录w的权限) 执行权限(x)
文件只有x权限,具有执行文件的权限。
//注意: 普通用户需要有r权限,管理员不需要
1.不能执行、查看、编辑、复制、移动、删除

权限对目录的作用

目录只有r权限: 具有浏览目录及子目录权限
1.能使用ls命令浏览目录及子目录, 同时会提示权限拒绝
2.能使用ls -l命令浏览目录及子目录, 会带问号,同时只能看到文件名
总结: 目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限 写入权限(w)
如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x配合)
//注意: 如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)
不能进入目录、不能复制目录、不能删除目录、不能移动目录 执行权限(x)
目录只有x权限
1.只能进入目录
2.不能浏览、复制、移动、删除


3.授权命令
chmod
1)+号 -号 授权
rw- r-x -wx
--x -w- r--
--x -w- r--
rwx ---> u(user)g(group)o(other)

[root@rlb ~]# chmod u+w rlb
u+x
g+w
o+r	

2)数字授权
r:4
w:2
x:1
-:0

rwxr-xr-x		 bak  755

3)=号授权
[root@rlb ~]# chmod u=rwx,g=rw,o=r zl


chown

chown username:groupname
chown username.groupname

[root@rlb250 test]# stat test.txt
File: ‘test.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular mpty file
Device: 803h/2051d Inode: 33656254 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ rot)
Context: unconfined_u:object_r:default_t:s0
Access: 2019-07-01 20:52:43.914699191 +0800
Modify: 2019-07-01 17:03:40.133306536 +0800
Change: 2019-07-01 18:01:00.967404840 +0800
Birth: -
[root@rlb250 test]# stat test.txt| sed -rn 's#.0(.)/-.*#1#gp'
755

stat
相关命令:ls
用法:stat [选项]... 文件...
显示文件或文件系统的状态。

-L, --dereference 跟随链接
-f, --file-system 显示文件系统状态而非文件状态
-c --format=格式 使用指定输出格式代替默认值,每用一次指定格式换一新行
--printf=格式 类似 --format,但是会解释反斜杠转义符,不使用换行作
输出结尾。如果您仍希望使用换行,可以在格式中
加入" "
-t, --terse 使用简洁格式输出
--help 显示此帮助信息并退出
--version 显示版本信息并退出

有效的文件格式序列(不使用 --file-system):

%a 八进制权限
%A 用可读性较好的方式输出权限
%b 计算已分配块数(参见%B)
%B 以字节为单位输出%b 所报告的每个块的大小
%C SELinux 安全环境字符串
%d 十进制设备编号
%D 十六进制设备编号
%f 十六进制原始模式
%F 文件类型
%g 文件的属组ID
%G 文件的属组组名
%h 硬链接数量
%i Inode 编号
%m 挂载点
%n 文件名
%N 如果对象是一个符号链接,显示引用到的其它文件名
%o I/O 块大小
%s 总计大小,以字节为单位
%t 十六进制主设备类型
%T 十六进制子设备类型
%u 文件的属主ID
%U 文件的属主用户名
%w 文件创建时间,若未知则显示"-"
%W 从UNIX 元年起以秒计的文件创建时间,若未知则显示"-"
%x 上次访问时间
%X 从UNIX 元年起以秒计的上次访问时间
%y 上次修改时间
%Y 从UNIX 元年起以秒计的上次修改时间
%z 上次更改时间
%Z 从UNIX 元年起以秒计的上次更改时间

有效的文件系统格式序列:

%a 非超级用户可用的剩余块数
%b 文件系统的总数据块数
%c 文件系统中文件节点总数
%d 文件系统中空闲文件节点数
%f 文件系统中空闲块数
%i 十六进制文件系统ID
%I 允许的文件名最大长度
%n 文件名
%s 块大小(用于快速传输)
%S 基本块大小(用于块计数)
%t 十六进制类型描述
%T 可读性较好的类型描述

rwx对文件:只对文件内容有影响
r:只读,不可以执行,不可以写入
w:可以编辑,但是不能读取内容,如果vim,会覆盖原文件内容。
x:如果是普通用户,也不可以执行,必须组合r权限,如果root用户,单独执行权限可以执行

权限组合:
rw:对文件 ,可读可写,不可以执行
rx:可读,可执行
wx:可写,普通用户可写,不可读也不可执行,root用户可以执行
rwx:可读,可写,可执行

rwx对目录的影响
w:单个w没有任何作用,但是如果想要删除目录下的文件,一定要有w
r:单独的r权限,可以看到目录下的文件名,但是看不到详细信息,不能移动文件,不能进入目录(配合x)
x:只能进入目录

rx:可以进入目录,可以查看目录中文件的详细信息,不可以移动,删除目录下的文件
rw:跟单独的一个r,是一样的
wx:可以进入目录,可以创建、删除文件,但是不能查看目录下的文件
rwx:可以进入,可以查看,可以删除,可以移动,可以随意更改~~~~

du -sh etcq.tgz etc查看包的大小,可以用来查看压缩率,就是将源文件的大小除以压缩后的大小=压缩率

免责声明:文章转载自《第十四章 权限管理》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇图文介绍openLDAP在windows上的安装配置通过CSS3伪类,美化Radio按钮样式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

xcode模拟器不显示键盘解决方案

当我们使用Xcode进行开发时,我们并不总是需要在iPhone上运行代码。有时模拟器可以解决这些问题。但当你使用模拟器时,你会发现,如果你使用模拟器上的键盘在TextFiled中输入信息,这是可以的,但如果你使用键盘输入信息,那么你会发现模拟器上的屏幕将不再显示。这是因为默认情况下,xcode使用计算机键盘作为外部键盘,不会弹出虚拟键盘。...

如何在Android模拟器上安装apk文件

如本实例的“mishop_2.0.20130911_1.1.1.apk”3.执行控制台命令,进行安装。切换到D盘,输入D:,然后点击Enter,即切换到D盘,输入cd,找到platform-tools的文件地址,即adb.exe的文件路径。,粘贴在控制台中。...

dbeaver 驱动安装

一、背景:在Windows10安装dbeaver数据库连接工具,点“测试连接”的时候出现报错如下:ErrorresolvingdependenciesMavenartifact'maven:/mysql:mysql-connector-java:RELEASE'nofound经网上查询是dbeaver驱动无法下载的问题。二、解决方法:打开“窗口”-˃“首选项...

windows下vue项目启动步骤

辗转反侧之后,我终于开始了构建的vue项目。我记下了备份步骤。它只适用于那些没有启动前端项目经验的人,可能对其他人没有参考价值:OS:windows7gitclone已经为构建的vue项目安装了Nodejs。6.10以上的最新版本似乎能够自动配置路径和npm。无论如何,安装后,我可以使用cmd在任何路径下查询“node version”或“npm-v”以提供...

SQL 2008维护计划不执行的问题

平台环境;首先,安装了WINDOWS 2008,但没有升级到AD。安装了sql2008之后,AD被升级。无法确定所有者WWW-4410C397505Administrator是否具有服务器访问权限(原因:无法获取有关WindowsNT组/用户“WWW-440C397505Administrator”的信息,错误代码为0x534。[SQLSTATE42000]...

Redis的安装和简单使用

Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。Redis安装1、要安装Redis,首先要获取安装包。这是访问Redis时所需的密码,一般测试情况下可以不用设定密码。再在右侧找到Redis名称的服务,查看...