网站首页 > 技术文章 正文
需求
最近一段时间经常发生一些附件丢失的情况,所以需要将附件目录下的文件去加锁,不能给人删除,但是可以去读写和增加文件。
ps:附件是统一放在文件服务器上存储,通过nfs挂载。
思路
考虑用chattr命令来实现-->考虑在ln -s 软链接上限制-->考虑在mount 挂载上限制
下面主要介绍下 chattr命令。
chattr 语法
用chattr命令可以改变一个文件的隐藏属性。其语法格式为:
chattr [ -RVf ] [ -v version ] [ mode ] files…
下面给出几个选项的含义:
最关键的是在[mode]部分,[mode]部分的格式是+-=[acdeijstuACDST],这部分是用来设置文件的属性。其中+表示在原有参数设定基础上追加参数;-表示在原有参数设定基础上移除参数;=表示更新为指定参数。下面列出几个常用的属性参数的含义:
lsattr
用lsattr命令列出文件的隐藏属性。其语法格式为:
lsattr [ -RVadv ] [ files… ]
下面给出几个选项的含义:
下面这条命令显示MySecretDir目录的隐藏属性:
$ lsattr -Rd MySecretDir/ ----i----------- MySecretDir/
总结:
chattr测试是可以实现将一个文件夹下的文件禁止删除同时可以读写这个需求,但是只支持在ext2、ext3、ext4下实现,如果是其他文件系统就不支持了。
上面的附件因为是通过挂载去实现的,文件系统表现为nfs,所以不能用chattr实现,同样软链接也无法实现,mount只能限制ro或者rw,也无法满足需求,所以严格来说还是没有解决这个问题。大家有什么更好的意见可以在下方留言哦~
后面会分享更多关于devops和DBA内容,感兴趣的朋友可以关注下!!
猜你喜欢
- 2024-09-11 Linux系统中共有7种文件类型,您了解吗?
- 2024-09-11 如何优雅地删除 Linux 中的垃圾文件
- 2024-09-11 Linux中如何删除常用方式无法删除的文件
- 2024-09-11 linux下目录操作——进入、显示、复制、移动
- 2024-09-11 Linux 删除空目录(linux中删除空目录)
- 2024-09-11 linux下删除包含特殊符号的文件或目录
- 2024-09-11 Linux下的文件和目录(linux文件与目录的基本操作)
- 2024-09-11 Linux rmdir命令:删除空目录(linux删除一个空目录)
- 2024-09-11 Linux 误删文件恢复命令及方法(linux 误删文件恢复命令及方法是什么)
- 2024-09-11 如何在 Linux 中删除大于或小于 X 大小的文件
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)