chattr实现文件不可删除

用自己的话解释清楚这件事儿~

目前问题:
Android手机,在/system/app 目录下的apk,使用chmod 修改权限失败,rm命令也删除不掉。

现象:
rm failed for wandoujia-zhuodashi1_xianxia.apk, Operation not permitted

解决办法:

busybox chattr -i wandoujia-zhuodashi1_xianxia.apk

chattr 命令详解

概述
命令chattr 可用于修改文件的属性以提高系统的安全性,(不过它的许多功能需要内核的支持,如-D 检查压缩文件中的错误功能,需要2.5.19以上的内核版本支持)。lsattr的功能比较简单查看这些属性。

命令的用法:
chattr [ -RVf ] [ -v version ] [ mode ] files...
最关键的是【mode】部分,[mode]部分是由+-=和[ASacDdIijsTtu]这些字符组成,用来控制文件属性。
+:再原有参数基础上追加参数
-:在原定参数基础上,移除参数
=:更新为指定的参数
A:文件或目录的 atime (access time)不可被修改(modified), 可以有效预防例如手提电脑磁盘I/O错误的发生。
S:硬盘I/O同步选项,功能类似sync。
a:即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文 件安全,只有root才能设定这个属性。
  c:即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作。
  d:即no dump,设定文件不能成为dump程序的备份目标。
  i:设定文件不能被删除、改名、设定链接关系,同时不能写入或新增内容。i参数对于文件 系统的安全设置有很大帮助。
   j:即journal,设定此参数使得当通过mount参数:data=ordered 或者 data=writeback 挂 载的文件系统,文件在写入时会先被记录(在journal中)。如果filesystem被设定参数为 data=journal,则该参数自动失效。
  s:保密性地删除文件或目录,即硬盘空间被全部收回。
  u:与s相反,当设定为u时,数据内容其实还存在磁盘中,可以用于undeletion.
各参数选项中常用到的是a和i。a选项强制只可添加不可删除,多用于日志系统的安全设定。而i是更为严格的安全设定,只有superuser (root) 或具有CAP_LINUX_IMMUTABLE处理能力(标识)的进程能够施加该选项。

///**************************************************************************

给Hongkong那边Linux主机ftp给配置好了,突然想到应该得让用户能够上传,但是不能删除文件,在Windows下很容易实现,可是在Linux里面咋办呢?

使用samba倒是可以控制,难不成我为了这个还去专门配置一个samba

不行,得另外想办法才成

想到去年碰到一件事,一个目录死命都无法删除,后来使用chattr

是不是可以利用chattr来达到目的呢?

man了一下chattr命令,发现:

A file with the `a’ attribute set can only be open in append mode for

writing. Only the superuser or a process pessessing the

CAP_Linux_IMMUTABLE capability can set or clear this attribute.

好像可以达到目的呢

试验了一下chattr +a /tmp/aaa

lsattr

—–a——- ./aaa

然后登录ftp,果然不能删除了

大功告成。

Linux服务器中实现文件夹可写不可删除相关推荐

  1. 新建一个文件夹服务器,云服务器中新建文件夹命令

    云服务器中新建文件夹命令 内容精选 换一换 部署提供可视化.一键式部署服务,支持并行部署和流水线无缝集成,实现部署环境标准化和部署过程自动化.本节通过以下五步介绍如何使用部署服务将项目代码部署到云主机 ...

  2. 服务器新建文件命令,云服务器中新建文件夹命令

    云服务器中新建文件夹命令 内容精选 换一换 使用mount命令挂载文件系统到云服务器,云服务器提示access denied,挂载失败.原因1:文件系统已被删除.原因2:执行挂载命令的云服务器和被挂载 ...

  3. 在linux系统中创建文件夹,Linux系统中创建文件夹命令详解

    Linux系统中创建一个新的文件夹我们可以使用命令来执行,下面由学习啦小编为大家整理了Linux系统中创建文件夹命令详解,希望对大家有帮助! Linux系统中创建文件夹命令详解 一.mkdir命令使用 ...

  4. 云服务器中新建文件夹命令,云服务器中新建文件夹命令

    云服务器中新建文件夹命令 内容精选 换一换 本指导适用于用户做网页301重定向时参考使用.装有IIS的服务器做301重定向在IIS里把网站正常发布,例如域名为www.aaa.com.在硬盘上建一个空文 ...

  5. linux中tmp文件在哪,Linux系统中/tmp文件夹

    在Linux系统中/tmp文件夹里面的文件会被清空,至于多长时间被清空,如何清空的,可能大家知识的就不多了,所以,今天我们就来剖析一个这两个问题. 在RHEL\CentOS\Fedora\系统中(本次 ...

  6. linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝

    linux两台服务器之间文件/文件夹拷贝 跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹--------------------------------- ...

  7. linux内核中cent文件夹,Centos 中如何快速定制二进制的内核 RPM 包

    1.rpm 制作前的环境准备: yum install -y ncurses-devel qt-devel rpm-build redhat-rpm-config asciidoc hmaccalc ...

  8. 在浏览器中直接访问linux服务器中的文件(以图片为例)

    首先必须在服务器中配置tomcat,当在浏览器中输入http://服务器的公网IP:8080/时,能出现tomcat服务器首页时,则配置成功,如下图: 2. 找到tomcat的安装目录中conf文件并 ...

  9. 服务器中所有文件夹变只读,我的电脑里全部文件夹属性都变成只读了改也改不过来...

    第一个方法:你用管理员身份进入电脑然后更改一下文件夹的属性. 隐藏文件看不到可以通过下面的方法显示出来:在文件夹选项里去掉'隐藏受保护的文件和文件夹'前面的勾选--应用--确定 试试能否显示出你所需要 ...

最新文章

  1. ELK 为什么这么流行?|GIAC 访谈
  2. php xp不支持,据说PHP5.5发布 不再支持XP和2003
  3. python调用bat有时可以、有时不行_python编程实现对远程执行bat文件时遇到的错误...
  4. 线程调度 java_Java多线程--线程的调度
  5. gdb / 调试进入 so 库的方法
  6. 简易的bbs论坛开发过程上(后台开发)
  7. asl不成功怎么算_那些减肥成功还不反弹的人是怎么做到的?
  8. java 1.8新增功能_Java 8的新增功能(第二部分-可能会出现什么)
  9. 图像识别 RGB HSV
  10. GetConsoleTitle 函数--获取控制台窗口标题
  11. js 计算两个时间的时间差
  12. MySQL全文索引的坑 20211202
  13. Win10管理员用户被禁用,无法登陆系统
  14. 泰坦尼克号生存情况预测
  15. Maven的下载与配置 和在IDEA中创建Maven的项目
  16. 我的世界服务器信号下面是红,适用于服务器的红石抽奖机我的世界抽奖机电路图...
  17. javacv opencv 多张图加入mp3的音频合成视频
  18. deep learning实践经验总结
  19. 一般情况下的椭圆方程
  20. Android Camera旋转角度总结

热门文章

  1. OVS vswitchd启动(三十九)
  2. OVS vswitchd启动(三十八)
  3. leetcode算法题--扁平化嵌套列表迭代器
  4. python批量读取grib_windows python读取grib2数据
  5. 什么工具可以去视频去水印
  6. C#调用C/C++ DLL 参数传递和回调函数的总结
  7. 仿QQ6 0侧滑之ViewDragHelper的使用(一)
  8. 【mongo】centos6.9安装mongo2.6.3
  9. Centos7_ELK5.4.1配置部署
  10. 浅谈 underscore 内部方法 group 的设计原理