如何更改linux文件的拥有者及用户组
在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。对于文件的权限请参考《Linux的chmod命令》
创新互联建站坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10余年网站建设经验创新互联建站是成都老牌网站营销服务商,为您提供网站制作、网站设计、网站设计、html5、网站制作、品牌网站制作、小程序定制开发服务,给众多知名企业提供过好品质的建站服务。
文件(含文件夹,下同)的权限,在shell中可以通过chmod命令来完成,关于此请参考《Linux的chmod命令》。在
shell
中,可以使用chown命令来改变文件所有者及用户组,chgrp命令来改变文件所在用户组。在
Linux的C程序中,可以使用chown函数来改变文件所有者,及所在用户组。
另外,在shell中,要修改文件当前的用户必须具有管理员root的权限。可以通过su命令切换到root用户,也可以通过sudo获得root的权限。
二、使用chown命令更改文件拥有者
在
shell
中,可以使用chown命令来改变文件所有者。chown命令是change
owner(改变拥有者)的缩写。需要要注意的是,用户必须是已经存在系统中的,也就是只能改变为在
/etc/passwd这个文件中有记录的用户名称才可以。
chown命令的用途很多,还可以顺便直接修改用户组的名称。此外,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上
-R的参数即可。
基本语法:
chown
[-R]
账号名称
文件或目录
chown
[-R]
账号名称:用户组名称
文件或目录
参数:
-R
:
进行递归(
recursive
)的持续更改,即连同子目录下的所有文件、目录
都更新成为这个用户组。常常用在更改某一目录的情况。
示例1:
[root@localhost
home]#
touch
testfile
//由
root
用户创建文件
[root@localhost
home]#
ls
testfile
–l
-rw--w--w-
1
root
root
Jun
7
19:35
testfile
//文件的拥有者及拥有者级均为
root
[root@localhost
home]#
chown
yangzongde
testfile
//修改文件拥有者为
yangzongde
[root@localhost
home]#
ls
testfile
-l
-rw--w--w-
1
yangzongde
root
Jun
7
19:35
testfile
//查看文件拥有者为
yangzongde,但组仍为
root
示例2:
chown
bin
install.log
ls
-l
-rw-r--r--
1
bin
users
68495
Jun
25
08:53
install.log
chown
root:root
install.log
ls
-l
-rw-r--r--
1
root
root
68495
Jun
25
08:53
install.log
三、使用chgrp命令更改文件所属用户组
在shell中,可以使用chgrp命令来改变文件所属用户组,该命令就是change
group(改变用户组)的缩写。需要注意的是要改变成为的用户组名称,必须在
/etc/group里存在,否则就会显示错误。
基本语法:
chgrp
[-R]
用户组名称
dirname/filename
...
参数:
-R
:
进行递归(
recursive
)的持续更改,即连同子目录下的所有文件、目录
都更新成为这个用户组。常常用在更改某一目录的情况。
linux系统下怎么修改文件所属用户和组?
linux怎么修改文件所属用户和组
在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组别;或者在root用户下,这样可以修改任何文件的拥有者及用户组。
而修改文件所属用户和组,需要用到chown命令。
chown 命令,可以认为是 "change owner" 的缩写,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件(或目录)的所属组。
当只需要修改所有者时,可使用如下 chown 命令的基本格式:
-R(注意大写)选项表示连同子目录中的所有文件,都更改所有者。
当只需要修改所属组时,可使用如下 chown 命令的基本格式:
如果需要同时更改所有者和所属组,chown 命令的基本格式为:
注意,在 chown 命令中,所有者和所属组中间也可以使用点(.),但会产生一个问题,如果用户在设定账号时加入了小数点(例如 zhangsan.temp),就会造成系统误判。因此,建议大家使用冒号连接所有者和所属组。
当然,chown 命令也支持单纯的修改文件或目录的所属组,例如 chown :group install.log 就表示修改 install.log 文件的所属组,但修改所属组通常使用 chgrp 命令,因此并不推荐大家使用 chown 命令。
另外需要注意的一点是,使用 chown 命令修改文件或目录的所有者(或所属者)时,要保证使用者用户(或用户组)存在,否则该命令无法正确执行,会提示 "invalid user" 或者 "invaild group"。
chown命令的使用示例
1、更改文件的所属者
首先我们使用ls -l命令来查看一下文件的所属,例:
下面我们使用chown命令来更改该tmpfile文件的所属者
然后再使用ls -l命令来查看一下该tmpfile文件的所属
可以看出:该tmpfile文件的所属者从“himanshu”变为了“root”
2、更改文件组
通过chown命令,也可以更改组(文件所属的组别)。
使用以下命令来更改文件所属的组别:
然后使用ls -l命令来查看一下该tmpfile文件的所属
也可以直接一次性更改文件的所属者和组别为root,需要使用以下命令:
linux修改用户所属组及其文件所属组
1、打开自己的linux系统。
2、接着打开“终端”命令窗口。
3、接着修改一个文件的所有者和组别,首先先看看这个文件的所属。
4、接着输入一下命令chown root music,先修改文件的所有者。注意修改文件的时候必须在root用户下。
5、再接着查看文件的所有者是否被修改成功。
6、然后输入chgrp root music命令,来修改文件的用户组。
7、最后再查看一下文件的用户组也被修改了。
linux 如何修改所有者不是自己的文件权限
解决的方法和操作步骤如下:
1、首先,打开Linux系统,创建目录,并使用命令mkdir
ceshi创建一个文件夹,如下图所示,然后进入下一步。
2、其次,完成上述步骤后,检查此文件夹的权限,如下图所示,然后进入下一步。
3、接着,完成上述步骤后,此ceshi文件的用户组linuxadmin,修改用户组的权限chgrp
root ceshi,如下图所示,然后进入下一步。
4、然后,完成上述步骤后,chmod -R
a + w修改ceshi文件夹的权限,如下图所示,然后进入下一步。
5、随后,完成上述步骤后,chown更改文件夹所有者,将chown所有者用作bin,如下图所示,然后进入下一步。
6、最后,完成上述步骤后,可以使用[man]
chgrp,chown和chmod来检查权限,如下图所示。这样,问题就解决了。
如何更改linux文件目录拥有者及用户组
更改Linux文件目录的拥有者可以用chown命令,chown的意思就是change owner,它的用法是:
chown 用户名:用户组名 文件或目录
用户名是需要修改成哪个用户所有,用户组名是修改成哪个用户组(厉害不,还能修改所属用户组),注意用户名和组名之间的那个冒号是英文冒号,后面接着是需要修改的文件或目录,一个示例:
chown root:root /home/mydir
示例将/home/mydir目录的拥有者修改为root,所属用户组修改为root用户组。
如果只想修改拥有者呢,那只给出一个用户名就可以了,就像下面这样:
chown root /home/testfile
注意:chown有一个选项,对于修改目录的所有者很有用,那就是-R选项,-R选项表示递归修改,就是连目录下的子目录里面的所有文件、目录都修改所有者。
如果只想修改文件或目录所属用户组呢,那可以用chgrp命令,用法和chown类似:
chgrp 用户组 文件或目录
chgrp命令也有一个-R选项噢,和chown的-R选项用法一样,都是用于目录。
说说在 Linux 中如何修改某个文件拥有者
修改某个文件的拥有者,最常见的应用场景是在复制文件给其他人时 1 。
假设原来在 vagrant 账号下有一个 deniro.txt 文件:
这时我们使用 cp 命令( cp deniro.txt deniro_copy.txt ),把这个文件复制一份给其他人:
可以看到,这个新的 deniro_copy.txt 文件,它的拥有者以及拥有组名都为 vagrant。
如果我们把这个文件给其他账号,他们如果没有权限,根本无法使用。
解决这一问题的方法之一是使用 chgrp 命令修改这个新文件所在的组 2 。
这里我们采用另一种方法:修改这个新文件的拥有者。这会用到 chown 命令。Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令 3 。
chown 命令格式为: chown [-R] user[:group] file
比如我们想把新的 deniro_copy.txt 文件的拥有者改为 operator、组名修改为 tty,那么可以执行命令 chown operator:tty deniro_copy.txt (可能需要权限高的账号来执行该命令):
参考资料:
【1】鸟哥. 鸟哥的Linux私房菜 基础学习篇[M]. 第四版. 北京: 人民邮电出版社,2018:212-213.
【2】 说说在 Linux 中如何修改某个文件所属群组 .
【3】 Linux chown 命令 .
分享标题:linux修改所有者命令 linux如何修改文件的所有者
文章链接:http://scgulin.cn/article/dooechd.html