首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"chmod +x“和"chmod 755”有什么区别?

"chmod +x“和"chmod 755”有什么区别?
EN

Ask Ubuntu用户
提问于 2017-07-06 19:48:56
回答 4查看 345.8K关注 0票数 103

当涉及到文件的可执行性时,chmod 755chmod +x之间有什么区别,我什么时候会使用哪一个呢?到目前为止,我只使用了chmod +x,我只读了一些东西,它使用了chmod 755,我不知道使用chmod 755还是chmod +x更好。

EN

回答 4

Ask Ubuntu用户

回答已采纳

发布于 2017-07-06 20:05:09

简写版:

为了能够比较它们,我们应该从同样的角度来看待它们,因此:

  • chmod +x等于chmod ugo+x (基于umask值)
  • chmod 755等于chmod u=rwx,go=rx

Explanation:

首先,你应该知道:

  1. +意味着将此权限添加到该文件已经拥有的其他权限中。
  2. =意味着忽略所有权限,并按照我提供的方式设置它们。
    • 因此,所有的“读、写、执行、粘滞位、suid和guid”都将被忽略,只会设置提供的那些。

  3. 读= 4,写= 2,执行=1
    • 下面是它背后的二进制逻辑(如果你感兴趣的话):符号:r -w- x-- 421二进制: 100 010 001区//\x\x{e76f} 101 =5个所有者-/\x 110 =6群-/x 110=6组

使用+x,您可以告诉用户向所有者、组和其他人添加(+)可执行位(x)。

  • 它等于ugo+xu+x,g+x,o+x
  • 当您没有指定哪个所有者、组或其他人是您的目标时,如果发生x,它将考虑所有这些。正如@Rinzwind所指出的,它基于umask值,它将位添加到umask允许的值中。记住,如果您指定了像o+r这样的目标,那么umask就不再有任何效果了。
  • 它不接触其他的mods (权限)。
  • 您还可以使用u+x只向所有者添加可执行位。

使用755,您将指定:

  • 7-> u=rwx (所有者的4+2+1)
  • 5-> g=rx (4+1 for group)
  • 5-> o=rx (其他人的4+1)

所以chmod 755就像:chmod u=rwx,g=rx,o=rxchmod u=rwx,go=rx

票数 217
EN

Ask Ubuntu用户

发布于 2017-07-06 19:51:07

chmod +x将所有用户的执行权限添加到现有权限中。

chmod 755设置文件的755权限。

755意味着所有者的完全权限,以及其他人的读取和执行权限。

票数 41
EN

Ask Ubuntu用户

发布于 2017-07-07 09:19:02

另一种看待它的方法(我觉得更容易理解)是,chmod +x相对地设置权限,而chmod 755则绝对地设置它们。

在文件上运行chmod 755之后,其权限将为755或rwxr-xr-x

chmod +x将只获取现有权限,并将执行权限添加到文件中。

票数 10
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/932713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档