设为首页 加入收藏

TOP

chmod chown llinux文件及目录的权限介绍
2019-09-03 00:54:03 】 浏览:13
Tags:chmod chown llinux 文件 目录 权限 介绍

linux 文件或目录的读、写、执行权限说明:

chmod :设置文件或目录权限。

 u:所有者 g:所在组 o:其他组 a:所有人(u、g、o的总和) 

chmod  -R  文件1/文件2…..     //递归授权权限

 设置权限有两种方式:

一、字母相对方式设置权限:

         chmod u=rwx,g=rx,o=x 目录或文件

         chmod u+rwx,g+rx,o+x 目录或文件

         chmod u-rwx,g-rx,o-x  目录或文件

二、数字绝对方式设置权限:

 chmod 数字 目录或文件

 解释:

0:没有权限

1:执行

2:写

3:执行、写

4:读

5:读、执行

6:读、写

7:读、写、执行

chmod ABC 文件  //ABC分别代表所有者、所在组、其他组用户的数字权限。

chmod 751 文件  //所有者读、写、执行;所在组可读、可执行;其他组可执行。

 说明: ①每个单元“+”“-”只能使用一个

       ②可以同时给一个组或多个组设置权限,组别之间用“,”分割

       ③每个单元的权限可以是“rwx”中的一个或多个

解释:

+(增加)、-(解除)、=(授予)

r 表示可读取,w 表示可写入,x 表示可执行

 可读r:具有读取、查看文件内容权限

 可写w:具有新增、修改文件内容权限

 【如果没r,那么vi无法编辑,强制编辑的话会覆盖数据,但echo可以追加)

  特别提示:(删除文件(修改文件名等)的权限受父目录的权限控制,和文件本身权限没关系】

 

  可执行x:具有执行文件的权限

   1.本身要有执行权限

   2.普通用户同时还需要具备r的权限才能

   3.root都能执行

win 下可执行文件:*.exe,*.bat,*.com

linux 下可执行文件:*.sh,*.py,*.perl等

 修改的权限相对“比较少”的时候使用“字母”方式

反之,权限变动“非常多”的时候使用“数字”方式

 

修改文件所有者: 
chown  新的所有者  file       //  改变文件的所有者

chown  新的所有者:新的所有组  file  // 改变用户的所有者和所有组

-R  如果是目录 则使其下所有子文件或目录递归生效

 

修改文件所在组-chgrp

chgrp 新的所在组 file     //改变文件的所有组

-R  如果是目录 则使其下所有子文件或目录递归生效

  

例如:

测试:

root :root

bqh:home

bqh1:bqh1 home

jyw:jyw

文件1.txt属主为bqh,属组为home,授予331权限。

bqh用户对1.txt文件只有WX权限,没有r权限, 但可以echo 内容到1.txt文件中

 

虽然没r,那么vi无法编辑,可用“!”强制编辑,但会覆盖数据

 

非主人(同组\其他组)用户没有w权限,强行写保存有时候成功或不成功:

A:该文件的上级目录针对修改者没有开发w权限时,不成功

例如:

 

此时用同组bqh1来修改1.txt文件,结果未成功写入。

 

B:该文件的上级目录针对修改者有开发w权限时,成功

例如:

 对1.txt文件的上级目录授权于bqh所有者,同组者增加W权限。

此时用同组bqh1来修改1.txt文件,结果成功写入。

 

删除文件(修改文件名等)的权限受父目录的权限控制,和文件本身权限没关系:

例如:

 

现在我们把1.txt文件的上级目录改为属主为bqh,属组为home,并将目录授权为755

 

用属主用户成功删除文件。

 

总结:

linux的读、写、执行权限说明

可读r:

表示具有浏览目录下文件及子目录的权限,即ls dir(不能进到目录里,即无法cd dir)

如果没有X权限,ls列表是可以看到所有文件名,但是会提示无权访问目录,如果ls –l列表,所有的属性会带有问号,也会提示无权访问目录下文件,但可以看到所有文件名。

 

可写w:

表示具有增加、删除或修改目录内文件名(一般指文件名)的权限,需要X权限配合。如果没r,那么vi无法编辑,强制编辑的话会覆盖数据,但echo可以追加。

特别提示:(删除文件(修改文件名等)的权限受父目录的权限控制,和文件本身权限没关系

 

可执行X:表示具有进入目录的权限,例如cd dir,但是没有r无法列表,没有w无法新建和删除。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Shell编程-10-Shell中的数组 下一篇Linux运维

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目