如何在 Linux 下设置目录或文件可读写,但不可以删除权限

例如:现在 /home 目录下有 :目录 data 和 文件 test.txt

(1)设置 /home/test.txt 可读写但是不可以删除命令 (文件设置):

      sudo chattr +a /home/test.txt

(2)取消此权限命令(文件设置):

       sudo chattr -a /home/test.txt

(3)递归的设置 /home/data 文件夹的可读写,但是不可以删除权限命令(目录设置):

      sudo chattr +a -R /home/data

(4)递归取消文件夹的此属性(目录设置):

         sudo chattr -a -R /home/data

chattr 和 chmod 的区别

利用 chattr 锁定文件,防止更改,与 chmod 这个命令相比,chmod 只是改变文件的读写、执行权限,更底层的属性控制是由 chattr 来改变的。
chattr +i file,可以防止系统中某个 (关键) 文件被修改,有需要的话,不妨试试。

chattr -i /etc/resolv.conf
加锁:chattr +i /etc/passwd 文件不能删除,不能更改,不能移动
查看加锁: lsattr /etc/passwd 文件加了一个参数 i 表示锁定
解锁:chattr -i /etc/passwd 表示解除

小结:

  1. 设置有 i 属性的文件,即便是 root 用户,也无法删除和修改数据
  2. 与 chmod 这个命令相比,chmod 只是改变文件的读写、执行权限,更底层的属性控制是由 chattr 来改变的
  3. 只有拥有 root 权限,才拥有设置 chattr 的权限
本作品采用《CC 协议》,转载必须注明作者和本文链接
满腹经纶,才能江山如画。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!