📜  Linux 中的 chown 命令和示例

📅  最后修改于: 2022-05-13 01:57:29.580000             🧑  作者: Mango

Linux 中的 chown 命令和示例

操作系统中的不同用户拥有所有权和权限,以确保文件安全并限制谁可以修改文件内容。在 Linux 中,有不同的用户使用该系统:

  • 每个用户都有一些与之关联的属性,例如用户 ID 和主目录。我们可以将用户添加到一个组中,以便更轻松地管理用户。
  • 一个可以有零个或多个用户。指定的用户可以与“默认组”相关联。它也可以是系统上其他组的成员。

所有权和权限:为了保护和保护 Linux 中的文件和目录,我们使用权限来控制用户可以对文件或目录执行的操作。 Linux 使用三种类型的权限:

  • 读取:此权限允许用户读取文件和目录,它允许用户读取存储在其中的目录和子目录。
  • 写入:此权限允许用户修改和删除文件。它还允许用户修改目录的内容(创建、删除和重命名其中的文件)。除非没有授予目录的执行权限,否则更改确实会影响它们。
  • 执行:文件的写权限允许它被执行。例如,如果我们有一个名为PHP.sh的文件,那么除非我们不给它执行权限,否则它不会运行。

文件权限类型:

  • 用户:这些类型的文件权限会影响文件的所有者。
  • 组:这些类型的文件权限影响拥有文件的组。如果所有者用户在此组中,则将应用用户权限而不是组权限。
  • 其他:这些类型的文件权限会影响系统上的所有其他用户。

注意:要查看我们使用的权限:

ls -l  

chown命令用于更改文件所有者或组。每当您想更改所有权时,都可以使用 chown 命令。



句法:

chown [OPTION]… [OWNER][:[GROUP]] FILE…
chown [OPTION]… –reference=RFILE FILE…

示例:要更改文件的所有者:

chown owner_name file_name

在我们的例子中,我们有如下文件:

现在,如果我在我的情况下使用file1.txt ,要更改所有权,我将使用以下语法:

chown master file1.txt

其中master是系统中的另一个用户。假设您是名为 user1 的用户,并且您想将所有权更改为 root(您的当前目录是 user1)。在语法前使用“sudo”。

sudo chown root file1.txt



选项:

  • -c:当文件发生变化时报告。

    例子:

    chown -c master file1.txt

  • -v:用于显示处理的每个文件的详细信息。

    例子:

    chown -v master file1.txt

  • -f:它抑制大多数错误消息。当您不允许更改组权限并显示错误时,此选项会强制/静默更改所有权。

例子:

  1. 更改组所有权在我们的例子中,我使用 group1 作为系统中的一个组。要更改所有权,我们将使用
    chown :group1 file1.txt

    您可以看到组权限从 root 更改为 group1,如果您使用 -v 选项,它将报告该情况。我们只需要添加一个“:”来更改组。

  2. 更改所有者和组:再次将master作为用户,group1作为系统中的一个组
    chown master:group1 greek1

    这里, greek1 是一个文件。

  3. 仅从特定所有权更改所有者:假设我们要将所有权从主更改为根,当前所有者必须仅为主。
    chown --from=master root greek1

  4. 要从特定组更改组:
    chown --from=:group1 root greek1

    在这里,greek1 的组被更改为 root。

  5. 要将一个文件的所有权复制到另一个:
    chown --reference=greek1 greek2

  6. 要更改多个文件的所有权:
    chown master:group greek2 greek3