一、了解基本属性(权限)
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,
Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。
Linux命令 ls 列出目录
-a 参数:all ,查看全部的文件,包括
隐藏文件
-l 参数:列出所有的文件,包含文件的属性和权限,没有隐藏文件
■ 属性是针对文件而言的,文件具备有某某属性;而权限是根据用户区分而言的,例如超级用户root和普通用户shan,对某个文件所拥有的权限不同。
1、在Linux中第一个字符代表这个文件是目录、文件或链接文件等等:
[d] 是目录
[-] 是文件
- [l] 是链接文档 (link file)
- [b] 是装置文件里面的可供储存的接口设备 (可随机存取装置)
- [c] 是装置文件里面的串行端口设备,例如键盘、鼠标 (一次性读取装置)。
2、接下来的字符中,分为三组,每一组是三个字符,且每组的属性顺序均为『rwx』:
- 这三个字符的权限的位置不会改变,如果没有权限,就会出现减号[ - ]
- 目录大小、创建时间,快捷方式-真实目录:
对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。 同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。 文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。
● 第一组是属主权限(文件所有者owner)
● 第二组是属组权限(文件所有者同组用户group)
● 第三组是其他用户权限(其他用户others)
▷ 属性 [r] 是读权限(read),可读
▷ 属性 [w] 写权限(write),可写
▷ 属性 [x] 执行权限(execute),可执行
▷ [-] 是没有权限
二、更改属性chmod
1、更改文件或目录属性(权限)的意义:解决你没有权限操作此文件的问题
2、chmod:更改文件属性:
- 语法格式:chmod 权限 参数 文件
参数 -R:递归授权目录
3、chmod 权限:
- Linux文件属性有两种设置方法,一种是数字(常用的是数字),一种是符号。
● 每种身份(owner/group/others)各自的三个权限(rwx)分数是需要累加的:
● rwx 分别对应的分数是4,2,1。 r--4分,w--2分,x--1分
chomd 777 文件赋予所有用户可读可执行(最高权限是 777)
三、通过chmod更改权限后,依然无法删除或修改文件的解决:
删除命令 rm -rf , 或者使用vim的插入模式进行删除,都对个文件没效果,总会提示权限不足,
而使用命令:chmod -R 777 修改读写执行权限;还是提示不能改变该文件。---->chattr命令,
删除命令: chattr -ai 文件或目录
1、chmod 和 chattr 区别:
▪ chmod 只拥有修改读写、执行权限;而chattr 拥有更多的权限,例如加锁权限,让文件不被修改;让文件只能追加,不可删除权限等等。
▪ 只有拥有root权限,才拥有设置chattr的权限
2、chattr 命令:
语法
chattr [参数] [属性] 文件或目录
● 参数:
- -R 递归处理,将指定目录下的所有文件及子目录一并处理。
- -v<版本编号> 设置文件或目录版本。
- -V 显示指令执行过程。
● 属性:
+<属性> 开启
文件或目录的该项属性。
-<属性> 关闭
文件或目录的该项属性。
=<属性> 指定文件或目录的该项属性。
a :让文件只能追加,不可删除权限,适用于各种日志文件。
i:加锁,不得任意更动文件或目录,不可删除、不可修改。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:将文件或目录排除在倾倒操作之外。
- s:保密性删除文件或目录。
- S:即时更新文件或目录。
- u:预防意外删除。
如果本文对你有帮助的话记得给一乐点个赞哦,感谢!