当前位置:首页 » 操作系统 » linux设置用户文件权限

linux设置用户文件权限

发布时间: 2022-10-23 10:05:54

1. 在 linux 上给用户赋予指定目录的读写权限

在 Linux 上指定目录的读写权限赋予用户,有两种方法可以实现这个目标:第一种是使用 ACL (访问控制列表),第二种是创建用户组来管理文件权限,下面会一一介绍。为了完成这个教程,我们将使用以下设置:

请确认所有的命令都是使用 root 用户执行的,或者使用 sudo 命令来享受与之同样的权限。让我们开始吧!下面,先使用 mkdir 命令来创建一个名为 share 的目录。

1. 使用 ACL 来为用户赋予目录的读写权限

重要提示: 打算使用此方法的话,您需要确认您的 Linux 文件系统类型(如 ext3 和 ext4, NTFS, BTRFS)支持 ACL。

1.1. 首先, 依照以下命令在您的系统中检查当前文件系统类型,并且查看内核是否支持 ACL:

从下方的截屏可以看到,文件系统类型是 ext4,并且从 CONFIG_EXT4_FS_POSIX_ACL=y 选项可以发现内核是支持 POSIX ACL 的。

[图片上传失败...(image-c85622-1574572716190)]

1.2. 查看文件系统(分区)挂载时是否使用了 ACL 选项。

[图片上传失败...(image-bdb4d9-1574572716190)]

通过上边的输出可以发现,默认的挂载项目中已经对 ACL 进行了支持。如果发现结果不如所愿,你可以通过以下命令对指定分区(此例中使用 /dev/sda3)开启 ACL 的支持)。

1.3. 指定目录 share 的读写权限分配给名为 shenweiyan 的用户了,依照以下命令执行即可。

[图片上传失败...(image-dfb909-1574572716190)]

在上方的截屏中,通过输出结果的第二行 getfacl 命令可以发现,用户 shenweiyan 已经成功的被赋予了 /data/share 目录的读写权限。

如果想要获取 ACL 列表的更多信息。请参考:

2. 使用用户组来为用户赋予指定目录的读写权限

2.1. 如果用户已经拥有了默认的用户组(通常组名与用户名相同),就可以简单的通过变更文件夹的所属用户组来完成。

另外,我们也可以通过以下方法为多个用户(需要赋予指定目录读写权限的)新建一个用户组。如此一来,也就创建了一个共享目录。

2.2. 接下来将用户 shenweiyan 添加到 dbshare 组中:

2.3. 将目录的所属用户组变更为 dbshare:

2.4. 现在,给组成员设置读写权限。

ok,在 Linux 上给用户赋予指定目录的读写权限就介绍到这里 !

参考资料:

2. linux设置文件夹的权限为可读可执行

在 $提示符下面,输入如下命令即可:
$chmod 755 my_subdir
其中:7 表示文件所有者自己对文件夹(my_subdir)具有可读(4)、可写(2)、可执行(1)权限;随后的两个 5 分别表示同组用户、以及其他用户对 mysub_dir 子目录的权限分别为可读(4)、可执行(1)、但是不可写(2)。

3. linux设置文件的权限

文件的三个最基本的权限是读写执行
r,读,可以读取文件,对目录来说可以列出目录的文件列表
4
w,写,可以修改删除文件,对目录来说可以创建删除文件
2
x,执行,可以执行文件,对目录来说可以cd进入目录
1
注意点:目录上只有执行权限,则可以进入或者穿越此文件夹,但是要访问此文件夹下有读取权限的文件,则必须输入文件名,只有执行权限的文件夹,不能列出目录,也不能删除目录
特殊位,SUID,SGID,stickt-bit位,如果设置了SUID的可执行文件被执行的,文件将以所有者的身份来运行。SGID,意思同SUID,sticky-bit位,尽管其他用户有写权限,但是必须由属主执行删除和移动操作。子目录也只有属主可以操作。
权限设置命令
chmod,-R,递归,s表示SUID或者SGID,t表示stick-bit,
chown,改变用户属主和组,-R递归,加:则是改变组,不加是改变用户,
umask,设置文件默认生成编码,就是创建一个新文件的时候的默认权限,-S查看默认权限。
find,查找文件,<起始目录><选项表达式><条件匹配表达式><动作表达式>
选项表达式,-follow,遇到符号链接则跟踪符号链接。-regextype指定-regex和-iregex使用的正则表达式的类型,-depth,查找子目录之前先查找完当前目录,-mount,不跨越文件系统,-xdev,同-mount,-maxdepth,最大深度查询,
条件匹配表达式,-name
匹配文件名
-iname匹配文件名不区分大小写,
-lname匹配符号链接文件名,
-ilname匹配符号链接文件名不区分大小写,-path路径,-regex,正则匹配,-iregex,正则匹配,不区分大小写,-amin
N查找N分钟之前被访问过的所有文件,-atime
N
查找N天之前被访问的文件,-cmin,和-ctime是文件状态被修改过的(比如权限),-mmin和-mtime是文件内容被修改过的,-uid
N查找uid是N的文件,-gid,查找gid是N的所有的文件,-inum,查找i-node是N的文件,-links
N,查找硬链接为N的文件,-size
N[bcwkMG]按照大小查找,-perm
MODE按照权限查找,
-perm
-MODE,按照最低权限查找,
-anewer
file,查找比file访问时间新的文件,
-cnewer查找比fule新的修改时间的文件,
-newer
file查找比file新的内容修改过的文件,
-fstype指定类型的文件系统,-type指定文件类型,-empty内容为空,-user
NAME,按照用户查找,-group按照组查找,-nouser,文件不属于/etc/passwd中的用户,-nogroup,文件不属于/etc/group中的组
动作表达式,-print,每行一个文件,-print0取消间隔符。
grep
[options]
PATTERN
[FIFL...]所有文本内容,把匹配的行打印出来,-c只显示匹配的次数,-i搜索时不区分大小写,-n匹配行的行号,-v输出不匹配的行,-A同时显示匹配到的行后面的N行,-B匹配输出行前面几行,-C匹配输出行前后各几行,

4. linux修改文件用户权限

chmod 可以更改权限 前三个属于用户 中间三个属于租 后面三个属于其他 读写执行 例如给用户所有权限给组读权限 chmod 740 a.txt 具体可以看看《linux就该这么学》

5. 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=&lt;参考文件或目录&gt; 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。

  • –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用户)

6. linux怎么更改文件权限

Linux是多用户系统,所以权限设置比较严格,文件权限一共有九位表示,加上地一个文件类型一共是十个比如“----------”,除开第一位,每三位表示一个权限,分别是所属人,所属人的组,所有人,每三位用来表示读,写,执行的权限,分别用字母 r,w,x表示 假如一个文件的权限是只准所属人读写执行,其他人只准读,那么它的权限表示应该是-rwxr--r--,如果所有人都有读写执行的权限,那么应该是-rwxrwxrwx,需要注意的是第一个-是表示文件类型,在此不作讨论,放空就是了 设置文件权限要注意:读用数字4表示,写用2表示,执行用1表示,设置权限前需要算好总和 比如需要设置读写的权限就是读+写=4+2=6,设置读写执行所有权限就是读+写+执行=4+2+1=7,不设置用0表示,哦,忘记说了,设置权限用chmod命令 用法:chmod [权限表示的数字] 文件名 比如:chmod 766 myfile,此命令把myfile文件的权限设置成所属人可读可写可执行,其他人可读可写但不能执行。

7. linux设置权限的命令

linux权限设置命令用ls命令所得到的表示法的格式是类似这样的:-rwxr-xr-x 。下面解析一下格式所表示的意思。这种表示方法一共有十位: 9 8 7 6 5 4 3 2 1 0 - r w x r - x r - x 第9位表示文件类型,可以为p、d、l、s、c、b和-: p表示命名管道文件 d表示目录文件 l表示符号连接文件 -表示普通文件 s表示socket文件 c表示字符设备文件 b表示块设备文件 第8-6位、5-3位、2-0位分别表示文件所有者的权限,同组用户的权限,其他用户的权限,其形式为rwx。linux下用chmod(change file modebit)改变一个文件的权限一般有两种方式:1、chmod [ugoa][+-=][rwx] filename这种方法很直观,u代表拥有者(user),g代表组(group),o代表其它用户(other),a代表所有用户(all)。+-=代表增加、去除、设置为相应的权限。rwx分别代表读(read)、写(write)、执行(exe)。比如chmod a+x filname 表示对所有用户增加对filename的执行权限。2.setUid,setGid如果一个命令被设置了SUID,那么这个命令在执行期间,执行这个命令的用户就具有了这个命令的属主的权限;如果一个命令被设置了SGID,那么这个命令在执行期间,执行这个命令的用户就具有了这个命令的属组的权限.设置SetUid权限: chmod 4xxx filename取消SetUid权限: chmod xxx filename设置SetGid权限: chmod 2xxx filename取消SetGid权限: chmod xxx filename如果执行chmod 6xxx filename命令即可同时为指定文件设置SetUid和SetGid,执行命令chmod 0xxx filename,即可同时取消指定文件的SetUid和SetGid权限。

8. linux怎么给文件权限

可以使用 chmod 命令给文件设置不同的权限。例如:chmod 765 filename
其中:7--4+2+1,文件所有者权限,可读、可写、可执行;
6--4+2,同组用户权限,可读、可写;
5--4+1,其它用户权限,可读、可执行。

9. linux怎么修改文件权限

在Linux中要修改一个文件夹或文件的权限我们需要用到linux chmod命令来做,下面我写了几个简单的实例大家可参考一下。

语法如下:

chmod [who] [+ | - | =] [mode] 文件名
命令中各选项的含义为

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 与其他用户拥有一样的权限。
实例

修改文件可读写属性的方法

例如:把index.html 文件修改为可写可读可执行:

chmod 777 index.html
要修改目录下所有文件属性可写可读可执行:

chmod 777 *.*
把文件夹名称与后缀名用*来代替就可以了。
比如:修改所有htm文件的属性:

chmod 777 *.htm
修改文件夹属性的方法
把目录 /images/xiao 修改为可写可读可执行

chmod 777 /images/xiao
修改目录下所有的文件夹属性

chmod 777 *
把文件夹名称用*来代替就可以了

要修改文件夹内所有的文件和文件夹及子文件夹属性为可写可读可执行

chmod -R 777 /upload
总结linux下目录和文件的权限区别

文件:读文件内容(r)、写数据到文件(w)、作为命令执行文件(x)。

目录:读包含在目录中的文件名称(r)、写信息到目录中去(增加和删除索引点的连结)、搜索目录(能用该目录名称作为路径名去访问它所包含的文件和子目录)

具体说就是:

(1)有只读权限的用户不能用cd进入该目录:还必须有执行权限才能进入。
(2)有执行权限的用户只有在知道文件名,并拥有读权利的情况下才可以访问目录下的文件。
(3)必须有读和执行权限才可以ls列出目录清单,或使用cd命令进入目录。
(4)有目录的写权限,可以创建、删除或修改目录下的任何文件或子目录,即使使该文件或子目录属于其他用户也是如此。

查看目录权限

查看文件权限的语句:

在终端输入:

ls -l xxx.xxx (xxx.xxx是文件名)
那么就会出现相类似的信息,主要都是这些:

-rw-rw-r--
一共有10位数

其中: 最前面那个 – 代表的是类型
中间那三个 rw- 代表的是所有者(user)
然后那三个 rw- 代表的是组群(group)
最后那三个 r– 代表的是其他人(other)

然后我再解释一下后面那9位数:

r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是程序的话)
- 表示相应的权限还没有被授予

现在该说说修改文件权限了

在终端输入:

chmod o w xxx.xxx
表示给其他人授予写xxx.xxx这个文件的权限

chmod go-rw xxx.xxx
表示删除xxx.xxx中组群和其他人的读和写的权限

其中:

u 代表所有者(user)
g 代表所有者所在的组群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o
r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是程序的话)

其中:rwx也可以用数字来代替
r ————4
w ———–2
x ————1
- ————0
行动:

表示添加权限
- 表示删除权限
= 表示使之成为唯一的权限

当大家都明白了上面的东西之后,那么我们常见的以下的一些权限就很容易都明白了:

-rw——- (600) 只有所有者才有读和写的权限
-rw-r–r– (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx—— (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx–x–x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw- (666) 每个人都有读写的权限
-rwxrwxrwx (777) 每个人都有读写和执行的权限

10. 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>

热点内容
安卓qq邀请码在哪里寻找 发布:2025-05-15 00:02:04 浏览:32
三菱fx编程口 发布:2025-05-15 00:01:23 浏览:809
医院招商引资宣传片脚本 发布:2025-05-15 00:01:21 浏览:367
linuxcftp服务器 发布:2025-05-14 23:58:18 浏览:717
探岳什么配置才有驾驶模式选择 发布:2025-05-14 23:53:17 浏览:144
如何在手机上看无限流量密码 发布:2025-05-14 23:43:31 浏览:114
19投篮脚本 发布:2025-05-14 23:36:57 浏览:513
编译器怎么处理c变长数组 发布:2025-05-14 23:31:46 浏览:663
存折每天可以输错多少次密码 发布:2025-05-14 23:22:06 浏览:909
安卓手机怎么找微信隐藏对话 发布:2025-05-14 23:07:47 浏览:338