首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux权限命令详解(文件权限的命令使用方法)

权限简介

Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。

Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。

Linux下权限的粒度有 拥有者 、群组 、其它组 三种。每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。通常情况下,一个文件只能归属于一个用户和组, 如果其它的用户想有这个文件的权限,则可以将该用户加入具备权限的群组,一个用户可以同时归属于多个组。

Linux上通常使用chmod命令对文件的权限进行设置和更改。、

一、快速入门

更改文件权限 (chmod命令)

一般使用格式

chmod [可选项] <mode> <file…>

参数说明:

[可选项]

-c, --changes like verbose but report only when a change is made (若该档案权限确实已经更改,才显示其更改动作)

-f, --silent, --quiet suppress most error messages (若该档案权限无法被更改也不要显示错误讯息)

-v, --verbose output a diagnostic for every file processed(显示权限变更的详细资料)

--no-preserve-root do not treat '/' specially (the default)

--preserve-root fail to operate recursively on '/'

--reference=RFILE use RFILE's mode instead of MODE values

-R, --recursive change files and directories recursively (以递归的方式对目前目录下的所有档案与子目录进行相同的权限变更)

--help显示此帮助信息

--version显示版本信息

[mode]

权限设定字串,详细格式如下 :

[ugoa...][[+-=][rwxX]...][,...],

其中

[ugoa...]

u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示所有(包含上面三者)。

[+-=]

+ 表示增加权限,- 表示取消权限,= 表示唯一设定权限。

[rwxX]

r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

范例:

设置所有用户可读取文件 a.conf

chmod ugo+r a.conf

chmod a+r a.confDogBing

设置 c.sh 只有 拥有者可以读写及执行

chmod u+rwx c.shDogBing

设置文件 a.conf 与 b.xml 权限为拥有者与其所属同一个群组 可读写,其它组可读不可写

chmod a+r,ug+w,o-w a.conf b.xml

设置当前目录下的所有档案与子目录皆设为任何人可读写

chmod -R a+rw *

数字权限使用格式

在这种使用方式中,首先我们需要了解数字如何表示权限。首先,我们规定 数字 4 、2 和 1表示读、写、执行权限(具体原因可见下节权限详解内容),即 r=4,w=2,x=1 。此时其他的权限组合也可以用其他的八进制数字表示出来,

如:

rwx = 4 + 2 + 1 = 7

rw = 4 + 2 = 6

rx = 4 +1 = 5

若要同时设置 rwx (可读写运行) 权限则将该权限位 设置 为 4 + 2 + 1 = 7

若要同时设置 rw- (可读写不可运行)权限则将该权限位 设置 为 4 + 2 = 6

若要同时设置 r-x (可读可运行不可写)权限则将该权限位 设置 为 4 +1 = 5

上面我们提到,每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。即我们可以用用三个8进制数字分别表示 拥有者 、群组 、其它组( u、 g 、o)的权限详情,并用chmod直接加三个8进制数字的方式直接改变文件权限。语法格式为 :

chmod <abc> file…

其中

a,b,c各为一个数字,分别代表User、Group、及Other的权限。

相当于简化版的

chmod u=权限,g=权限,o=权限 file...

而此处的权限将用8进制的数字来表示User、Group、及Other的读、写、执行权限

范例:

设置所有人可以读写及执行

chmod 777 file (等价于 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file)

设置拥有者可读写,其他人不可读写执行

chmod 600 file (等价于 chmod u=rw,g=---,o=--- file 或 chmod u=rw,go-rwx file )

更改文件拥有者(chown命令)linux/Unix 是多人多工作业系统,每个的文件都有拥有者(所有者),如果我们想变更文件的拥有者(利用 chown 将文件拥有者加以改变),一般只有系统管理员(root)拥有此操作权限,而普通用户则没有权限将自己或者别人的文件的拥有者设置为别人。

语法格式:

chown [可选项] user[:group] file…

使用权限:root

说明:

[可选项] : 同上文chmod

user : 新的文件拥有者的使用者

group : 新的文件拥有者的使用者群体(group)

范例:

设置文件 d.key、e.scrt的拥有者设为 users 群体的 tom

chown tom:users file d.key e.scrt

设置当前目录下与子目录下的所有文件的拥有者为 users 群体的 James

chown -R James:users *

  • 发表于:
  • 原文链接https://page.om.qq.com/page/ODli4WcZq4bYAhWizSgD2-kw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券