CentOS 文件隐藏属性
1、chattr用于配置文件的隐藏属性
语法:
chattr [-RVf] [-+=aAcCdDeijsStTu] [-v version] files... 选项与参数: +:增加某个特殊参数,其他原始存在参数不动; -:移除指定参数,其他参数不变; =:设定为chattr后面输入的参数
A:当设定了A这个属性时,若你有存取此文件/目录时,他的访问时间atime将不会被修改,可避免I/O较慢的机器过渡存取磁盘 S:一般文件是异步写入磁盘的,如果加上S这个属性,则同步写入 a:当设定a之后,这个文件将只能增加数据,不能删除也不能修改数据,仅root用户允许设定 c:这个属性设定后,将自动压缩文件,在读取时自动释放 d:当dump程序被执行的时候,设定d属性可使该文件/目录不会被dump备份 i:该属性可以让一个档案不能被删除、修改、设定链接也无法写入或新增资料,对于系统安全有帮助,仅root用户允许设定 s:当文件设定了s属性时,如果删除该文件,则无法找回 u:与s相反,当删除该文件,数据依据存在于磁盘中,可以使用来救援该文件
场景1:仅能在日志文件中追加内容而不能修改或删除内容
#使用chattr需要root的权限,并且这个命令并不做直接提示
[es@bigdata-senior01 ~]$ sudo chattr +a loga.txt
[sudo] es 的密码:
[es@bigdata-senior01 ~]$ lsattr loga.txt
-----a---------- loga.txt
[es@bigdata-senior01 ~]$ lsattr 1.txt
---------------- 1.txt
#普通用户如果不适用sudo,无法正常使用chattr命令
[es@bigdata-senior01 ~]$ chattr +a 1.txt
chattr: 不允许的操作 while setting flags on 1.txt [es@bigdata-senior01 ~]$ ll loga.txt
-rw-r--r-- 1 es es 0 1月 12 21:43 loga.txt
[es@bigdata-senior01 ~]$ echo $PATH > loga.txt #只能追加
-bash: loga.txt: 不允许的操作
[es@bigdata-senior01 ~]$ echo $PATH >> loga.txt
[es@bigdata-senior01 ~]$ rm -rf loga.txt
rm: 无法删除"loga.txt": 不允许的操作 用vi编辑后无法保存。
场景2:创建一个文件,无法进行删除。
[es@bigdata-senior01 ~]$ echo $HOME >1.txt
[es@bigdata-senior01 ~]$ cat 1.txt
/home/es
[es@bigdata-senior01 ~]$ sudo chattr +i 1.txt
[sudo] es 的密码:
[es@bigdata-senior01 ~]$ lsattr 1.txt
----i----------- 1.txt
[es@bigdata-senior01 ~]$ ll 1.txt
-rw-rw-r-- 1 es es 9 1月 12 21:50 1.txt
[es@bigdata-senior01 ~]$ rm 1.txt
rm:是否删除有写保护的普通文件 "1.txt"?y
rm: 无法删除"1.txt": 不允许的操作
2、lsattr用于查看文件的隐藏属性
lsattr显示文件的隐藏权限,格式为“lsattr [参数] 文件”。
在 Linux 系统中,文件的隐藏权限必须使用 lsattr 命令来查看,平时使用的 ls 之类的命令则看不出隐藏属性
CentOS 文件隐藏属性的更多相关文章
- centos文件误删除恢复
Centos 文件误删除 当意识到误删除文件后,切忌千万不要再频繁写入了,否则 你的数据恢复的数量将会很少. 而我们要做的是,第一时间把服务器上的服务全部停掉,直接killall 进程名 或者 kil ...
- NO.4day LINUX centos 文件基本操作
LINUX centos 文件基本操作 1 LINUX简介 Linux的定义:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CP ...
- centos文件/文件夹操作-检查磁盘、内存、cpu使用情况-vi操作命令
Part1:CentOS文件/文件夹操作 1.新建文件夹 即创建目录 mkdir 文件名 新建一个名为test的文件夹在home下 vi source1 mkdir /home/test 注意:当创建 ...
- CentOS文件服务与数据管理
CentOS文件服务与数据管理-专栏简介 本专栏内容涵盖了中高级Linux系统管理员所必须的文件服务.磁盘管理.数据管理.文件恢复等必备技能,实乃涨薪.跳槽之必备技能,且听一线运维老兵为你逐步揭开迷雾 ...
- 7.CentOS文件和目录 以及系统与设置命令
CentOS文件和目录 etc------系统中的配置文件 bin------系统预设执行文件的放置目录 sbin------系统预设执行文件的放置目录 usr------系统预设执行文件的放置目录 ...
- Centos文件切割利器_split命令及cat命令合并文件
有个文件要处理,因为很大,所以想把它切成若干份,每份N行,以便并行处理.split命令可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,为提高可读性,生成日志等 命令格式 -b:值为 ...
- centos文件基本操作
centos彻底删除文件夹.文件命令(centos 新建.删除.移动.复制等命令: 1.新建文件夹 mkdir 文件名 新建一个名为test的文件夹在home下 view source1 mkdir ...
- linux的文件隐藏属性 chattr lsattr
<鸟哥的Linux私房菜 基础学习篇(第三版)> 7.4.2 读书笔记 显然,这里要说的并不是rwx那9个权限,而是要聊chattr和lsattr这两个命令.这两个命令在只能在Ext2/E ...
- chattr lsattr文件隐藏属性
chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...] lsattr [-adlRvV][文件或目录...] 改变/显示文件隐藏属性 chatt ...
随机推荐
- CSS布局遇到的问题小结
clear属性的作用 指定某个元素的一侧不能出现浮动元素.它是通过为这个元素在上边距之外增加空间,从而使得这个元素的顶部和浮动元素的底部对齐.这里作用的仅仅是同一个bfc下的浮动元素. This pr ...
- VIO概述 On-Manifold Preintegration for Real-Time Visual--Inertial Odometry
目前的研究方向可以总结为在滤波算法中实现高精度,在优化算法中追求实时性.当加入IMU后,研究方向分为松耦合和紧耦合,松耦合分别单独计算出IMU测量得到的状态和视觉里程计得到的状态然后融合,紧耦合则将I ...
- (转)Gmail,你必须了解的12个邮件编码问题
转载地址:http://www.maildesign.cn/archives/1537 1.Gmail 不支持style=” display:none”2.Gmail不支持内嵌式CSS样式3.Gmai ...
- pip源设置 & pandas安装
pip的官方源python.pypi.org貌似被墙,换用国内安装源 网上的设置方法都是基于Unix的,Windows下的设置略麻烦. 更新..\Lib\site-packages\pip下的cmdo ...
- Selenium(Python)页面对象+数据驱动测试框架
整个工程的目录结构: 常用方法类: class SeleniumMethod(object): # 封装Selenium常用方法 def __init__(self, driver): self.dr ...
- Jmeter 接口自动化执行报错 无法找到类或者类的方法
写好的自动化测试脚本在PC以及mac book 都执行正确,但是放到linux集成环境时就一直报错,报错类似如下 [jmeter] // Debug: eval: nameSpace = NameSp ...
- CentOS 7.2-编译安装zabbix 3.4
起因: 前面已经使用yum安装了zabbix 3.4了,准备去交差了,交差时老大明确要求必须使用编译安装,统一放在/usr/local目录下.... 重来吧!! 一.环境说明 本次安装使用CentOS ...
- 浅谈如何写出一个让(坑)人(王)很(之)难(王)发现的bug
该文章内容来自脚本之家,原文链接:https://www.jb51.net/news/598404.html 程序员的日常三件事:写bug.改bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因 ...
- Python全栈 项目(电子词典、协程、pdb调试)
后面我就不截图了 大家还是看原文吧 https://yq.aliyun.com/articles/629534 . ................. ...
- es6从零学习(一)let 和 const 命令
es6从零学习(一):let 和 const 命令 一:let 变量 1.块级作用域{}:let只在自己的块级作用域内有效. for(let i =0;i<3;i++) { console.lo ...