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】文件权限的更多相关文章

  1. 修改linux文件权限

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...

  2. Linux:文件权限

    Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...

  3. Linux 文件权限总结

    在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就 ...

  4. Linux&shell 之Linux文件权限

    写在前面:案例.常用.归类.解释说明.(By Jim) Linux文件权限用户useradd test (添加用户test)userdel test (删除用户test)passwd test(修改用 ...

  5. linux文件权限整理

    网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh xzc@xzc- ...

  6. 修改linux文件权限命令:chmod 【转载】

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. chmod  命令可以改变所有子目录的权限,下面有2种方法 改变一个文件的权限: chmod ...

  7. linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)

    文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...

  8. Linux 文件权限于目录配置

    用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...

  9. Linux文件权限与属性详解 之 SUID、SGID & SBIT

    Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...

  10. Linux文件权限与属性详解 之 一般权限

    目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...

随机推荐

  1. 白话Spring(基础篇)---AOP(execution表达式)

    作为AOP的最后一节内容,我们来简单总结一下切面表达式上见的书写方法.下面的那内容有参考其他博文,在此先对开源博客的各位大神表示感谢! -------------------------------- ...

  2. 解决tensorflow在训练的时候权重是nan问题

    搭建普通的卷积CNN网络. nan表示的是无穷或者是非数值,比如说你在tensorflow中使用一个数除以0,那么得到的结果就是nan. 在一个matrix中,如果其中的值都为nan很有可能是因为采用 ...

  3. 5G与TCP/IP

    众所周知,4G LTE全面IP化,上层传输走的是TCP/IP协议(如下图). ▲LTE用户面协议构架 但是,我们熟悉的这个构架并没有发挥出移动网络的全部潜力,甚至阻碍了未来网络的发展. 1  TCP/ ...

  4. [转]PHP: 深入pack/unpack

    From : http://my.oschina.net/goal/blog/195749 http://www.w3school.com.cn/php/func_misc_pack.asp PHP作 ...

  5. Inferred type 'S' for type parameter 'S' is not within its bound; should extend

    在使用springboot 方法报错: Inferred type 'S' for type parameter 'S' is not within its bound; should extends ...

  6. iOS "directory not found for option '-L/Users/.../Pods/build/Debug-iphoneos"解决方式

    问题重述: 在删掉原来工作空间,又一次install pods之后,遇到warning: ld: warning: directory not found for option '-L/Users/. ...

  7. iOS:调节系统的亮度

    一.简单介绍 亮度是UIScreen的一个浮点型属性,而UIScreen是一个单例,所以这个亮度是全局的,任何一个地方改动,整个手机的亮度都会改变.这个亮度在iOS5.0后被苹果开放,开发者可以很方便 ...

  8. [leetcode]Remove Duplicates from Sorted List @ Python

    原题地址:https://oj.leetcode.com/problems/remove-duplicates-from-sorted-list/ 题意: Given a sorted linked ...

  9. python3 文件及文件夹路径相关

    1. #返回当前文件所在的目录 currentDir = path.dirname(__file__) # __file__ 为当前文件 2.获得某个路径的父级目录: parent_path = os ...

  10. windows 通过Web.config添加mimetype映射

    在Web.config里添加以下代码即可 <configuration> <system.webServer> <staticContent> <!-- re ...