linux命令学习系列10-权限相关chown,chmod,chgrp命令的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux命令学习系列10-权限相关chown,chmod,chgrp命令的使用相关的知识,希望对你有一定的参考价值。

上节内容复习:

1. 进入目录:cd命令

2. 创建目录:mkdir命令

3. 删除目录:rmdir命令

4. 文件和目录复制:cp

作业:创建目录test1,test2,在test1中创建test1.txt文件,然后把test1.txt文件复制到test2文件夹下面

mkdir test1

mkdir test2

cd test1

touch test1.txt

cp test1.txt /test2


本节内容:


1. 文件/目录详情信息


用ll命令查看文件/目录详情时,可以看到类似下面的信息

技术分享图片

我用红框把这些信息分成了7列,下面分别说明

技术分享图片

第一列:文件类型和权限

技术分享图片

一共有10个横线组成,第一个表示文件类型,常用的文件类型:

d:文件夹

-:普通文件

l:链接(类似Windows的快捷方式)

b:块设备文件(例如硬盘、光驱等)

p:管道文件

c:字符设备文件(例如猫等串口设备)

s:套接口文件/数据接口文件(例如启动一个mysql服务器时会产生一个mysql.sock文件)

后面9个每3个一组来表示文件所有者,文件所有组,其它用户的权限,权限的可取值:

r=读取属性  //值=4
w=写入属性  //值=2
x=执行属性  //值=1

某一位置为空时显示-,表示不具备这个权限

第二列:连接数

除了目录文件外,其它所有文件的链接数都是1

目录文件的连接数是此目录中包含其它目录的总个数+2,比如,目录a包含b和c目录那目录a的链接数为4

第三列:文件所有者

第四列:文件所有组

第五列:文件大小

第六列:最新修改时间

第七列:文件名


2. 改变文件权限:chmod命令


权限中使用u,g,o分别代表文件拥有者,拥有组,其它人,权限用rwx表示,增加权限用+号,删除权限用-号,指定权限用=号

Chmod u+w filename #表示给文件所有者添加写权限

Chmod u-w filename #表示删除文件所有者的写权限

Chmod u=rwx filename #表示设置文件所有者的权限为可读,可写,可执行

Chmod u+w,g+w #filename #表示文件所有者添加写权限,所有组添加写权限

要同时设置所有人的权限,可以用数字表示,rwx用7表示,r—用4表示,-w-用2表示,--x表示1.

Chmod 741 filename #表示所有者有读写执行的权限,所有组有读取的权限,其它人有执行的权限。

以test.txt为例,默认的权限如下:

技术分享图片

现在改一下权限,给所有者添加执行的权限,给所有组和其它人添加写权限,执行

chmod u+x,g+w,o+w test.txt

技术分享图片

同样,我们也可以使用数字进行权限的修改,比如,把test.txt的权限改成u,g,o都有rwx的权限,那可以用chmod 777 test.txt

技术分享图片

最后,把test.txt权限改成最初的状态,chmod u=rw,g=r,o=r test.txt

如果要改变目录及其子文件的权限,需要使用-R参数

以test文件夹为例,可以看到默认权限:

技术分享图片

修改目录的权限为g有w的权限

Chmod –R g+w test

技术分享图片

技术分享图片

其它操作与文件一致,最后把test的权限改成默认,执行chmod –R g-w test

技术分享图片

技术分享图片


3. 改变文件拥有者:chown命令


基本用法chown 拥有者:拥有组 文件名, 或 chown –R 拥有者:拥有组 目录名

比如要修改文件test.txt的拥有者为user1 则用:chown user1 test.txt

要修改文件test.txt的拥有组为user1则用:chown :user1 test.txt

要同时修改拥有者和拥有组,则用:chown user1:user1 test.txt

要修改目录及其子项的拥有都需要使用-R参数 ,比如修改目录test及子文件的拥有者为user1,则用:chown –R user1 test


4. 改变文件拥有组:chgrp命令


基本用户与chown类似,只不过此命令只修改用户的所有组,基本用法 chgrp 组名 文件名,或 chgrp –R 组名 目录


作业:创建文件test.txt,修改文件权限为所有者有读写执行的权限,所有组有读写的权限,其它人有读取的权限,改变此文件的所有者为user1


免费视频教程关注微信公众号“挨踢学霸”获取

技术分享图片

以上是关于linux命令学习系列10-权限相关chown,chmod,chgrp命令的使用的主要内容,如果未能解决你的问题,请参考以下文章

linux命令学习系列11-umask,file,find

Linux之文件权限属性设置

Linux文件/目录管理(中级)

Linux用户和权限——管理文件权限的命令

linux命令——chmod/chown

linux系统的系统性学习 (持续更新)