![当文件系统使用情况发生显着变化时触发脚本](https://linux22.com/image/226150/%E5%BD%93%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%BD%BF%E7%94%A8%E6%83%85%E5%86%B5%E5%8F%91%E7%94%9F%E6%98%BE%E7%9D%80%E5%8F%98%E5%8C%96%E6%97%B6%E8%A7%A6%E5%8F%91%E8%84%9A%E6%9C%AC.png)
是否有现有的解决方案可供systemd
基础系统在某些文件系统上的使用超过或低于某些限制时调用用户定义的脚本,而无需每隔几秒实施一次轮询,这听起来效率很低?
对于某些基于设备映射器的设备,dmeventd
可以根据快照使用级别触发脚本,但这适用于块设备级别。我正在寻找文件系统级别的解决方案。
我想使用它的第一件事是tmpfs
根据当前交换空间使用情况动态调整限制:如果某个程序想要使用更多/tmp
空间,足够的交换空间仍然可用并且脏页数量足够低,则脚本可以增加限制mount -oremount,size=%LIMIT /tmp
并在删除文件后将其减少到最低限度。
但是,如果交换区几乎已满或脏页过多(相关程序写入速度太快),则脚本将记录当前使用情况,找到导致使用的进程lsof
,并保持较低的 tmp 限制以确保系统稳定性。
我不确定使用正确的标签,因此欢迎提出建议。