Centos中chattr和lsattr命令使用详解

chattr命令的用法:

chattr [+-=][ASacdistu] [档案或目录名称]

参数说明:
+-= :分别为 [+ 增加] [- 减少] [= 设定] 属性的意思
A  :当设定了 A 这个属性时,这个档案(或目录)的存取时间
atime (access) 将不可被修改, 可避免例如手提式计算机容易有磁盘 I/O 错误的情况发生!
S  :这个功能有点类似 sync 的功能!就是会将数据同步写入磁盘当中!可以有效的避免数据流失!
a  :当设定 a 之后,这个档案将只能增加数据,而不能删除,只有 root 才能设定这个属性。
c  :这个属性设定之后,将会自动的将此档案『压缩』,在读取的时候将会自动解压缩出来,但是在储存的时候,将会先进行压缩之后再储存(看来对于大档案似乎蛮有用的!)
d  :当 dump (备份)程序被执行的时候,设定 d 属性将可使该档案(或目录)具有 dump 功效!
i  :这个 i 可就很厉害了!他可以让一个档案『不能被删除、改名、设定连结也无法写入或新增数据!对于系统安全性有相当大的帮助!
j  :当使用 ext3 这个档案系统格式时,设定 j 属性将会使档案在写入时先记录在 journal 中! 但是当 filesystem 设定参数为 data=journalled 时,由于已经设定了日志了,所以这个属性无效!
s  :当档案设定了 s 参数时,他将会被完全的移除出这个硬盘空间。
u  :与 s 相反的,当使用 u 来设定档案时,则数据内容其实还存在磁盘中,可以使用来 undeletion.

chattr示例Shell

 

chattr +i  /etc/shadow    #添加“i”隐藏属性后,就无法更动这个文件了
chattr -i  /etc/shadow      #解除"i"这个隐藏属性
lsattr命令的用法:lsattr [-aR]
参数说明:
-a :将隐藏文件的属性也列出来;
-R :连同子目录的数据也一并列出来!

lsattr示例Shell

 

chattr +i .bash_logout     #添加一个隐藏的“i”属性,后面再细讲
lsattr -a          #将当前目录的文件或目录下的文件所有属性(包括隐藏属性)列出 
-------------- ./.
-------------- ./..
---i---------- ./.bash_logout
-------------- ./.bash_profile
-------------- ./.bashrc

例如,这是一个很正常的删除逻辑,用户是root,从常理上说,只要不是文件处于被打开状态,root可以删除任何文件:

root@compute-node:~/test# ls -l
total 0
-rw-r--r-- 1 root root 0 Jul 18 15:02 1.txt
-rw-r--r-- 1 root root 0 Jul 18 15:02 2.txt
root@compute-node:~/test# rm 1.txt
root@compute-node:~/test# ls
2.txt
root@compute-node:~/test#

小小的chattr一下,则2.txt无法被简单的删除,且lsattr发现2.txt多了一个属性:

root@compute-node:~/test# chattr +i 2.txt
root@compute-node:~/test# rm 2.txt
rm: cannot remove 2.txt: Operation not permitted
root@compute-node:~/test#
root@compute-node:~/test# lsattr 2.txt
----i--------e-- 2.txt

取消掉2.txt的i属性后,2.txt又可以删除了

root@compute-node:~/test# chattr -i 2.txt
root@compute-node:~/test# rm 2.txt
root@compute-node:~/test# ls
root@compute-node:~/test#

时间: 2024-09-19 08:19:37

Centos中chattr和lsattr命令使用详解的相关文章

Linux中rz和sz命令用法详解

 rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具. 优点就是不用再开一个sftp工具登录上去上传下载文件. sz:将选定的文件发送(send)到本地机器 rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器 安装命令: yum install lrzsz 从服务端发送文件到客户端: sz filename 从客户端上传文件到服务端: rz 在弹出的框中选择文件,上传文件的用户和组是当前登录的用户 SecureCRT设置默认路径: Op

Linux VPS中cp复制文件命令应用详解

cp命令在Linux VPS操作和应用过程中还是比较常用的,我们可以用来复制文件或者文件夹,重命名一个新的文件以及复制到其他路径中用于文件的转移. 举例用法: 1.复制root目录下的itbulu.com.jpg文件到 /wwwroot/web 目录中 cd /root/ cp -v itbulu.com.jpg /wwwroot/web/ 2.复制 itbulu.com.jpg 文件变成itbulu-2.com.jpg文件 cp -v itbulu.com.jpg itbulu.com-2.j

centos中iftop安装与使用教程详解

一.iftop是什么? iftop是类似于top的实时流量监控工具. 官方网站:http://www.ex-parrot.com/~pdw/iftop/ 二.iftop有什么用? iftop可以用来监控网卡的实时流量(可以指定网段).反向解析IP.显示端口信息等,详细的将会在后面的使用参数中说明. 1.安装iftop依赖软件包:  代码如下 复制代码 # yum install flex byacc libpcap ncurses ncurses-devel libpcap-devel 2.下载

Centos中lvs DR搭建配置方法详解

关于LVS DR(Direct Root)模式  DR 模式要求Director 和 RealServer在同一个网段上边, 用户通过VIP来访问我们服务, Director 接到用户的请求后, 会将请求的目标mac改为其中的一台Realserver上边,这样RealServer接收到请求处理之后就直接将内容返回给用户, 不用再走DirectorServer了. 机器准备 DirectServer: 192.168.1.200   RealServer1: 192.168.1.202 RealS

CENTOS中SVN服务器SUBVERSION的配置详解

配置起来就稍稍复杂了一些,但也不是很难,主要就是几个配置文件. 我们看一下subversion的配置文件. 1.svnserve.conf 这是每个版本库的配置文件. 位置在每个库的conf目录中,目录结构如下. repository-path/conf/svnserve.conf 通过man svnserve.conf我制作了下面的conf文件供大家参考. [general] #设定未授权用户的权限,none无权限,read只读,write读写.默认为只读权限.可以根据自己的情况设定. #an

在Linux中用chattr和lsattr命令管理文件和目录属性

为了允许添加数据,防止更改或者删除等,文件和文件夹可以设定了特定的控制属性.例如,你可以在关键的系统文件或者文件夹中启用属性,然后没有任何用户,包括root,可以删除或者修改它,比如不允许使用像dump这样的命令等备份工具去备份一个特定的文件或者文件夹,等等.这些属性只可以在ext2,ext3或者ext4文件系统中的文件和文件夹上设定. 有两个命令 lsattr 和 chattr 用来管理属性.下面是常用属性的列表. 属性 描述 a (append) 允许在文件中进行追加操作 A 这个属性不允许

centos-关于CentOS中不能使用yum命令的问题!求助!!!

问题描述 关于CentOS中不能使用yum命令的问题!求助!!! 我刚开始学习CentOS,不知道yum怎么用,希望各位大神帮帮忙,感激不尽~ 解决方案 如果是yum不能使用那就是 源的问题了 你先执行 yum clean all 再执行 yum makecache 如果还不行,那就是源找不到 你在网上嗖嗖看这个源如何添加然后再不断的实验 选择centos就是这样,别气馁,在网上找,自己不断的实验总会有适合你的方法 我当初也是折腾不停,网上的方法到了自己这里行不通,那就不断地试验 然后总结问题,

PowerShell中match命令使用详解_PowerShell

1.筛选数组 本文介绍PowerShell中使用match操作符,配合正则表达式从数组中筛选出想要的内容. 先看下面这个例子: PS C:\Users\Hong> (ipconfig) -match 'IPv4' IPv4 地址 . . . . . . . . . . . . : 192.168.1.102 IPv4 地址 . . . . . . . . . . . . : 192.168.193.1 IPv4 地址 . . . . . . . . . . . . : 192.168.93.1

Linux 下 Make 命令实例详解

  Linux 下 Make 命令实例详解          Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make 命令背后的工作机制. Make 如何工作的 对于不知道背后机理的人来说,make 命令像命令行参数一样接收目标.这些目标通常存放在以 "Makefile" 来命名的特殊文件中,同时文件也包含与目标相对应的操作.更多信息,阅读关