【Linux】文件权限
Linux的每一个文件都跟多种类型相关联。在这些权限中,我们通常需要和三类权限打交道(用户、用户组以及其他实体)。
1.文件权限查看ls –l
Linux:/qinys # ls -l
total 60
-rwxr--r-- 1 root root 30 Jan 15 01:46 A.txt
-rw-r--r-- 1 root root 30 Jan 15 01:46 B.txt
-rw-r--r-- 1 root root 8 Jan 15 01:48 C.txt
-rw-r--r-- 1 root root 11 Jan 15 01:33 D.txt
drwxr-xr-x 2 root root 4096 Jan 15 04:33 a.sh
drwxr-xr-x 2 root root 4096 Jan 15 02:24 data
…
第一行:total 60 :告诉我们该目录所占用的空间;
第一列:第一个字母明确指出对象类型
"-" :普通文件
"d" :目录
"c" :字符设备
"b" :块设备
"l" :符号链接
"s" :套接字
"p" :管道
第二列:表示硬链接的数目
2.用户、用户组、其他用户权限
除去第一个字母,剩下的部分可以分为三段,每段3个字符;其中:
- 第一段对应用户权限
- 第二段对应用户组权限
- 第三段对应其他用户权限
例如:-rw-r--r-- 1 root root 30 Jan 15 01:46 B.txt
-代表该文件问普通文件,rw-代表用户权限为可读写,r--代表用户组权限为可读,r--代表其他用户权限为可读
3.设置文件权限
3.1 一般授权
3.1.1 chmod命令的一般格式为:
chmod [who] operator [permission] filename
说明:
who的含义
u :指定用户权限
g :指定用户组权限
o :指定其他实体权限
a :表示所有(用户、用户组、其他实体用户)
operator的含义
+ 增加权限
- 删除权限
= 设定权限
permission的含义
r 读权限
w 写权限
x 执行权限
s 文件属主和组set-ID
t 粘性位*
l 给文件加锁,使其他用户无法访问
3.1.2 chmod命令举例
假如现在文件per.sh权限为rwx rwx rwx
Linux:/qinys # ls -lrt per.sh
-rwxrwxrwx 1 root root 0 Jan 17 15:05 per.sh
①收回所有用户组的执行权限
Linux:/qinys # chmod a-x per.sh
Linux:/qinys # ls -lrt per.sh
-rw-rw-rw- 1 root root 0 Jan 17 15:05 per.sh
②收回同用户组好其他用户组的写权限
Linux:/qinys # chmod go-w per.sh
Linux:/qinys # ls -lrt per.sh
-rw-r--r-- 1 root root 0 Jan 17 15:05 per.sh
③赋予同组用户写权限
Linux:/qinys # chmod g+w per.sh
Linux:/qinys # ls -lrt per.sh
-rw-rw-r-- 1 root root 0 Jan 17 15:05 per.sh
④赋予文件属主可执行权限
Linux:/qinys # chmod u+x per.sh
Linux:/qinys # ls -lrt per.sh
-rwxrw-r-- 1 root root 0 Jan 17 15:05 per.sh
⑤赋予同组用户和其他用户可执行权限
Linux:/qinys # chmod go+x per.sh
Linux:/qinys # ls -lrt per.sh
-rwxrwxr-x 1 root root 0 Jan 17 15:05 per.sh
3.1 八进制授权
也可以使用八进制来设置权限,权限由3位八进制数来表示,每一位按照顺序分别对应用户、用户组、其他用户
读、写和执行都有与之对应的八进制数
- r--=4
- -w-=2
- --x=1
我们可以对权限进行组合,例如:可读可写权限
rw-=4+2
777表示的是:用户、用户组、其他用户都具有可读、可写、可执行权限
示例:chmod 777 filename #授予用户、用户组、其他用户都具有可读、可写、可执行权限
特殊:chmod 7 filename #将其他用户权限授予可读、可写、可执行,用户与用户组的权限则全部收回
可以使用-R选项连同子目录下的文件一起设置权限,但是需要谨慎,只有在需要改变目录树下全部文件权限时候才可以使用。
4.更改文件的所有权
使用chown命令进行修改
4.1 查看当前文件所属
Linux:/qinys/oliver # ls -l
total 4
---x--x--x 1 root root 0 Jan 15 04:34 a.sh
当前文件所属为root 组为:root
4.2 修改所属,再次查看
Linux:/qinys/oliver # chown qinys:root a.sh
Linux:/qinys/oliver # ls -l
total 4
-------rwx 1 qinys root 0 Jan 15 04:34 a.sh
从上述结果我们可以看到,文件所属已经发生改变
【Linux】文件权限的更多相关文章
- 修改linux文件权限
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- Linux:文件权限
Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...
- Linux 文件权限总结
在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就 ...
- Linux&shell 之Linux文件权限
写在前面:案例.常用.归类.解释说明.(By Jim) Linux文件权限用户useradd test (添加用户test)userdel test (删除用户test)passwd test(修改用 ...
- linux文件权限整理
网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh xzc@xzc- ...
- 修改linux文件权限命令:chmod 【转载】
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. chmod 命令可以改变所有子目录的权限,下面有2种方法 改变一个文件的权限: chmod ...
- linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)
文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...
- Linux 文件权限于目录配置
用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...
- Linux文件权限与属性详解 之 SUID、SGID & SBIT
Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...
- Linux文件权限与属性详解 之 一般权限
目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...
随机推荐
- Kubernetes基础:Pod的详细介绍
本文的演练环境为基于Virtualbox搭建的Kubernetes集群,具体搭建步骤可以参考kubeadm安装kubernetes V1.11.1 集群 1. 基本概念 1.1 Pod是什么 Pod是 ...
- 基于图的图像分割(Graph-Based Image Segmentation)
一.介绍 基于图的图像分割(Graph-Based Image Segmentation),论文<Efficient Graph-Based Image Segmentation>,P. ...
- No identifier specified for entity: springboot-jpa报错No identifier specified for entity
说明:此次学习使用了springboot框架,jpa注解映射实体类 1,No identifier specified for entity: com.tf.model.User 看到此错误第一反应百 ...
- Maven中的库(repository)详解
Maven中的库(repository)是构件(artifact)的集合.构件以一定的布局存储在库中. 本地仓库 vs. 远程仓库 运行Maven的时候,Maven所需要的任何构件都是直接从本地仓库获 ...
- HDU1208:Pascal's Travels(DP)
Problem Description An n x n game board is populated with integers, one nonnegative integer per squa ...
- [leetcode]Recover Binary Search Tree @ Python
原题地址:https://oj.leetcode.com/problems/recover-binary-search-tree/ 题意: Two elements of a binary searc ...
- 如何远程运行PowerShell命令?
首先, 被remote运行PowerShell的windows必须已经join了domain. 其次, 该Windows的PowerShell必须开启对remote command的接受, 运行下面的 ...
- vue-自定义组件传值
项目中,我们经常会遇到自定义组件传值的问题,方法很多种,但是原理很简单,下述文档总结实际项目中使用的传值方式. 父组件传递给子组件某一值,子组件内会修改该值,然后父组件需要获取新值 在 Vue 中 ...
- eclipse 创建普通maven项目
- svn commit --cl app 时手动输入提交的注释,而不是在 -m 'comments here'这里输入
原来只需要,提交的时候不指定 -m ,也不指定 -F就可以了,提交之前,svn会自动弹出编辑框来,可以修改信息. https://stackoverflow.com/questions/1746891 ...