• Linux chmod命令:修改文件或目录的权限

    既然我们已经知道文件权限对于一个系统的重要性,也知道每个文件都设定了针对不同用户的访问权限,那么,是否可以手动修改文件的访问权限呢?

    可以,通过 chmod 命令即可。chmod 命令设定文件权限的方式有 2 种,分别可以使用数字或者符号来进行权限的变更。

    chmod命令使用数字修改文件权限

    Linux 系统中,文件的基本权限由 9 个字符组成,以 rwxrw-r-x 为例,我们可以使用数字来代表各个权限,各个权限与数字的对应关系如下:

    r --> 4
    w --> 2
    x --> 1

    由于这 9 个字符分属 3 类用户,因此每种用户身份包含 3 个权限(r、w、x),通过将 3 个权限对应的数字累加,最终得到的值即可作为每种用户所具有的权限。

    拿 rwxrw-r-x 来说,所有者、所属组和其他人分别对应的权限值为:

    所有者 = rwx = 4+2+1 = 7
    所属组 = rw- = 4+2 = 6
    其他人 = r-x = 4+1 = 5

    所以,此权限对应的权限值就是 765。

    使用数字修改文件权限的 chmod 命令基本格式为:

    [root@localhost ~]# chmod [-R] 权限值 文件名

    -R(注意是大写)选项表示连同子目录中的所有文件,也都修改设定的权限。

    例如,使用如下命令,即可完成对 .bashrc 目录文件的权限修改:

    [root@localhost ~]# ls -al .bashrc
    -rw-r--r--. 1 root root 176 Sep 22 2004 .bashrc
    [root@localhost ~]# chmod 777 .bashrc
    [root@localhost ~]# ls -al .bashrc
    -rwxrwxrwx. 1 root root 176 Sep 22 2004 .bashrc

    再举个例子,通常我们以 Vim 编辑 Shell 文件批处理文件后,文件权限通常是 rw-rw-r--(644),那么,如果要将该文件变成可执行文件,并且不让其他人修改此文件,则只需将此文件的权限该为 rwxr-xr-x(755)即可。

    chmod命令使用字母修改文件权限

    既然文件的基本权限就是 3 种用户身份(所有者、所属组和其他人)搭配 3 种权限(rwx),chmod 命令中用 u、g、o 分别代表 3 种身份,还用 a 表示全部的身份(all 的缩写)。另外,chmod 命令仍使用 r、w、x 分别表示读、写、执行权限。

    使用字母修改文件权限的 chmod 命令,其基本格式如图 1 所示。


    chmod 命令基本格式
    图 1 chmod 命令基本格式

更多...

加载中...