Linux中的文件属性和权限
2021/5/5 7:29:01
本文主要是介绍Linux中的文件属性和权限,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 前言
- 一. 用户,用户组和其他人
- 二. 文件属性
- 三. 文件(目录)的权限
前言
我们都知道在Linux中一切皆文件,因此一些有关文件属性和权限的知识点就很重要,也是学习Linux最基本的。这里仅就记录一下自己的一些学习笔记以及一些个人理解,如错误之处,敬请指出。
一. 用户,用户组和其他人
学习Linux文件的权限时,文件的权限往往是针对用户,用户组以及其他人三个概念来讲的,因此在学习文件权限相关问题时有必要先了解下这三个的基本概念。
- 用户(user):在linux系统中记录有对应登记密码的一个账号
- 文件拥有者(owner):文件所属者(或者文件创建者)
- 用户组(group):由多个用户组成的一个组,和我们平时说的一组,二组一样
- 其他人(others):即不是文件拥有者,也不是用户组的成员,但是是一个用户(账号)
二. 文件属性
在linux输入ls -al或者ls -ls,ls -l均可以查看文件的基本属性。不过ls -al会把所有的文件都列出来,包括隐藏的文件,如下
图中用红框圈起来的一共有8个,下面从左到右依次来说一下其代表的意思
- 第一个代表的是文件的类型:‘-’表示普通文件,‘d’表示是一个目录,‘l’表示是一个链接文件,‘b’可供存储的周边设备,‘c’串行端口设备(鼠标,键盘)
- 第二个代表的文件的相关权限:前三个代表文件所属者(owner)对该文件的权限,中间三个代表用户组队(group)该文件的权限,后三个代表其他用户(otehers)对该文件的权限
- 第三个代表有多少个文件名链接到此节点
- 第四个代表该文件所属者
- 第五个代表该文件所在的用户组
- 第六个代表该文件的大小,默认是Bytes
- 第七个代表该文件最后修改的时间
- 第八个显示文件名字,‘.’表示隐藏文件
三. 文件(目录)的权限
1. 文件的权限
文件的权限是针对文件拥有者,用户组和其他用户来说的,每个对象都有对应的权限,如下
- 文件拥有者(owner):rwx
- 用户组(group):rwx
- 其他用户(others):rwx
其中r代表可读(read),w代表可写(write),x代表可执行(execute)
其中,权限对于文件而言,rwx的意义如下:
- r:可以读取到该文件里面的内容,如文字内容
- w:可以编辑,新增或是修改该文件的内容
- x:可以被执行
而权限对于目录来说,意义如下:
- r:具有读取目录结构列表的权限,表示可以查询该目录下的文件名数据,如用ls显示该目录下的文件
- w:具有可以改动该目录结构列表的权限,如新建文件目录,删除文件目录,修改文件目录的名字,移动文件目录的位置
- x:代表用户能否进入该目录成为工作目录,如没有x权限时,就不能用cd命令切换到该目录下
2. 修改文件属性
2.1 修改文件所属者和所在用户组
2.1.1修改文件所在用户组:chgrp(change group),格式如下:
-
chgrp [-R] groupname 文件名或者目录名
-
R:进行递归修改,连同该目录下的所有文件,目录一起修改
-
前提:新的组名要在/etc/group中存在
如下,将在test组中的test_py.py文件更换到anxiaochong组中
2.1.2 修改文件拥有者:chown(change owner),格式如下 -
chown [-R] 账号名称 文件或目录 或者 chown [-R] 账号名称:用户组名称 文件或者目录
-
R:进行递归修改,连同该目录下的所有文件,目录一起修改
-
前提:新的账号名称要在/etc/passwd中存在
如下,修改文件test_py.py的拥有者未root
3.修改文件目录的权限
3.1修改文件目录权限命令:chmod,格式如下
- chmod [-R] xyz 文件或目录
- [R]:进行递归修改,连同该目录下的所有文件,目录一起修改
- xyz:数字代表权限
其中xyz对应的权限如下
r:4 w:2 x:1
如在上面的图中,test.py文件对应文件拥有者,用户组和其他用户的权限如下
文件拥有者(user):rw-=4+2+0=6 用户组(group:rw-=4+2+0=6 其他用户(others):r--=4+0+0=4
现在修改test.py文件的权限为文件拥有者rwx,用户组rwx,其他用户为rx
值的注意的是,每个对象对应的文件权限位置不会变,没有权限时用‘-’代替
3.2 符号类型修改文件权限
Linux中修改文件目录权限的有两种方法,上面的是数字类型修改权限,还有一种就是下面要讲的符号类型修改文件目录权限。
符号类型修改文件权限格式如下
chmod [ugoa][+-=][rwx] 文件名或者目录 #这里的[]不是代表可选可不选,这里三个都必须选择,这里加[]只是为了区分不同字符类别
例1 如修改文件test.py的权限为rwxr–r--
例2 给文件test.py的用户组,其他用户加上x权限
例3 把文件test.py文件的文件拥有者,用户组和其他用户的x(可执行)权限移除掉
注意:以上有关文件目录属性修改,权限修改均需要root权限,如果不是root用户,则可使用sudo
这篇关于Linux中的文件属性和权限的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23linux 系统宝塔查看网站访问的命令是什么?-icode9专业技术文章分享
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南