为了允许添加数据,防止更改或者删除等,文件和文件夹可以设定了特定的控制属性。例如,你可以在关键的系统文件或者文件夹中启用属性,然后没有任何用户,包括root,可以删除或者修改它,比如不允许使用像dump这样的命令等备份工具去备份一个特定的文件或者文件夹,等等。这些属性只可以在ext2,ext3或者ext4文件系统中的文件和文件夹上设定。

有两个命令 lsattr 和 chattr 用来管理属性。下面是常用属性的列表。

属性

描述

a (append)

允许在文件中进行追加操作

A

这个属性不允许更新文件的访问时间

c (compressed)

启用这个属性时,文件在磁盘上会自动压缩

d (dump)

不能使用dump命令备份文件

D

设置了文件夹的D属性时,更改会在同步保存在磁盘上

e (extent format)

它表明,该文件使用磁盘上的块的映射扩展

i (immutable)

在文件上启用这个属性时,我们不能更改、重命名或者删除这个文件

j (journaling)

设置了这个属性时,文件的数据首先保存在日志中,然后再写入文件

S (synchronous)

设置了这个属性时,变更或更改同步保存到磁盘上

chattr属性中可以使用的不同选项 :

-R 递归地修改文件夹和子文件夹的属性

-V chattr命令会输出带有版本信息的冗余信息

-f 忽略大部分错误信息

在chattr中用于设置或者取消属性的 操作符

‘+’ 符号用来为文件和文件夹设置属性,

‘-’ 符号用来移除或者取消属性

‘=’ 使它们成为文件有的唯一属性。

chattr 和 lsattr 命令的基本语法 :

# chattr

# lsattr

例:1 使用‘i’属性使文件不可更改

[root@linuxtechi ~]# chattr +i dummy_data

[root@linuxtechi ~]# lsattr dummy_data

----i----------- dummy_data

现在试着删除或者修改文件

[root@linuxtechi ~]# rm -f dummy_data

rm: cannot remove 'dummy_data': Operation not permitted

[root@linuxtechi ~]# echo "test" >> dummy_data

-bash: dummy_data: Permission denied

例:2 移除不可更改属性

[root@linuxtechi ~]# chattr -i dummy_data

[root@linuxtechi ~]# lsattr dummy_data

---------------- dummy_data

例:3 在文件中只允许追加操作

[root@linuxtechi ~]# chattr +a dummy_data

[root@linuxtechi ~]# lsattr dummy_data

-----a---------- dummy_data

现在试着把fstab文件的内容追加到dummy_data文件

[root@linuxtechi ~]# cat /etc/fstab >> dummy_data

[root@linuxtechi ~]#

例 :4 使用 -R 选项和 ‘+i’ 属性使文件夹和它的子文件夹成为安全目录

让我们来新建一个sysadmin文件夹和它的子文件夹

[root@linuxtechi ~]# mkdir sysadmin

[root@linuxtechi ~]# mkdir sysadmin/admim_{1,2,3,4,5}

[root@linuxtechi ~]# ls -l sysadmin/

total 0

drwxr-xr-x. 2 root root 6 Apr 19 09:50 admim_1

drwxr-xr-x. 2 root root 6 Apr 19 09:50 admim_2

drwxr-xr-x. 2 root root 6 Apr 19 09:50 admim_3

drwxr-xr-x. 2 root root 6 Apr 19 09:50 admim_4

drwxr-xr-x. 2 root root 6 Apr 19 09:50 admim_5

在sysadmin文件夹递归设置不可更改属性

[root@linuxtechi ~]# chattr -R +i sysadmin

[root@linuxtechi ~]# lsattr -R sysadmin/

----i----------- sysadmin/admim_1

sysadmin/admim_1:

----i----------- sysadmin/admim_2

sysadmin/admim_2:

----i----------- sysadmin/admim_3

sysadmin/admim_3:

----i----------- sysadmin/admim_4

sysadmin/admim_4:

----i----------- sysadmin/admim_5

sysadmin/admim_5:

[root@linuxtechi ~]#

现在试着用rm命令删除文件夹

[root@linuxtechi ~]# rm -rf sysadmin

rm: cannot remove ‘sysadmin/admim_1’: Permission denied

rm: cannot remove ‘sysadmin/admim_2’: Permission denied

rm: cannot remove ‘sysadmin/admim_3’: Permission denied

rm: cannot remove ‘sysadmin/admim_4’: Permission denied

rm: cannot remove ‘sysadmin/admim_5’: Permission denied

[root@linuxtechi ~]#

使用以下命令递归取消属性

[root@linuxtechi ~]# chattr -R -i sysadmin

linux中lsattr命令,在Linux中用chattr和lsattr命令管理文件和目录属性相关推荐

  1. linux 改变文件夹属性,技术|在Linux中用chattr和lsattr命令管理文件和目录属性

    为了允许添加数据,防止更改或者删除等,文件和文件夹可以设定了特定的控制属性.例如,你可以在关键的系统文件或者文件夹中启用属性,然后没有任何用户,包括root,可以删除或者修改它,比如不允许使用像dum ...

  2. linux重启网卡命令_如何在 Linux 中更改 MAC 地址 | Linux 中国

    在向你展示如何在 Linux 中更改 Mac 地址之前,让我们首先讨论为什么要更改它.-- Dimitrios Savvopoulos 在向你展示如何在 Linux 中更改 MAC 地址之前,让我们首 ...

  3. linux卸载先驱的命令是,【单选题】在Linux中,若要在同一行书写多条命令,命令之间应使用符号()分隔A. 转义字符\\ B. 分号; C. , D. 空格...

    [单选题]在Linux中,若要在同一行书写多条命令,命令之间应使用符号()分隔 A. 转义字符\\ B. 分号; C. , D. 空格 更多相关问题 [单选] 以下不属于野兽派的代表人物() [单选] ...

  4. 网页修改linux命令行,linux中文本修改操作命令linux网页制作 -电脑资料

    在命令模式下可以使用 vi 提供的各种有关命令对文本进行修改,包括对文本内容的删除.复制.取代和替换等, 1. 文本删除/移动 在编辑文本时 ,经常需要删除一些不需要的文本,我们可以用键将输错或不需要 ...

  5. linux中original_如何在 Linux 中整理磁盘碎片

    如何在 Linux 中整理磁盘碎片 转载自: 如何在 Linux 中整理磁盘碎片​linux.cn 有一个神话是 linux 的磁盘从来不需要整理碎片.在大多数情况下这是真的,大多数因为是使用的是优秀 ...

  6. Linux基本命令(1)管理文件和目录的命令

    Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touc ...

  7. linux中用户组和用户,linux中用户和用户组

    一.用户和组原理 一个用户可以属于多个组,一个组有多个用户 在Linux中操作系统必须依赖组和用户进行管理 二.与用户和组相关的配置文件 1.组相关配置文件 1)/etc/group :管理用户组信息 ...

  8. linux if 判断文件,shell中的逻辑判断,if 判断文件、目录属性,if判断的一些特殊用法...

    格式1:if 条件 ; then 语句; fi //如果满足条件,然后执行语句 [root@akuilinux01 shell]# cat if1.sh #!/bin/bash a=5 if [ $a ...

  9. Linux基础(10)--管理文件和目录

    管理文件和目录 1. 基本概念 1.1 一切皆文件 1.2 索引号与链接 2. stat文件状态函数 3. chmod文件权限函数 4. 目录函数 4.1 getcwd获取当前目录 4.2 mkdir ...

最新文章

  1. [译]5.11. Functions and Variables Featured in This Chapter 本章的函数,变量和特性
  2. 子选择器与后代选择器的区别
  3. 怎么退出自适应巡航_简单聊聊定速巡航和自适应定速巡航的区别
  4. Spring初始化机制
  5. 【转】贝叶斯网络+马尔科夫毯 简介
  6. php如何设计一个网站,如何设计一个优质的外贸网站?
  7. OBIEE 11g 启动与停止包含服务器重启
  8. 2021音视频技术大会北京站开幕
  9. c语言程序设计黄迎久,C语言程序设计教程_黄迎久、庞润芳主编 赵军富、徐扬、胡晓燕、贾茹副主编_9787302418528_...
  10. 什么叫做形态学图像处理_【视觉】机器视觉技术和无人天车有什么关系?
  11. 北大软微计算机技术硕士复试,【高分学长带你飞】北大软微408学长超详经验贴...
  12. 爱代挂前台模板5绿色版
  13. dataworks手册_DataWorks 使用教程
  14. 什么软件可以把图片镜像翻转_ios怎么把照片镜面翻转
  15. 英文论文查重规则是什么?
  16. ajax背景,ajax到底是什么?ajax的背景和使用介绍(附实例解析)
  17. The “fxp/composer-asset-plugin“ plugin was skipped because it requires a Plugin API version (“^1.0“)
  18. conan-transit服上的库列表
  19. 使用java数据结构编写代码
  20. 使用pyqtgraph模块进行PyQt绘图(2)

热门文章

  1. 计算机存储单位字的英语,计算机存储基本单位,位、字节、字以及KB、MB和GB怎么换算?...
  2. 计算机出现假桌面怎么解决办法,Win10系统桌面频繁假死的解决方法
  3. 支持多分支语句吗_Go的条件判断语句
  4. 打开Android Studio报错required plugin “Android Support” is disabled
  5. 操作指针的条件和多级指针
  6. 如何转换并压缩png格式图片
  7. 解决问题 xcrun: error: invalid active developer path
  8. SQL SERVER 2000安装教程图文详解
  9. 谷歌浏览器chrome设置特定网页使用Https(ssl)访问
  10. phoenixframework自动化测试平台1.4.6版本发布