文件属性的命令

目录

1.chattr

属性

语法

2.lsattr

语法


1.chattr

chattr命令用来修改文件或文件夹的属性,提高系统的安全性。

但不能用于 / |/dev |/tmp |/var目录。

与chmod命令相比,chattr是用来控制更底层的属性。

chmod只是改变文件的读写、执行权限。

chown修改文件所属用户及用户组。

chgrp修改文件的用户组。

属性

A :不再更新文件的最后访问时间

[root@linuxweb test]# stat test/c.log
  文件:"test/c.log"
  大小:5               块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:101190554   硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2022-05-23 15:44:19.295508143 +0800
最近更改:2022-05-23 15:44:19.295508143 +0800
最近改动:2022-05-23 16:52:44.509213532 +0800
创建时间:-
[root@linuxweb test]# chattr +A -V test/c.log
chattr 1.42.9 (28-Dec-2013)
test/c.log的标志被设为 -------A--------
[root@linuxweb test]#
[root@linuxweb test]# echo "dfdf" >> test/c.log
[root@linuxweb test]#
[root@linuxweb test]# stat test/c.log
  文件:"test/c.log"
  大小:10              块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:101190554   硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2022-05-23 15:44:19.295508143 +0800
最近更改:2022-05-23 16:53:22.882971151 +0800
最近改动:2022-05-23 16:53:22.882971151 +0800
创建时间:-

 a :只允许在这个文件之后追加数据,不允许进程覆盖或截断这个文件。如果是目录,只允许在这个目录下建立和修改文件,而不允许删除任何文件

s:彻底删除文件,不可恢复,从磁盘上删除

S :进程执行了写操作,立刻把修改的结果写到磁盘

i :禁止对文件做任何修改。如果是目录,只能修改目录下的文件,不允许建立和删除文件

u :进程请求删除文件时,系统会保留其数据块,便于恢复

注:

恢复文件的方法:不赘述

extundelete命令 – 文件恢复工具 – Linux命令大全(手册)

https://forum.huawei.com/enterprise/zh/thread-814301.html#:~:text=undelete%E5%91%BD%E4%BB%A4%E7%94%A8%E6%9D%A5%E6%81%A2%E5%A4%8D%E8%A2%AB%E5%88%A0%E9%99%A4%E8%87%B3%E5%9B%9E%E6%94%B6%E7%AB%99%E4%B8%AD%E7%9A%84%E6%96%87%E4%BB%B6%E3%80%82%20undelete%20%7B,filename%20%7C%20devicename%20%7D

rm -rf 误删文件?别急,或许有救! - 腾讯云开发者社区-腾讯云

Linux用chattr +u 操作文件后,误删文件如何找回_百度知道

语法

chattr [-RVf] [-+=aAcCdDeijsStTu] [-v version] files

-R 递归处理 将指定目录下的所有文件及子目录一并处理。

[root@linuxweb test]# chattr -R +a test
[root@linuxweb test]# lsattr -d test
-----a---------- test
[root@linuxweb test]# lsattr test
-----a---------- test/a.log
-----a---------- test/b.log
-----a---------- test/c.log

-v 设置文件或目录版本 不懂为啥会报下面的信息,如果有知道的可以告诉我吗

[root@linuxweb test]# chattr -v 1 test/c.log 
chattr: 对设备不适当的 ioctl 操作 while setting version on test/c.log

-V 将相应的执行过程显示出来

[root@linuxweb test]# chattr -V +a test/c.log 
chattr 1.42.9 (28-Dec-2013)
test/c.log的标志被设为 -----a----------
[root@linuxweb test]# chattr -a test/c.log 
[root@linuxweb test]# chattr +a test/c.log

+ 开启属性

[root@linuxweb test]# lsattr test/c.log 
---------------- test/c.log
[root@linuxweb test]# chattr +a -V test/c.log 
chattr 1.42.9 (28-Dec-2013)
test/c.log的标志被设为 -----a----------
[root@linuxweb test]# 

- 关闭属性

[root@linuxweb test]# lsattr test/c.log 
-----a---------- test/c.log
[root@linuxweb test]# chattr -a -V test/c.log 
chattr 1.42.9 (28-Dec-2013)
test/c.log的标志被设为 ----------------
[root@linuxweb test]#

= 指定属性

[root@linuxweb test]# lsattr test/c.log 
-----a---------- test/c.log
[root@linuxweb test]# chattr =i -V test/c.log 
chattr 1.42.9 (28-Dec-2013)
test/c.log的标志被设为 ----i-----------

2.lsattr

语法

lsattr [-adlRvV][文件或目录...]

-d 显示目录而非子文件

-a 显示目录下的所有文件 ,包括隐藏文件

你可能感兴趣的:(Linux学习笔记,linux,运维,服务器)