linux文件所有者|如何更改linux文件目录拥有者及用户组

linux文件所有者|如何更改linux文件目录拥有者及用户组的第1张示图

A. linux文件权限命令

有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。

每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。例如:

$ ls-l sobsrc.tgz

-rw-r–r–1root root483997Ju1l517:3lsobsrc.tgz

横线代表空许可。r代表只读,w代表写,x代表可执行。注意这里共有10个位置。第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。例如:

– rw- r– r–

普通文件 文件主 组用户 其他用户

是文件sobsrc.tgz 的访问权限,表示sobsrc.tgz是一个普通文件;sobsrc.tgz的属主有读写权限;与sobsrc.tgz属主同组的用户只有读权限;其他用户也只有读权限。

确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。

下面分别对这些命令加以介绍。

chmod 命令

chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。

以主文件夹下的一个名为“cc”的文件夹为例。下面一步一步介绍如何修改权限:

1.打开终端。输入”su”(没有引号)

2.接下来会要你输入密码,输入你的root密码。

3.假设我的文件夹在主目录里,地址为 /var/home/dengchao/cc 。假设我要修改文件权限为777,则在终端输入 chmod 777 /var/home/userid/cc 文件夹的权限就变为了777。

如果是修改文件夹及子文件夹权限可以用 chmod -R 777 /var/home/userid/cc

具体的权限(例如777的含意等)在下面解释下:

1.777有3位,最高位7是设置文件所有者访问权限,第二位是设置群组访问权限,最低位是设置其他人访问权限。

其中每一位的权限用数字来表示。具体有这些权限:

r(Read,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限。

w(Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

x(eXecute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

2. 首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为7时,7用“rwx”表示 –{4(r)+2(w)+1(x)=7}–又如果数值为6,则用“rw-”表示–{4(r)+2(w)+0(x)=6}–,”-”表示不具备权限,这里表 示不具备“执行”权限。

假如我们设定其他用户的访问权限为 “r–”,则数值为4+0+0=4

一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则用1表示,没有则有0表示,那么rwx则可以表示成为:111

而二进制的111就是7。

3.我们再来看下怎么确定3个数位上的权限。假如我们要给一个文件设置权限,具体权限如下:

文件所有者有“读”、“写”、“执行”权限,群组用户有“读”权限,其他用户有“读”权限,则对应的字母表示为”rwx r– r–“,对应的数字为744

一般都是最高位表示文件所有者权限值,第二位表示群组用户权限,最低位表示其他用户权限。

下面来举些例子熟悉下。

权限 数值

rwx rw- r– 764

rw- r– r– 644

rw- rw- r– 664

该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

1. 文字设定法

chmod [who] [+ | – | =] [mode] 文件名¼

命令中各选项的含义为:

操作对象who可是下述字母中的任一个或者它们的组合:

u 表示“用户(user)”,即文件或目录的所有者。

g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

o 表示“其他(others)用户”。

a 表示“所有(all)用户”。它是系统默认值。

操作符号可以是:

+ 添加某个权限。

– 取消某个权限。

= 赋予给定权限并取消其他所有权限(如果有的话)。

设置mode所表示的权限可用下述字母的任意组合:

r 可读。

w 可写。

x 可执行。

X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。

s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。

t 保存程序的文本到交换设备上。

u 与文件属主拥有一样的权限。

g 与和文件属主同组的用户拥有一样的权限。

o 与其他用户拥有一样的权限。

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

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

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

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

–help:显示辅助说明

–version:显示版本

文件名:以空格分开的要改变权限的文件列表,支持通配符。在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example使同组和其他用户对文件example 有读权限。

例1:

$ chmod a+x sort

即设定文件sort的属性为:

文件属主(u) 增加执行权限

与文件属主同组用户(g) 增加执行权限

其他用户(o) 增加执行权限

例2:

$ chmod ug+w,o-x text

即设定文件text的属性为:

文件属主(u) 增加写权限

与文件属主同组用户(g) 增加写权限

其他用户(o) 删除执行权限

例3:

$ chmod u+s a.out

假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):

–rws–x–x1inin users7192Nov414:22a.out

并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw——-”,即该文件只有其属主具有读写权限。

当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限),这就是s的功能。

因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。

例4:

$ chmod a–x mm.txt

$ chmod–x mm.txt

$ chmod ugo–x mm.txt

以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。

2. 数字设定法

我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

数字设定法的一般形式为:chmod [mode] 文件名¼

例1:

$ chmod644mm.txt

$ ls–l

即设定文件mm.txt的属性为:

-rw-r–r–1inin users1155Nov511:22mm.txt

文件属主(u)inin 拥有读、写权限

与文件属主同组人用户(g) 拥有读权限

其他人(o) 拥有读权限

例2:

$ chmod750wch.txt

$ ls–l

-rwxr-x—1inin users44137Nov129:22wchtxt

即设定wchtxt这个文件的属性为:

文件主本人(u)inin 可读/可写/可执行权

与文件主同组人(g) 可读/可执行权

其他人(o) 没有任何权限

chgrp命令

功能:改变文件或目录所属的组。

语法:chgrp[选项] group filename¼

参数:

-c或–changes 效果类似”-v”参数,但仅回报更改的部分。

-f或–quiet或–silent 不显示错误信息。

-h或–no-dereference 只对符号连接的文件作修改,而不更动其他任何相关文件。

-R或–recursive 递归处理,将指定目录下的所有文件及子目录一并处理。

-v或–verbose 显示指令执行过程。

–help 在线帮助。

–reference=<参考文件或目录> 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。

–version 显示版本信息。

该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。

该命令的各选项含义为:

– R 递归式地改变指定目录及其下的所有子目录和文件的属组。

例1:

$chgrp-R book/opt/local/book

改变/opt/local /book/及其子目录下的所有文件的属组为book。

chown命令

功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户yusi,为了让用户yusi能够存取这个文件,root用户应该把这个文件的属主设为yusi,否则,用户yusi无法存取这个文件。

语法:chown[选项] 用户或组 文件

说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。

参数说明:

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

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

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

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

-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案

-v : 显示拥有者变更的详细资料

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

–help : 显示辅助说明

–version : 显示版本

例1:把文件yusi123.com的所有者改为yusi。

$chownyusi yusi123.com

例2:把目录/demo及其下的所有文件和子目录的属主改成yusi,属组改成users。

$ chown-R yusi.users/demo

例如:chown qq /home/qq (把home目录下的qq目录的拥有者改为qq用户)

例如:chown -R qq /home/qq (把home目录下的qq目录下的所有子文件的拥有者改为qq用户)

B. Linux下更改一个文件的所有者,

chown -R 用户组:用户 /etc/hosts

C. 如何在linux上修改文件的所有者

可以使用chmod这个命令例如:chmodroot.root/tmp/file.txt第一个root表示修改文件的属主第二个root表示修改文件的属组

D. Linux怎样查看某个文件下有几个拥有者

linux的每个文件和文件夹都有它的所有者和所属的组,这样是为了控制文件或文件夹的权限(读写和操作三个权限)。1、用ll 命令展示一个文件或文件夹的时候,你可以看到前面有是一个十位的字符串,第一个判断是文件还是文件夹,2-4这三个是所有者的读写执行权限,5-7是组内其他成员的读写执行权限,8-10是其他用户的读写执行权限。2、改变文件或文件夹的所有者和组,方法如下:chown -R 用户名:组名 文件 (R表示改变文件夹下所有文件的用户和组)

E. Linux如何查看一个文件的所有者以及查看文件属于的哪个组

一、linux中查看文件夹大小及所属用户组

命令使用示例:

1.要显示一个目录树及其每个子树的磁盘使用情况

-h /home/linux #-h 自动根据大小以k、m、g为单位显示,提高信息的可读性。kb、mb、gb是以1024为换算单 位, -h以1000为换算单位。

#若省略/home/linux路径目录,则显示当前目录的; -sh /home/linux#-s 仅显示总计,即显示路径目录或当前目录的总大小。

2.查看当前目录下所有目录以及子目录的大小:

-h .#“.”代表当前目录下。也可以换成一个明确的路径,#-h表示自动用K、M、G的人性化形式显示

3.查看当前目录下user目录的大小,并不想看其他目录以及其子目录:

-sh user#-s表示总结的意思,即只列出一个总结的值。

-h –max-depth=0 user–max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。

4.列出user目录及其子目录下所有目录和文件的大小:

-ah user#-a表示包括目录和文件。

5.列出当前目录中的目录名不包括xyz字符串的目录的大小:

-h –exclude=’*xyz*’。

6.想在一个屏幕下列出更多的关于user目录及子目录大小的信息:

-0h user#-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。

F. LINUX 如何对文件分配权限 权限分别是什么

在Linux中,权限的所有者分为用户权限,组权限和其他权限,分别是用字母u, g, o 代表权限分为:读 r , 写 w , 执行 x。

比如看到了,你一个文件夹1个的权限是: rwxr-xr-x 这个权限的意思是这个文件夹的所有者用户是完全控制(第一段rwx),这个文件夹的所属组用户的权限是读取和执行(第二段r-x),这个文件夹的对于其他用户来说是读取和执行(第三段r-x)。

这些权限都可以用数字来表示:r 4, w 2 , x 1, 那么上边的权限就是755 (一段一段的加和)更改权限的命令是chmod。

想这对文件夹/test设置权限,希望是test文件夹的所属用户完全控制,所属组和其他用户只能读取和执行。

(6)linux文件所有者扩展阅读:

HFS+卷使用分配文件有以下几点优势:

1、使用文件允许分配文件为其自身分配存储块,这种方式相对简单得多,因为这样卷就只有一种块类型——分配块。HFS之所以复杂是因为它使用扇区来存储分配位图,用分配块来存储文件。

2、分配文件可以是不连续的,允许分配信息和用户数据交叉存取。许多现代的文件系统都采取这种方式以减少文件增大的过程中的磁头运动行程。

3、分配文件可以扩展。因为分配文件的可扩展性,所以很容易增加磁盘上的分配块的数量。这无论是对于想减小分配块的大小还是扩大整个磁盘的空间都是非常有用的。

4、分配文件的可收缩性。可以为不同大小的卷创建适当的镜像,回写至磁盘时,即便磁盘很大,也可以建立足够的分配文件数据;如果写入较小的磁盘,分配文件又可以收缩至适当的大小。

G. linux如何给文件权限

chmod -R 755 文件夹名 ,一般加这个权限就好了。第一个数字表示根用户有读写执行权限,第二个表示组用户有读和执行的权限,第三个是其他用户有读和执行的权限。一、访问权限访问权限分为读(read)、写(write)、执行(execute)三种,并且涉及到文件所有者(user)、文件所属组(group)、其他人(other)三个主体。选取上图红框中的两行为例,结合下面的表格先讲一下基本结构:第一位表示文件类型第二~十位表示权限:每三位一组,共三组,分别表示三个主体对应的三种权限对照表格可以知道drwxr-xr-x表示:d为目录文件文件所有者可读、可写、可执行(rwx:可读r、可写w、可执行x)文件所属组可读、可执行(r-x:可读r、不可写-、可执行x)其他人可读、可执行(r-x:可读r、不可写-、可执行x)-rw-r–r–表示:-为普通文件文件所有者可读、可写(rw-:可读r、可写w、不可执行-)文件所属组可读(r–:可读r、不可写-、不可执行-)其他人可读(r–:可读r、不可写-、不可执行-)二、修改权限如何修改权限?一般有两种方法:文字法:chmod [who][operator][permission] <file-name>数字法:chmod xxx <file-name>1.文字法:[who]:表示要修改的主体,u:用户(user),即文件所有者:创建文件的人g:同组用户(group),即文件所属组:与文件属主有相同组ID的所有用户o:其他用户(others),即其它人:与文件无关的人a:所有用户(all),它是系统默认值[operator]:表示进行哪种修改操作,+:添加某个权限-:取消某个权限=:赋予给定权限并取消其他所有权限(如果有的话)[permission]:表示要设置的权限,r:可读w:可写x:可执行2.数字法:xxx表示数字属性,格式为3个从0到7的数,其对应的主体顺序是u g o,将对应主体位上的所有权值分别相加就可以得到这个三位数了。4表示可读权限2表示可写权限1表示可执行权限0表示没有权限相加后的值表示的意义如下:7=4+2+1 表示可读可写可执行6=4+2 表示可读可写5=4+1 表示可读可执行3=2+1 表示可写可执行例1:chmod 755 <file-name>表示将文件<file-name>的权限修改为:u(文件所有者) 可读可写可执行g(文件所属组) 可读可执行o(其它人) 可读可执行这种修改用第一种方式来写就是(假设文件之前没任何权限)(如果有权限这样写也可以,只是太繁琐):chmod a+rx,u+w <file-name>或chmod ugo+rx,u+w <file-name>或chmod u+rwx,go+rx <file-name>另外,如果原来文件已经有权限,如-rw-r–r–,则用第一种方式来写如下:chmod ugo+x <file-name>或chmod a+x <file-name>如果原来文件已经有权限,如drwxrwxrwx,则用第一种方式来写如下:chmod go-w <file-name>例2:chmod 777 <file-name>表示将文件<file-name>的权限修改为:a(所有人)可读可写可执行这种修改用第一种方式来写就是(假设文件之前没任何权限)(如果有权限这样写也可以,只是太繁琐):chmod a+rwx <file-name>或chmod ugo+rwx <file-name>另外,如果原来文件已经有权限,如drwxr-xr-x,则用第一种方式来写如下:chmod go+w <file-name>

H. 如何更改linux文件目录拥有者及用户组

你好,具体修改操作步骤如下:一、《Linux的chmod命令》。在 shell 中,可以使用命令来改变文件所有者及用户组,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 )的持续更改,即连同子目录下的所有文件、目录都更新成为这个用户组。常常用在更改某一目录的情况。 [[email protected] home]# touch testfile //由 root 用户创建文件 [[email protected] home]# ls testfile –l -rw–w–w- 1 root root 0 Jun 7 19:35 testfile //文件的拥有者及拥有者级均为 root [[email protected] home]# chown yangzongde testfile //修改文件拥有者为 yangzongde [[email protected] home]# ls testfile -l -rw–w–w- 1 yangzongde root 0 Jun 7 19:35 testfile //查看文件拥有者为 yangzongde,但组仍为 root三、使用chgrp命令更改文件所属用户组在shell中,可以使用chgrp命令来改变文件所属用户组,该命令就是change group(改变用户组)的缩写。需要注意的是要改变成为的用户组名称,必须在 /etc/group里存在,否则就会显示错误。基本语法:chgrp [-R] 用户组名称 dirname/filename …参数:-R : 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录都更新成为这个用户组。常常用在更改某一目录的情况。[[email protected] home]# ls testfile -l -rw–w–w- 1 yangzongde root 0 Jun 7 19:35 testfile //查看文件拥有者为 yangzongde,但组为 root [[email protected] home]# chgrp yangzongde testfile //修改拥有者组为 yangzongde [[email protected] home]# ls testfile -l -rw–w–w- 1 yangzongde yangzongde 0 Jun 7 19:35 testfile [[email protected] home]# chown root:root testfile // 使用 chown 一次性修改拥有者及组 [[email protected] home]# ls testfile -l -rw–w–w- 1 root root 0 Jun 7 19:35 testfile

I. linux系统,如果一个文件夹的权限设置为drwxrwxrwx,这是什么意思呢

意思是文件夹的所有者,所属组,和其他人对这个文件夹都具有完全的控制权限,包含可读可写和可执行的权限。

例如:drwxrwxrwx2rootroot409611月816:38excel

共显示了七列信息,从左至右依次为:权限、文件数、归属用户、归属群组、文件大小、创建日期、文件名称。

rwx :第2-4位表示这个文件的属主拥有的权限。r是读、w是写、x是执行 ,r-x :第5-7位表示和这个文件属主所在同一个组的用户所具有的权限 ,r-x :第8-10位表示其他用户所具有的权限。

(9)linux文件所有者扩展阅读:

常用的linux文件权限:444r–r–r–,755drwxr-xr-x,777drwxrwxrwx。

从左至右,1-3位数字代表文件所有者的权限,4-6位数字代表同组用户的权限,7-9数字代表其他用户的权限。一共有10位数,其中:最前面那个 – 代表的是类型,中间那三个 rw- 代表的是所有者(user),然后那三个 rw- 代表的是组群(group),最后那三个 r– 代表的是其他人(other)。

J. 如何更改linux文件的拥有者及用户组

在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。对于文件的权限请参考《Linux的chmod命令》文件(含文件夹,下同)的权限,在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:[[email protected] home]# touch testfile //由 root 用户创建文件 [[email protected] home]# ls testfile –l -rw–w–w- 1 root root 0 Jun 7 19:35 testfile //文件的拥有者及拥有者级均为 root [[email protected] home]# chown yangzongde testfile //修改文件拥有者为 yangzongde [[email protected] home]# ls testfile -l -rw–w–w- 1 yangzongde root 0 Jun 7 19:35 testfile //查看文件拥有者为 yangzongde,但组仍为 root 示例2:chown bin install.logls -l-rw-r–r– 1 bin users 68495 Jun 25 08:53 install.logchown root:root install.logls -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文件目录拥有者及用户组

赞 (0)