回答你的问题

回答你的问题

我添加了一个文件,/etc/init.d但注意到当我执行该操作时该文件不像其他文件那样是绿色,ls -l我应该怎么做才能使其变为“绿色”或添加必要的文件权限?

为什么这些文件首先是绿色的?

答案1

回答你的问题

您需要做的就是以 root 身份运行以下命令。

chmod 755 /etc/init.d/你的脚本

现在,如果您真的想了解其工作原理,请继续阅读。

背景

一旦有人向您解释权限,您就会很容易理解权限。所有文件和目录都有 3 种权限类型,并且 3 个不同的人群可以拥有不同的权限。

所有用户都可以对文件和目录拥有以下权限:

    • 文件夹:您可以看到文件夹中的文件
    • 文件:您可以读取文件
    • 文件夹:可以创建文件,移动文件等。
    • 文件:您可以更改文件中的数据。
  • 执行
    • 文件夹:你可以 cd 进入该文件夹
    • 文件:您可以将该文件作为程序运行。

这些权利赋予三类人:

  • 所有者
  • 团体
  • 其他(其他所有人)

在 Linux 系统上,当您对 /etc/init.d 执行 ls -l 时,您会得到如下结果:

$ ls -l /etc/init.d/
-rwxr-xr-x 1 根 根 2787 2009-11-05 08:03 umountfs
-rwxr-xr-x 1 根 根 2075 2009-10-14 00:16 umountnfs.sh

第一部分(-rwxr-xr-x)列出了权限,第三部分显示了所有者(root),第四部分显示了组(root)。

权限列表分为四个部分。第一个字母是文件类型。如果是文件,则为破折号。如果是目录,则为 d。如果是链接,则为 l。接下来的三个字母代表所有者的权限。rwx 表示用户可以读取、写入和执行。接下来的三个字母代表组的权限。在这种情况下,组只能读取和执行 (rx)。W 被替换为破折号,表示不允许。最后,不属于该组的每个人都被赋予读取和执行权限 (rx)。

修改权限和所有权

现在我们已经了解了识别权限,我们可以修改它们。

修改模式

chmod 是用于更改权限的工具。我在本回答开头给出的一个例子就是它的一个很好的用法。

chmod 755 /etc/init.d/你的脚本

第一个参数(755)提供权限,下一个参数是需要修改的文件列表。

权限列表 755 是 -rwxr-xr-x 的简写。第一个数字是所有者的权限,第二个数字是组的权限,第三个数字是其他人的权限。每个数字代表 rwx。

许可号码:

  • 执行 1
  • 写 2
  • 阅读 4

chmod 命令中使用权限数字的总和。因此,7 表示所有权限(4+2+1),5 表示读取和执行(4+1)。

所以,把所有这些加起来 755 就是

  • 所有者拥有所有权限
  • 为小组读取并执行
  • 读取并执行其他所有人的

chown

chown 是用于更改所有权和组的工具。它比 chmod 简单得多。

chown root.root /etc/init.d/yourscript

第一个参数是用户组。接下来的参数是要更改的文件。就这么简单。

答案2

您所指的绿色取决于组装 Linux 发行版的人,在 Linux 世界中没有固定的含义。但是,根据正常使用惯例,它通常与可执行文件相关联。在上面的评论中,Ignacio 要求您更深入地了解。例如:

# ls -l
-rwxr-xr-x. 1 root root  1729 Dec  8 06:10 acpid

你看到了什么?如果你看左侧,你会发现有三组权限。在这种情况下,用户 root 可以执行、读取和写入,组 root 的成员可以读取和执行,其他所有人都可以读取和执行。最左边的第一个破折号表示特殊权限、目录和符号链接。

那么如何改变这种情况呢?有两种基本方法,都涉及命令 chmod(更改模式)。您可以执行 chmod u+x file 以允许所有者执行该文件,或者您可以执行 chmod a+x 以允许所有人(包括所有者和组)执行该文件,或者您可以执行 chmod 550 以授予所有者和组读取和执行权限。

维基百科有一个很棒的文章讨论 chmod 以及基本文件权限。

答案3

chown root.root /etc/init.d/file    
chmod 755 /etc/init.d/file

相关内容