chattr命令 (更改属性)是一个命令行Linux工具,用于设置/取消某些属性在Linux系统中的文件,以确保意外删除或重要的文件和文件夹的修改,即使你登录为root用户。

在Linux本机文件系统,即ext2,ext3,ext4,btrfs等支持所有的标志,虽然所有的标志将不支持所有非本地FS。即使属性具有chattr命令的集合,也不能删除或修改文件/文件夹,即使一个属性具有完全权限。

5 chattr命令示例

这对于在系统文件中设置属性非常有用,如passwd和shadow文件,其中用户的信息包含。

语法chattr

# chattr [operator] [flags] [filename]

属性和标志

以下是可以使用chattr命令设置/取消设置的公共属性和相关标志的列表。

如果一个文件与'A'属性集访问,它的atime记录不会被更新。

如果一个文件与'S'属性设置修改,变化是同步在磁盘上的更新。

一个文件被设置以 ''属性,只能在附加模式写作开放。

一个文件设定' 我 '的属性,不能被修改的(immutable)。意味着没有重命名,没有符号链接创建,没有执行,没有可写,只有超级用户可以取消设置属性。

用'J'属性的文件,则所有其信息更新到Ext3日记被更新到文件本身之前。

一个文件被设置与“T”属性,没有尾部合并。

与属性'D',A档时将转储进程运行备份没有更多的候选人。

当一个文件有“U”属性被删除,其数据将被保存。这使得用户能够请求其取消删除。

操作员

+:添加属性文件的现有属性。

- :删除属性的文件的现有属性。

=:保持现有属性的文件有。

在这里,我们将演示一些chattr命令示例来设置/取消设置文件和文件夹的属性。

1.如何添加文件上的属性以防止删除

出于演示的目的,我们分别使用的演示文件夹和文件important_file.conf。 在设置的属性,一定要验证现有的文件有任何属性中使用“设置的ls -l ”命令。您看到结果,当前没有设置属性。

[root@howtoing howtoing]# ls -l

total 0

drwxr-xr-x. 2 root root 6 Aug 31 18:02 demo

-rwxrwxrwx. 1 root root 0 Aug 31 17:42 important_file.conf

要设置属性,我们使用的+号,并取消设置使用-标志的chattr命令的命令。 所以,让我们设置不变的位与+ I标志的文件,以防止任何人删除文件,甚至是root用户没有权限删除它。

[root@howtoing howtoing]# chattr +i demo/

[root@howtoing howtoing]# chattr +i important_file.conf

注 :+我只能由超级用户(即root用户)或用户使用sudo权限设置的不可改变位可以能够设置。

设置不可改变位之后,让我们来验证属性与命令'lsattr来 “。

[root@howtoing howtoing]# lsattr

----i----------- ./demo

----i----------- ./important_file.conf

现在,试图强行删除,重命名或更改的权限,但将不允许说“ 不允许操作 。”

[root@howtoing howtoing]# rm -rf demo/

rm: cannot remove âdemo/â: Operation not permitted

[root@howtoing howtoing]# mv demo/ demo_alter

mv: cannot move âdemo/â to âdemo_alterâ: Operation not permitted

[root@howtoing howtoing]# chmod 755 important_file.conf

chmod: changing permissions of âimportant_file.confâ: Operation not permitted

2.如何取消设置文件上的属性

在上面的例子中,我们已经看到了如何在这个例子中设置属性,从意外删除保护,防止文件,在这里,我们将看到如何重置(未设置属性)的权限,并允许做一个多变的文件或使用可变-我的标志。

[root@howtoing howtoing]# chattr -i demo/ important_file.conf

重置权限后,使用验证“lsattr来 ”命令文件的不可变的状态。

[root@howtoing howtoing]# lsattr

---------------- ./demo

---------------- ./important_file.conf

你在上面的结果看到,“-i”标志去掉,这意味着你可以安全地删除所有文件和文件夹位于howtoing文件夹中。

[root@howtoing howtoing]# rm -rf *

[root@howtoing howtoing]# ls -l

total 0

3.如何保护/ etc / passwd和/ etc / shadow文件

在文件/ etc / passwd文件或/ etc / shadow的设置不变的属性,使他们从意外删除保护或篡改,也将禁用用户帐户的创建。

[root@howtoing howtoing]# chattr +i /etc/passwd

[root@howtoing howtoing]# chattr +i /etc/shadow

现在尝试创建一个新的系统用户,你会得到错误信息说“无法打开/ etc / passwd文件 ”。

[root@howtoing howtoing]# useradd howtoing

useradd: cannot open /etc/passwd

这样,您可以对重要文件或系统配置文件设置不可变的权限,以防止删除。

4.附加数据,而不修改文件上的现有数据

假设你只希望让大家只是在附加文件中的数据不会更改或修改已经输入的数据,你可以用' 一 '属性如下。

[root@howtoing howtoing]# chattr +a example.txt

[root@howtoing howtoing]# lsattr example.txt

-----a---------- example.txt

设置附加模式后,可以打开文件以仅以附加模式写入数据。您可以如下所示取消设置append属性。

[root@howtoing howtoing]# chattr -a example.txt

现在,试图取代现有的文件内容example.txt的 ,你会得到错误提示“ 不允许操作 ”。

[root@howtoing howtoing]# echo "replace contain on file." > example.txt

-bash: example.txt: Operation not permitted

现在尝试追加对现有文件example.txt中新的内容和验证。

[root@howtoing howtoing]# echo "replace contain on file." >> example.txt

[root@howtoing howtoing]# cat example.txt

Here is the example to test 'a' attribute mean append only.

replace contain on file.

5.如何保护目录

为了确保整个目录及其文件,我们使用“-R”(递归)开关,“+ i”标记的文件夹的完整路径。

[root@howtoing howtoing]# chattr -R +i myfolder

设置递归属性后,尝试删除文件夹及其文件。

[root@howtoing howtoing]# rm -rf myfolder/

rm: cannot remove 'myfolder/': Operation not permitted

要取消设置权限,我们使用相同的'-R'(递归)开关与'-i'标志以及文件夹的完整路径。

[root@howtoing howtoing]# chattr -R -i myfolder

而已!要了解有关chattr命令属性的更多信息,标志和选项使用手册页。

Linux文本撤销修改,5个'chattr'命令使重要文件在Linux中不可更改(不可更改)相关推荐

  1. Linux常用命令(本篇包括,Linux目录结构介绍、Linux Shell介绍、9个常见命令介绍、文件的概念、文件的操作(20个)、目录的操作、文件和目录的权限、文件压缩及解压缩)

    Linux常用命令(本篇包括,Linux目录结构介绍.Linux Shell介绍.9个常见命令介绍.文件的概念.文件的操作(20个).目录的操作.文件和目录的权限.文件压缩及解压缩)         ...

  2. linux清除文件后df还是满的,Linux系统下用du和df命令清除大文件的方法

    很多用户表示,Linux系统中发现/home目录下剩余空间不足的时候,可以使用du和df命令来对找到大文件,并且对它们进行删除,从而腾出足够的空间.但是,如何用du和df命令清除大文件呢?下面,U大侠 ...

  3. Linux学习一:(Bash 常用命令、vim操作、Linux框架目录)

    一.Bash 常用命令 1.管道(PIPING) 1.1 | 一种管道,其左方是一个命令的 STNOUT,将作为管道右方的另一个命令的 STDIN. 例如:echo 'test text' | wc ...

  4. wingrub命令行启动深度linux,用GRUB(包括WINGRUB)命令行模式引导安装Linux

    作者: 北南南北 来自: LinuxSir.Org 提要: Linux的安装过程的引导有几种方法,一种是在DOS下通过loadlin进行安装:一种是通过lilo系统引导管理器进行引导: 还有一种就是通 ...

  5. linux通过java获取root权限_通过可写文件获取Linux root权限的5种方法

    Linux系统中,全部都是以文件形式存在的,包括目录.设备都是有权限的,共有读.写.可执行三种.管理员为文件设置好权限后,应该要考虑哪些Linux用户会被允许和限制上述的三个权限. 通过可写脚本进行r ...

  6. linux将视频导入到iphone,如何将 IPhone 的文件导入 Linux

    如何将 IPhone 的文件导入 Linux 完全免费方案. 方法一: 使用 Koder 的 Local File Access 功能 这方法不需要在 Linux 端做任何配置.IPhone 端 安装 ...

  7. linux之用echo输入数据到文本末尾以及用open ssl命令在证书文件里面获取公钥

    1.用echo输入数据到文本末尾 我们知道清空一个文本快速的方法如下 echo "" > file 我们可以用echo输入数字到文本末尾,记住是 >> echo ...

  8. Linux 批量删除 修改日期大于某一天的文件

    在服务器运维过程中,我们往往会产生大量的日志文件. 如果日志文件命名能看出日志产生的时间,这些文件是很好删除的. 但有时,我们可能有成千上万的没有命名规律日志文件 下面的方法可以根据日志最后修改时间 ...

  9. linux恢复rm命令,Linux系统下不小心使用rm命令删除的文件能有办法恢復吗?

    linux的文件被rm删除是可以通过linux自带的文件恢复工具debugfs来进行恢复,但是只能恢复ext2文件系统的文件,不能恢复ext3文件系统的文件. 1,首先查看需要恢复的文件所在的文件系统 ...

最新文章

  1. gnuradio上怎么使用python文件_使用Python从PDF文件中提取数据
  2. android onitemclicklistener 参数,android – OnItemClickListener从模型中获取数据
  3. 华为云WeLink:智能工作空间,联接无限想象
  4. express中间件系统的基本实现
  5. mkpasswd命令使用方法
  6. CListCtrl 使用方法总结
  7. Git详解(2)——Git基础
  8. Ubuntu php安装过程,ubuntu安装lemp步骤
  9. paip.c语言gtk开发环境CodeBlocks /QT建立最佳实践
  10. 2%用计算机怎么算,五险一金计算器的使用方法
  11. 气球java游戏_50个室内趣味游戏活动
  12. 2022年5月4号SSM框架整合学习一:
  13. 营收、净利双收,贝壳找房稳了?
  14. SAP如何控制采购价格不显示(适用ME23N、ME2L、ME2M、ME2K、ME2J、ME2C、ME2B、ME2N等)
  15. 局域网唤醒 外网无法唤醒_为您的网络设置局域网唤醒控制面板
  16. 国产化飞腾CPU主板安装统信专业版桌面OS,以及统信OS如何进root用户
  17. P1551 亲戚 (并查集)
  18. 机房气体消防系统设计重点
  19. 第六章 Java API
  20. ati显卡驱动的安装 linux,Fedora 18 下ATI 显卡驱动的安装

热门文章

  1. NCSDK make install: Error in line 170
  2. java hashmap遍历顺序_Java中HashMap遍历的两种方式
  3. android 获取弹窗的值,从弹出窗口调用的Activity 返回一个值_popupwindow_开发99编程知识库...
  4. 多个线程访问统一对象的不同方法_不会多线程还想进BAT?精选19道多线程面试题,有答案边看边学...
  5. springboot日志写入mysql_44. Spring Boot日志记录SLF4J【从零开始学Spring Boot】
  6. Android开发之API29以上Environment.getExternalStoragePublicDirectory废弃的问题
  7. python 抢购口罩_Python 京东口罩监控+抢购
  8. vscode 新建php模板,使用vscode快速建立vue模板
  9. 试题 E: 迷宫 第十届蓝桥杯
  10. 《迷人的8051单片机》---- 1.2小元器件有大智慧