Linux系统下经常遇到文件或者文件夹的权限问题,或者是因为文件夹所属的用户问题而没有访问的权限。根据我自己遇到的情况,对这类问题做一个小结。
在命令行使用命令“ll”或者“ls -a”,可以查看文件或者文件的权限:

-rw-r--r--. 1 root root 6 Nov  9 16:42 a.txt

其中“-rw-r--r--”表示权限,一共有十个字符。

第一个字符,如果是“-”则表示是文件,如果是“d”则表示是目录(directory)。

后面9个字符每3个字符又作为一个组,则有3组信息(“rw-”、“r--”、“r--”),分别表示所属用户本身具有的权限、所属用户的用户组其他成员的权限、其他用户的权限。

每一组信息如“rw-”,每一个字符都有它自己的特定含义且先后位置是固定的,其中r是读权限、w是写权限、x是可执行权限、-没有对应字符的权限。Linux里面对这些字符设置对应的数值,r是4,w是2,x是1,-是0。上面的“rw-”则是6(=4+2+0),所以最开始a.txt的权限是644,属于root用户组的root用户。

1.修改权限chmod

1.1改文件的权限

我想修改文件a.txt的权限为755,则为:

  1.  
    [root@master my]# ll
  2.  
    -rw-r--r--. 1 root root 6 Nov 9 16:42 a.txt #改之前权限是644
  3.  
    [root@master my]# chmod 755 a.txt
  4.  
    [root@master my]# ll
  5.  
    -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改后权限是755

1.2改文件夹的权限

改之前:

  1.  
    [root@master test1]# ll
  2.  
    drw-r--r--. 2 root root 4096 Nov 9 16:42 my #改之前文件夹my的权限是644
  3.  
    [root@master test1]# ll my/
  4.  
    -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改之前文件夹my的里面的文件权限是755

1.2.1只改变文件夹本身权限,不改动子文件(夹)

执行命令修改my文件夹权限为600:

  1.  
    [root@master test1]# chmod 600 my/ #修改命令
  2.  
    [root@master test1]# ll
  3.  
    drw-------. 2 root root 4096 Nov 9 16:42 my #改my文件夹之后权限是600
  4.  
    [root@master test1]# ll my/
  5.  
    -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改my文件夹之后里面的文件权限还是755,没有变化

1.2.2改变文件夹及子目录下所有文件(夹)权限

执行1.2.1步骤之后,my文件夹和里面的文件权限都是不同的。现在递归修改,都改为统一的权限777:

  1.  
    [root@master test1]# chmod -R 777 my/ #修改命令,注意中间是大写的R,不是小写
  2.  
    [root@master test1]# ll
  3.  
    drwxrwxrwx. 2 root root 4096 Nov 9 16:42 my #修改后my文件夹权限是777
  4.  
    [root@master test1]# ll my/
  5.  
    -rwxrwxrwx. 1 root root 6 Nov 9 16:42 a.txt #修改后里面的文件变为了777

2.修改所属用户和用户组chown

这个和修改文件夹的权限是基本相同的,只不过是把chmod命令换成了chown。

2.1修改文件所属用户和用户组

修改a.txt文件所属用户(jay)和用户组(fefjay):

chown jay:fefjay a.txt #修改文件所属用户为jay,所属用户组为fefjay

2.2修改文件夹所属用户和用户组

1.2.1只改文件夹本身所属用户和用户组,不改子文件(夹)

仅修改文件夹my本身所属用户(jay)和用户组(fefjay):

chown jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay

2.2.2改变文件夹及所有子文件(夹)所属用户和用户组

递归修改文件夹my及包含的所有子文件(夹)的所属用户(jay)和用户组(fefjay):

chown -R jay:fefjay my #修改文件所属用户为jay,所属用户组为fefjay

3.总结

修改单个文件(夹)就用命令:

chown或chmod    “权限”或“名:组”    文件(夹)名称

修改文件夹及子文件夹所有文件就用命令:

chown或chmod  -R   “权限”或“名:组”    文件夹名称

转发:entos7修改文件夹权限和用户名用户组的更多相关文章

  1. centos6.5下修改文件夹权限和用户名用户组

    0.说明 Linux系统下经常遇到文件或者文件夹的权限问题,或者是因为文件夹所属的用户问题而没有访问的权限.根据我自己遇到的情况,对这类问题做一个小结. 在命令行使用命令"ll"或 ...

  2. Centos7修改文件夹权限和用户名用户组

    Linux系统下经常遇到文件或者文件夹的权限问题,或者是因为文件夹所属的用户问题而没有访问的权限.根据我自己遇到的情况,对这类问题做一个小结.在命令行使用命令“ll”或者“ls -a”,可以查看文件或 ...

  3. 【转】ubuntu下修改文件夹权限

    常用方法如下: sudo chmod 600 ××× (只有所有者有读和写的权限)sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)sudo chmod 700 ××× ...

  4. ubuntu下修改文件夹权限

    常用方法如下: sudo chmod 600 ××× (只有所有者有读和写的权限)sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)sudo chmod 700 ××× ...

  5. linux仅修改文件夹权限;linux 分别批量修改文件和文件夹权限

    比如我想把/var/www/html下的文件全部改成664,文件夹改成775,怎么做呢 方法一: 先把所有文件及文件夹改成664,然后把所有文件夹改成775 root@iZ25bq9kj7yZ:/ c ...

  6. linux仅修改文件夹权限 分别批量修改文件和文件夹权限

    比如我想把/var/www/html下的文件全部改成664,文件夹改成775,怎么做呢 方法一: 先把所有文件及文件夹改成664,然后把所有文件夹改成775 chmod -R 664 ./ find ...

  7. C#修改文件夹权限

    using System;using System.Collections.Generic;using System.Linq;using System.Text; using System.Dire ...

  8. linux,修改文件夹权限

    chmod -R 777 dist/ chown windseek:staff dist/   改变dist的权限到staff组里的windseek用户下   alias ll=`ls -al`   ...

  9. MAC /usr/local 文件夹权限问题

    修改文件夹权限 sudo chown -R $(whoami) /usr/local/ 如果失败提示Operation not permitted 或其他权限不足,则需要关闭Rootless Root ...

随机推荐

  1. 有了这些,java IO就不愁了

    IO的总结: java中相对路径和绝对路径的问题: 在web项目中,如果生成的文件前面没有 / 开头的话,表示的是生成的文件在当前项目的根目录下如student.txt在项目中刷新就能看到. 如果是以 ...

  2. POJ 1200 Crazy Search 【hash】

    <题目链接> 题目大意: 给定n,nc,和一个字符串,该字符串由nc种字符组成,现在要你寻找该字符串中长度为n的子字符串有多少种. 解题分析: 因为要判重,所以讲这些字符串hash一下,将 ...

  3. 常见素数筛选方法原理和Python实现

    1. 普通筛选(常用于求解单个素数问题) 自然数中,除了1和它本身以外不再有其他因数. import math def func_get_prime(n): func = lambda x: not ...

  4. P2279 [HNOI2003]消防局的设立

    P2279 [HNOI2003]消防局的设立考场上想出了贪心策略,但是处理细节时有点问题,gg了.从(当前深度最大的节点)叶子节点往上跳k个,在这里设消防局,并从消防局遍历k个距离,标记上. #inc ...

  5. vsftpd中配置文件详解

    在vsftp服务器中,配置文件/etc/vsftpd/vsftpd.conf文件是配置的核心内容,其具体的配置信息详细情况如下: 1.默认配置: 1>允许匿名用户和本地用户登陆. anonymo ...

  6. logging模块、sys模块、shelve模块

    一.logging模块 1.logging模块就是用于记录日志的,日志就是记录某个时间点,发生的事情. 2.记录日志是为了日后来复查,提取有用的信息. 3.如何去记录日志:可以直接打开文件,记录信息, ...

  7. JAVA中final修饰符小结

    一.final关键字可以用来修饰类.方法.变量.各有不同. A.修饰类(class).      1.该类不能被继承.      2.类中的方法不会被覆盖,因此默认都是final的.      3.用 ...

  8. BZOJ.5289.[AHOI/HNOI2018]排列(贪心 heap)

    BZOJ LOJ 洛谷 \(Kelin\)写的挺清楚的... 要求如果\(a_{p_j}=p_k\),\(k\lt j\),可以理解为\(k\)要在\(j\)之前选. 那么对于给定的\(a_j=k\) ...

  9. PHP中让json_encode不自动转义斜杠“/”的方法

    最近将使用爬虫爬取的链接保存到 mysql 数据库中时,发现我将链接使用 json_encode 保存时候,在数据库中却显示了转义字符,我并不需要这转义的,看起来不清晰而且占用存储空间. 后来发现在默 ...

  10. Centos 7 安装配置

    修改网卡 最小化安装没有安装vim,暂时使用vi 进入到network-scripts 目录 [root@node1 ~]# cd /etc/sysconfig/network-scripts/ [r ...