文件/目录权限设置命令:chmod

这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限。该命令有两种用法:

用包含字母和操作符表达式的文字设定法 )

其语法格式为:chmod [who] [opt] [mode] 文件/目录名

其中who表示对象,是以下字母中的一个或组合:

u:表示文件所有者 
g:表示同组用户 ;
o:表示其它用户 
a:表示所有用户 
opt则是代表操作,可以为: 
+:添加某个权限  
-:取消某个权限 
=:赋予给定的权限,并取消原有的权限 
而mode则代表权限:
r:可读   
w:可写 
x:可执行

例如:为同组用户增加对文件a.txt的读写权限:

chmod g+rw a.txt

用数字设定法

而数字设定法则更为简单:chmod [mode] 文件名

关键是mode的取值,一开始许多初学者会被搞糊涂,

其实很简单,我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwx r-x r-- 则可以表示成为:

111 101 100

再将其每三位转换成为一个十进制数,就是754。

例如,我们想让a.txt这个文件的权限为:

自己 同组用户 其他用户
可读 是 是 是 
可写 是 是 可执行

那么,我们先根据上表得到权限串为:rw-rw-r--,

那么转换成二进制数就是110 110 100,再每三位转换成为一个十进制数,就得到664,因此我 们执行命令:

chmod 664 a.txt

如何设置文件夹权限为777

先进terminal,然后输入Wally的命令,后面添加你的目录名。

sudo chmod -R 7779 U

查看权限

Linux文件访问权限分为可读,可写和可执行三种。

可用ls -l命令查看,例:

ls -l

显示
-rwxr-xr-x 1 root root 6444 09-22 15:33 shmwrite
-rw-r--r-- 1 root root 1443 09-22 15:33 shmwrite.c
drwxr-xr-x 2 root root 4096 09-22 17:19 test

第一个字符代表文件类型。d代表目录,-代表非目录。

接下来每三个字符为一组权限,分为三组,依次代表所有者权限,同组用户权限,其它用户权限

每组权限的三个字符依次代表是否可读,是否可写,是否可执行

r 表示拥有读的权限

w 表示拥有写的权限

x 表示拥有可执行的权限

- 表示没有该权限

修改权限
可用chmod命令来修改文件权限。
例如:

chmod 754 test

4代表读权限,2代表写权限,1代表执行权限

7=4 + 2 + 1,表示拥有可读可写可执行权限
5=4 + 1,表示拥有可读可执行权限,但是没有写权限
0 代表没有任何权限
以此类推

思考下为什么是4,2,1分别代表读写执行权限,而不是其它数字?
我们知道计算机最底层编码都是二进制,即0,1。要表示一个文件读写执行权限,底层只需一个字节,即8位即可。

约定从右数起第3位为1,代表拥有读权限;第2位为1,代表拥有写权限;第1位为1,代表拥有可执行权限。为0,则没有相应的权限。

即二进制转换成十进制,0000 0100 = 4, 0000 0010 = 2, 0000 0001 = 1。即4,2,1分别代表相应二进制位为1,也即拥有相应权限。这也是上面所提问题的原因所在,这样说大家就更容易记住这些数字代表的含义了

Linux下文件权限的设置的更多相关文章

  1. Linux之文件权限属性设置

    文件权限属性设置 1.chown命令 chrep命令 chown命令改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组. 用户可以是用户或 ...

  2. Linux下文件权限(一)用户ID和用户组ID

    最近在读<unix环境高级编程>,看到文件权限这里比较糊涂,主要设计多个用户ID和用户组ID,包括下面两个: (1)实际用户ID和实际用户组ID:这一部分表示我们究竟是谁.这两个字段在登录 ...

  3. linux下文件权限的介绍

    linux操作系统下,使用ll查看该目录下所有文件及其文件权限,以下是对文件权限的介绍 d代表的是目录(或称之为文件夹)   红框内的这3个是代表3个组的权限每组都是3个 第一组rwx代表是本用户的权 ...

  4. linux下文件权限更改(转载)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/qq_33571752/article/d ...

  5. (转载) linux下文件权限设置中的数字表示

    chmod ABC file 其中A.B.C各为一个数字,分别表示User.Group.及Other的权限. A.B.C这三个数字如果各自转换成由“0”.“1”组成的二进制数,则二进制数的每一位分别代 ...

  6. linux 下 文件权限和文件主

    文件与文件夹的权限和所有者 1.chmod -R 755 file 777 含义与来源: 777含义:分别为:所有者.同组用户.其他用户 7的来源:文件有三种操作模式:读4.写2.执行1,分别值为42 ...

  7. Linux下文件的权限

    一.Linux下查看文件属性 命令为: [root@localhost ~]# ls -al 结果: ls是『list』的意思,重点在显示文件的文件名与相关属性.而选项『-al』则表示列出所有的文件详 ...

  8. 关于linux下文件的权限问题

    今天在linux更新服务中的启动文件时,直接把更新的启动文件拷贝过来执行,报错:can't be execute 后来想了下列出了文件的详细信息中发现拷贝过去的执行文件是-r--r--r--(表示只有 ...

  9. [转]Linux中文件权限目录权限的意义及权限对文件目录的意义

    转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...

随机推荐

  1. [git] csdn之code平台的使用

    简单的说一下GIT的使用.... 代码和托管平台是csdn刚出来没多久的code.csdn.net [中文的界面什么的简单点,好理解,嗯,易用....] Git 使用最新版:Git-1.8.4-pre ...

  2. [转]GPS经纬度的表示方法及换算

    想要认识GPS中的经纬度,就必须先了解GPS,知道经纬度的来源: 1. GPS系统组成 GPS是 Gloabal Positioning System 的简称,意为全球定位系统,主要由地面的控制站.天 ...

  3. Android 代码设置RelativeLayout元素居中

    RelativeLayout relativeLayout= new RelativeLayout(this); RelativeLayout.LayoutParams rlp=new Relativ ...

  4. 深入浅出Oracle学习笔记:Buffer Cache 和Shared pool

    Buffer cache 和 share pool 是sga中最重要最复杂的部分. 一.Buffer Cache 通常数据的读取.修改都是通过buffer cache 来完成的.buffer cach ...

  5. hdu 4398 Template Library Management(贪心+stl)

    题意:n道题,每道题需要一个模板,现在手头有m个模板(标号1~m),解题的时候,如果没有需要的模板,可以向朋友借,但是用完之后必须在还给朋友一个模板(也就是说保持手头拥有m个模板),求解完n道题最少需 ...

  6. 一些优秀的iOS第三方库

    文章目录 Kits ProgressHUD 加载与刷新 图像 引导页 Views Others Kits RegexKitRegexKit是一个正则表达式工具类. JSONKitJSONKit是一个比 ...

  7. BZOJ_2683_简单题&&BZOJ_1176_[Balkan2007]Mokia_CDQ分治+树状数组

    BZOJ_2683_简单题&&BZOJ_1176_[Balkan2007]Mokia_CDQ分治+树状数组 Description 维护一个W*W的矩阵,初始值均为S.每次操作可以增加 ...

  8. 【转】设置cocos2dx 屏幕分辨率

    [转载连接:]http://www.cnblogs.com/onlycxue/p/3500026.html 做手机上的软件首先要考虑的就是屏幕分辨率怎么解决.coco2dx已经有了很好的解决方法. 用 ...

  9. Spring注解的(List&Map)特殊注入功能

    一.先看一个示例演示:spring注解的一个特殊的注入功能. 首先,是定义一个接口,3个实现类. public interface GreetService { public String sayHe ...

  10. div 加滚动条的方法

    div 加滚动条的方法: <div style="position:absolute; height:400px; overflow:auto"></div> ...