首页编程chown?Chown是什么意思

chown?Chown是什么意思

编程之家2023-11-0773次浏览

在这个信息爆炸的时代,了解chown和Chown是什么意思的重要性不言而喻。本文将为您带来全面的解读,助您在这个领域中游刃有余。

chown?Chown是什么意思

linux命令chown怎么用

chown [-cfhvR] [--help] [--version] user[:group] file...

user:新的档案拥有者的使用者 ID group:新的档案拥有者的使用者群体(group)-c:若该档案拥有者确实已经更改,才显示其更改动作-f:若该档案拥有者无法被更改也不要显示错误讯息-h:只对于连结(link)进行变更,而非该 link真正指向的档案-v:显示拥有者变更的详细资料-R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)--help:显示辅助说明--version:显示版本

chown 命令使用方法

Linux 系统上的每个文件和目录均由某个人拥有,拥有者可以完全控制更改或删除他们拥有的文件。除了有一个拥有用户外,文件还有一个拥有组。

你可以使用 ls-l 命令查看文件的所有权:

chown?Chown是什么意思

[pablo@workstation Downloads]$ ls-l

total 2454732

-rw-r--r--. 1 pablo pablo 1934753792 Jul 25 18:49 Fedora-Workstation-Live-x86_64-30-1.2.iso

chown?Chown是什么意思

该输出的第三和第四列是拥有用户和组,它们一起称为所有权。上面的那个 ISO文件这两者都是 pablo。

所有权设置由 chmod命令进行设置,控制允许谁可以执行读取、写入或运行的操作。你可以使用 chown命令更改所有权(一个或两者)。

所有权经常需要更改。文件和目录一直存在在系统中,但用户不断变来变去。当文件和目录在系统中移动时,或从一个系统移动到另一个系统时,所有权也可能需要更改。

我的主目录中的文件和目录的所有权是我的用户和我的主要组,以 user:group的形式表示。假设 Susan正在管理 Delta组,该组需要编辑一个名为 mynotes的文件。你可以使用 chown命令将该文件的用户更改为 susan,组更改为 delta:

$ chown susan:delta mynotes

ls-l

-rw-rw-r--. 1 susan delta 0 Aug  1 12:04 mynotes

当给该文件设置好了 Delta组时,它可以分配回给我:

$ chown alan mynotes

$ ls-l mynotes

-rw-rw-r--. 1 alan delta 0 Aug  1 12:04 mynotes

给用户后添加冒号(:),可以将用户和组都分配回给我:

$ chown alan: mynotes

$ ls-l mynotes

-rw-rw-r--. 1 alan alan 0 Aug  1 12:04 mynotes

通过在组前面加一个冒号,可以只更改组。现在,gamma组的成员可以编辑该文件:

$ chown:gamma mynotes

$ ls-l

-rw-rw-r--. 1 alan gamma 0 Aug  1 12:04 mynotes

chown的一些附加参数都能用在命令行和脚本中。就像许多其他 Linux命令一样,chown有一个递归参数(-R),它告诉该命令进入目录以对其中的所有文件进行操作。没有-R标志,你就只能更改文件夹的权限,而不会更改其中的文件。在此示例中,假定目的是更改目录及其所有内容的权限。这里我添加了-v(详细)参数,以便 chown报告其工作情况:

$ ls-l. conf

.:

drwxrwxr-x 2 alan alan 4096 Aug  5 15:33 conf

conf:

-rw-rw-r-- 1 alan alan 0 Aug  5 15:33 conf.xml

$ chown-vR susan:delta conf

changed ownership of'conf/conf.xml' from alan:alan to  susan:delta

changed ownership of'conf' from alan:alan to  susan:delta

根据你的角色,你可能需要使用 sudo来更改文件的所有权。

在更改文件的所有权以匹配特定配置时,或者在你不知道所有权时(例如运行脚本时),可以使用参考文件(--reference=RFILE)。例如,你可以复制另一个文件(RFILE,称为参考文件)的用户和组,以撤消上面所做的更改。回想一下,点(.)表示当前的工作目录。

$ chown-vR--reference=. conf

报告更改

大多数命令都有用于控制其输出的参数。最常见的是-v(--verbose)以启用详细信息,但是 chown还具有-c(--changes)参数来指示 chown仅在进行更改时报告。chown还会报告其他情况,例如不允许进行的操作。

参数-f(--silent、--quiet)用于禁止显示大多数错误消息。在下一节中,我将使用-f和-c,以便仅显示实际更改。

保持根目录

Linux文件系统的根目录(/)应该受到高度重视。如果命令在此层级上犯了一个错误,则后果可能会使系统完全无用。尤其是在运行一个会递归修改甚至删除的命令时。chown命令具有一个可用于保护和保持根目录的参数,它是--preserve-root。如果在根目录中将此参数和递归一起使用,那么什么也不会发生,而是会出现一条消息:

$ chown-cfR--preserve-root alan/

chown: it is dangerous to operate recursively on'/'

chown: use--no-preserve-root to override this failsafe

如果不与--recursive结合使用,则该选项无效。但是,如果该命令由 root用户运行,则/本身的权限将被更改,但其下的其他文件或目录的权限则不会更改:

$ chown-c--preserve-root alan/

chown: changing ownership of'/': Operation not permitted

[root@localhost/]# chown-c--preserve-root alan/

changed ownership of'/' from root to alan

所有权即安全

文件和目录所有权是良好的信息安全性的一部分,因此,偶尔检查和维护文件所有权以防止不必要的访问非常重要。chown命令是 Linux安全命令集中最常见和最重要的命令之一。

chmod 和 chown的作用与区别

     [-cfvR]的解释:

        -c:若该档案权限确实已经更改,才显示其更改动作 

        -f:若该档案权限无法被更改也不要显示错误讯息 

        -v:显示权限变更的详细资料 

        -R:对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更) 

        --help:显示辅助说明 

  --version:显示版本

    命令的用法:

        语法格式:chmod [who] [opt] [mode]文件/目录名

        其中who表示对象,是以下字母中的一个或组合:

             u:表示文件所有者

             g:表示同组用户

             o:表示其他用户

             a:表示所有用户

         opt则代表操作,可以为:+:添加某个权限-:取消某个权限=:赋予给定的权限,并取消原有的权限

         mode则代表权限: r:可读  w:可写  x:可执行

        例如:为同组用户增加对文件a.txt的读写权限:chmod g+rw a.txt

        语法格式:chmod [mode]文件名 或者 chmod UPO file  分别表示User、Group、other的权限

        -rw-------(600)--只有属主有读写权限

        -rw-r--r--(644)--只有属主有读写权限;而属组用户和其他用户只有读权限

               -rwx------(700)--只有属主有读写执行权限

                -rwxrwxrwx(777)--所有用户都有读、写、执行权限

                -rwxrwx---(770)--只有属主和属组用户有读、写、执行权限

        例如:1.把hh.c文件修改为可写可读可执行

                        chmod 777 hh.c

         2.要修改某目录下所有的文件属性为可写可读可执行, 把文件夹名称与后缀名用*来代替就可以

                        chmod 777*.*

        3.同理若是要修改所有htm文件的属性

             chmod 777*.htm

                4.把目录/tmp/sco修改为可写可读可执行

                        chmod 777/tmp/sco

         5.要修改某目录下所有的文件夹属性为可写可读可执行, 把文件夹名称用*来代替就可以了

                        chmod 777*

         6.要修改/tmp/sco下所有的文件和文件夹及其子文件夹属性为可写可读可执行

                        chmod-R 777/tmp/sco

            根据需要可以自由组合用户和组的权限

        使用方式: chown [-cfhvR] [--help] [--version] user[:group] file...

        chown修改文件的用户权限修改文件和文件夹的用户和用户组属性

        [-cfvR]诠释:----

        -c:若该档案权限确实已经更改,才显示其更改动作

        -f:若该档案权限无法被更改也不要显示错误讯息

        -v:显示权限变更的详细资料

        -R:对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)

        --help:显示辅助说明

        --version:显示版本

        user:新的档案拥有者的使用者的 ID

        group:新的档案拥有者的使用者群体(group)

                例1:chown root:root/tmp/tmp1

                就是把tmp下的tmp1的用户名和用户组改成root和root(只修改了tmp1的属组)。

                例2:chown-R root:root/tmp/tmp1

        就是把tmp下的tmp1下的所有文件的属组都改成root和root

Chown是什么意思

chown [-cfhvR] [--help] [--version] user[:group] file...

user:新的档案拥有者的使用者 ID group:新的档案拥有者的使用者群体(group)-c:若该档案拥有者确实已经更改,才显示其更改动作-f:若该档案拥有者无法被更改也不要显示错误讯息-h:只对于连结(link)进行变更,而非该 link真正指向的档案-v:显示拥有者变更的详细资料-R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)--help:显示辅助说明--version:显示版本

END,本文到此结束,如果可以帮助到大家,还望关注本站哦!

最新免费代理ip?永久免费的国内ip代理cps广告 cps推广是什么意思