Linux chmod命令示例

时间:2020-02-23 14:39:25  来源:igfitidea点击:

在本教程中,您将了解chmod命令。
Linux chmod命令是最常用的命令之一,尤其是系统管理员在分配修改文件和文件夹权限时尤其如此。

通常在Linux系统中安装和配置各种服务和功能时使用。
该命令通常与一组八进制符号或者字母字符一起使用以更改文件许可权。

Linux文件权限

Linux系统上的每个文件都具有一组权限。
与文件相关联的3种权限类型。

  • 阅读" r"标识的权限
  • 以" w"标识的写权限
  • 执行权限以" x"标识

要检查任何文件的文件权限,请使用ls命令和如下所示的-l选项。

$ls -l

例如,要列出file1.txt的权限,请运行命令。

$ls -l file1.txt

让我们分解一下输出

第一个连字符(-)表示权限属于文件,而不是文件夹。
文件夹的权限以符号d开头,以表示目录,如图所示。

ls -l /var/www

在输出中,字符串rwxr-xr-x表示该文件的权限。
分为以下三个部分。

  • 用户权限(rwx)–代表创建文件的所有者或者用户的权限。
    rwx意味着所有者可以读取,写入和执行文件。

  • 组权限(r-x)-代表文件组中用户的权限。
    r-x权限表示组用户可以读取和执行文件,但不能写入文件。

  • 其他用户权限(r-x)–这些权限是对既不属于上述两个类别的其他用户的权限。
    在这种情况下,其他用户只能读取该文件。

权限模式

可以将两种权限模式传递给chmod命令:

  • 八进制表示法
  • 字母字符

1.八进制表示法

考虑权限rwx
这意味着以下内容:

r=4
w=2
x=1

因此,例如,rwx等于4 + 2 + 1等于7。

每个字母的相应数字值被添加以获得文件许可权。

例如,具有" rwxr-xr--"权限的文件将具有八进制表示法" 754"。

原因如下:

计算方式

rwx = 4+2+1 = 7
r-x = 4+0+1 = 5
r-- = 4+0+0 = 4

您可能已经注意到,连字符采用空值并分配为0。

让我们再举一个例子:

假设我们还有一个权限为rwx-rw-rw-的文件。

八进制符号的计算方法如下:

计算方式

rwx = 4+2+1 = 7
r-x = 4+2+0 = 6
r-- = 4+2+0 = 6

最终,这将使我们将" 766"作为" rwx-rw-rw-"的相应八进制表示法。

使用chmod命令使用八进制表示法更改文件权限

要更改文件的文件许可权,请使用以下语法。

chmod [octal value] file-name

例如,要更改文件file1.txt的文件许可权,说" rw-r--r--",请执行:

chmod 644 file1.txt

在下面的计算中说明了这一点

(user) rw- = 4+2+0 = 6
(group) r-- = 4+0+0 = 4
(others)r-- = 4+0+0 = 4

2.字母符号

用字母符号表示,将写权限分为3个部分,每个部分带有rwx部分。

从左侧开始,我们有以下符号:

u  (user)
g  (group)
o  (others)
a (all)

下面对此进行了更好的说明:

使用chmod命令使用字母符号更改文件权限

要使用字母符号更改文件许可权,请使用以下语法。

chmod [user type(u/g/o/a)] [add/revoke(+/-)] [permission type(r/w/x)]

例如,要更改文件所有者的读写权限,请执行:

chmod u+rw file1.txt

要向所有人授予写权限,请执行:

chmod a+w file1.txt

要删除所有其他用户的写许可权,我们运行:

chmod o-w file1.txt

要更改目录的权限,我们运行:

chmod [permission] [directory name]

要递归更改目录及其文件和子目录的权限,请运行:

chmod -R [permission] [directory name]

例如,递归将/var/www / 目录权限设置为" 755",则执行命令。

chmod -R 755 /var/www