如何在linux上使用chown命令

Linux系统中的文件和目录都属于某个人。您可以使用chown命令更改它们的所有权。我们教你怎么做。...

Linux系统中的文件和目录都属于某个人。您可以使用chown命令更改它们的所有权。我们教你怎么做。

每个文件都属于一个用户和一个组

Linux是一个多用户系统。操作系统允许定义多个用户帐户,并允许任何有效用户登录到计算机。而且,多个用户可以同时使用一台计算机。

为了维护哪些文件属于哪个用户的记录并实施某种安全性,Linux使用了所有权的概念。每个文件都属于一个所有者—一个用户和一个组。

创建文件时,其所有者是创建该文件的用户。文件属于“拥有”组的组是用户的当前组。用户和组有名称,它们也有数字标识,称为用户(或唯一)标识符(UID)和组标识符(GID)。

创建文件时,它归您所有,并且属于您当前的组。通常,这是您已登录的组。默认情况下,这是一个与您的用户名共享同一名称的组,是在您作为系统上的用户创建时创建的。

可以使用chown命令将所有权值更改为其他值。您可以设置新所有者、新组或同时设置新所有者和新组。文件的所有者可以更改组所有权,但只有root用户可以更改用户所有权,因为这涉及到另一个用户。如果没有root权限,就不能让系统上的其他用户无意中“采用”文件。

你为什么要改变所有权?

以下是一些您可能希望这样做的情况的示例:

  • 如果在不同的Linux或类Unix操作系统之间传输文件,则需要将用户和组所有者更改为要在新Linux计算机上使用文件的帐户的新用户和组所有者。
  • 用户可能会离开您的组织,他的所有文件都将由其他工作人员负责。您需要将所有者和组所有者更改为现在负责这些文件的工作人员。
  • 您可以编写将由特定用户使用的脚本。
  • 您可以创建以root用户身份登录的文件或目录,但希望特定用户可以访问它。

查看组、uid和gid

要列出您所在的组,可以使用groups命令。

groups

如何在linux上使用chown命令

要获取组的列表、它们的数字id以及您的UID和GID,请使用id命令:

id

如何在linux上使用chown命令

您可以使用一些ID为的选项来优化输出。

  • -u:列出你的UID。
  • -g:列出你的有效(当前)GID。
  • -列出你的用户名。
  • -ng:列出您当前的组名。
id -u id -g id -nu id -ng

如何在linux上使用chown命令

查看文件的用户和组所有权

要查看文件或目录的所有者,请将-l(长列表)选项与ls一起使用。

ls -l007Ys3FFgy1gp632w0cgxj30hy02pmx8

我们可以看到dave这个名字在列表中出现了两次。最左边的外观告诉我们文件所有者是一个名为dave的用户。最右边的dave告诉我们这个文件属于一个也叫dave的组。

默认情况下,创建Linux用户时,会将其添加到以用户名命名的私有组中。他们是那个团体中唯一的成员。

此可执行文件归用户mary所有,文件所属的组是mary的私有组。

ls -l

如何在linux上使用chown命令

此文件归用户oscar所有,但该文件所属的组称为researchlab。这意味着researchlab组的其他成员可以根据为该组成员设置的文件权限访问此文件。

007Ys3FFgy1gp632wu0ccj30hy02pdfw

更改用户所有权

我们来举几个例子。此命令将把while.c文件的用户所有权更改为用户mary。

sudo chown mary while.c

如何在linux上使用chown命令

我们可以使用ls来查看对文件属性的更改。

ls -l while.c

如何在linux上使用chown命令

可以使用chown一次更改多个文件的所有权。

sudo chown mary getval.c global.c goto.c

如何在linux上使用chown命令

这将更改所有三个文件的用户所有权。

ls -l getval.c global.c goto.c

如何在linux上使用chown命令

可以使用通配符选择文件组。此命令将更改以字母“c”开头的所有文件的用户所有权

sudo chown mary c*.*

所有的文件现在都将有玛丽作为它们的所有者。请注意,没有更改任何组所有权。

ls -l mary c*.*

如何在linux上使用chown命令

让我们更改目录的所有权。我们只需将目录名传递给chown而不是文件名。

sudo chown mary ./archive/

如何在linux上使用chown命令

要检查目录的所有权属性,我们使用ls,但也要使用-d(directory)选项。这将列出目录的属性,而不是其中的文件。

ls -l -d ./archive/

如何在linux上使用chown命令

要更改目录中所有文件的所有权,可以使用-R(递归)选项。此选项将更改存档文件夹中所有文件的用户所有权。

sudo chown -R mary ./archive/

如何在linux上使用chown命令

现在让我们看看归档目录中的文件。

ls -l ./archive/

如何在linux上使用chown命令

不出所料,所有的档案现在都属于玛丽了。

更改组所有权

有不同的方法可以更改组所有权。

要在更改用户所有权的同时更改组所有权,请用冒号“:”分隔新所有者名称和新组名称。组必须已存在。

sudo chown mary:researchlab charm.c

如何在linux上使用chown命令

文件所属的用户所有者和组都已更改。

ls -l charm.c

如何在linux上使用chown命令

要将组所有权更改为新所有者的当前组,只需提供冒号并省略组名。

sudo chown mary: caps.c

ls -l caps.c

如何在linux上使用chown命令

用户所有权和组所有权都已更改为mary。

要仅更改组所有权,请在其前面加一个冒号并省略用户名。不会更改用户所有者。

sudo chown :researchlab at.c

如何在linux上使用chown命令

ls -l at.c

如何在linux上使用chown命令

组所有权已更改,但用户所有权保持不变。

将chown与uid和gid值一起使用

可以通过chown命令使用数字UID和GID值。此命令将用户和组的所有权设置为mary。

sudo chown 1001:1001 at.c

如何在linux上使用chown命令

ls -l at.c

如何在linux上使用chown命令

占有是法律的十分之九

或者他们这么说。但在Linux中,所有权是文件安全的一个重要部分,其余部分由文件权限提供。使用chown和chmod命令保护系统上的文件访问。

 

  • 发表于 2021-04-03 05:00
  • 阅读 ( 163 )
  • 分类:互联网

你可能感兴趣的文章

40多个最常用的linux终端命令

... 在您真正充分利用终端之前,您需要知道如何导航它。这就是为什么我们认为这些是最基本的Linux命令:如果你不能更改目录或者在一个你不记得如何使用的命令上获得帮助,那么再多的终端知识也帮不了你。 ...

  • 发布于 2021-03-15 21:40
  • 阅读 ( 260 )

如何在linux上安装和使用powershell

... 在本文中,我将向您展示如何在Linux上安装、运行和使用PowerShell! ...

  • 发布于 2021-03-16 02:34
  • 阅读 ( 307 )

如何在linux和raspberry pi中安装usb闪存设备

...(可能是与数码相机一起使用的设备)时,系统会提示您如何继续操作。为了方便起见,我喜欢将设备打开到文件管理器中。 ...

  • 发布于 2021-03-17 16:00
  • 阅读 ( 201 )

解释了chmod命令和linux文件权限

... 无论如何,要学习的最基本的Linux命令之一是一个称为chmod的小而强大的命令。但是在解释这个命令的作用之前,我们必须先了解一下Linux是如何处理文件安全的。 ...

  • 发布于 2021-03-25 12:15
  • 阅读 ( 171 )

如何在linux中添加用户

想在Linux系统上添加用户但不知道如何添加?在Linux上使用命令行界面管理用户无疑是一项复杂的工作。而对于初学者来说,即使添加新用户也是一场噩梦。 ...

  • 发布于 2021-03-26 23:29
  • 阅读 ( 334 )

终极树莓皮命令备忘单

... 这就是为什么我们准备了这个方便的备忘单的日常使用树莓皮。 ...

  • 发布于 2021-03-30 18:59
  • 阅读 ( 246 )

如何使用受限shell来限制linux用户可以做什么

...改其目录,您可以控制他们可以访问哪些命令。下面介绍如何在Linux上设置受限shell。 受限炮弹 受限shell不是另一个shell。这是标准外壳的另一种模式。Bash、Korn、Fish和其他shell都可以在受限shell模式下启动。在本文中,我们将...

  • 发布于 2021-03-31 10:57
  • 阅读 ( 387 )

如何用testdisk恢复linux上删除的文件

...用,不需要对文件系统有详细、低级的了解。让我们看看如何使用它! 相关:你想知道的关于Linux上inodes的一切 安装测试盘 要在Ubuntu上安装testdisk,请使用以下命令: sudo apt-get install testdisk 在Fedora上,您需要键入: sudo dnf insta...

  • 发布于 2021-04-01 08:34
  • 阅读 ( 313 )

systemd将改变linux主目录的工作方式

...一个分支,它的创建完全是为了避免使用systemd。 相关:如何在Linux系统上管理Systemd服务 $home目录 在Linux目录结构中,您所做的一切都驻留在“/home”目录中。您的数据文件、图像、音乐和整个个人目录树都存储在这个以您的用...

  • 发布于 2021-04-02 04:05
  • 阅读 ( 204 )

如何在linux上使用suid、sgid和sticky位

...权限的人才能访问存储的密码,那么那些没有该权限的人如何更改他们的密码? 提升你的地位 通常,Linux命令和程序运行时与启动程序的人具有相同的权限集。当root运行passwd命令以更改密码时,它将以root的权限运行。这意味着...

  • 发布于 2021-04-02 14:48
  • 阅读 ( 174 )

相关推荐