记一次守护日志导致硬盘空间告警问题
记一次守护日志导致硬盘空间告警问题
问题
后台守护进程高频写日志导致硬盘空间频繁报警, 直接删除日志文件硬盘空间依然增长.
初步分析为日志文件当前状态为open
状态, 当文件open
以后,系统就以inode
号码来识别这个文件,不再考虑文件名.删除一个已open
日志文件, 只是影响到文件系统中inode
引用链接数, 并未影响进程已打开文件inode
文件数据block
, 写操作依然有效, 导致硬盘空间不断增长.
解决方法1
通过proc
文件系统( /proc/pid/fd
) 获取进程运行中文件句柄链接进而获取实际关联的文件名称, 并强制使用 ‘> fd’ 清空日志.
pidof xxx
ls -l /proc/pid/fd/
lrwx------ 1 root root 64 May 24 10:39 0 -> /tmp/2018-04-19_205225.log (deleted)
lrwx------ 1 root root 64 May 24 10:39 1 -> /tmp/2018-04-19_205225.log (deleted)
lrwx------ 1 root root 64 May 24 10:39 2 -> /tmp/2018-04-19_205225.log (deleted)
...
(deleted) 标识日志文件已删除> 2
强制清空日志
解决方法2
重定向当前进程日志文件句柄到 /dev/null
. 这里需要一个工具reredirect, 可以将运行中进程文件句柄直接重定向到指定文件或者文件句柄. 其实现原理为通过 ptrace
attach 到运行中进程, 调用 syscall dup
dup2
重定向指定文件句柄即可.
reredirect -N -m /dev/null pid
-N
不恢复原来文件句柄.
记一次守护日志导致硬盘空间告警问题相关推荐
- Sqlserver 错误日志太大导致硬盘空间不足
Sqlserver 数据库因长时间使用,错误日志过大导致硬盘空间不足. 解决办法:清除Sqlserver错误日志 1.新建查询 2.选择master 3.执行 sp_cycle_errorlog 六次 ...
- Boot Camp分区时强制终止导致硬盘空间消失的解决方法
问题描述 昨天笔者在Mac上安装双系统时,因为时间太久,而我想睡觉了,所以在bootcamp在分区的时候强制关闭了电脑.早上起来之后发现磁盘空间少了100G(分给Windows的空间),而且这个分区不 ...
- 记一次Linux虚拟机硬盘空间不足的处理方案
记一次Linux虚拟机硬盘空间不足的处理方案 **起因:**公司的服务器是windows的,而我需要一个基于Linux的dev环境,于是用vmvare创建了一个centos7的系统实例,里面安装mys ...
- 计算机硬盘空间不足怎么删,Win10硬盘空间不足?教你这样清理,瞬间多出10个G!...
俗话说得好,工欲善其事必先利其器! 电脑作为我们使用的重要工具,不好好的对待,是很有可能导致一些不好的事情频频发生滴~ 比如你游戏放大招的时候,突然一卡,血没了:或者正在编辑重要的资料,突然一卡,页面 ...
- MySQL存储引擎 lnnoDB逻辑架构 innodb存储引擎表空间(ibd文件)详解 回滚日志的物理空间
文章目录 存储引擎 一 MySQL组织架构 二 查看存储引擎信息 三 修改存储引擎 3.1 配置文件修改存储引擎 3.2 临时修改存储引擎 3.3 建表时修改存储引擎 四 存储引擎实验 五 数据库升级 ...
- 记一次 superblock 损坏导致服务器无法启动的故障修复
原文地址:http://www.cppblog.com/dancefire/archive/2011/03/09/fix-bad-superblock-in-linux.html 前几天接到朋友联系, ...
- 哪些软件问题也可导致硬盘录像机死机
硬盘录像机死机除了一些硬件上的问题之外,也有不少是由软件引起的.如: 1.病毒感染 病毒是计算机操作的大患,几乎人人恶之.病毒可以使计算机工作效率急剧下降,造成频繁死机.数据丢失.系统崩溃,甚至损坏主 ...
- VMware 下扩展linux硬盘空间
linux下扩展硬盘有非常多种方式,在扩展之前.尽量看看自己的空间存在的有哪些盘,然后再进行扩展. 假设是扩展的话,磁盘的符号和已经有的符号一样,比方都是sda的设备,知识分区不同.可能是sda3 s ...
- linux系统加硬盘容量,Linux系统扩展硬盘空间
最近在编译内核的时候,遇到了/usr/src/硬盘空间不足的问题,此前遇到硬盘分区的问题总是用图形化工具进行,这样虽然高效可是总感觉太傻瓜,正好凑着这个机会总结一下. Linux相关命令介绍 本文主要 ...
- linux 硬盘报错日志,Linux内核I_O系统报错日志与硬盘故障对应关系
Linux 内核I/O 系统报错日志与硬盘故障对应关系 Jun04 2011Leave a Comment Written by chen 日志信息 故障现象描述 与硬盘关系 scsi1: ERROR ...
最新文章
- java输出回文数原代码_JAVA怎么用循环语句编写一个判别是否为回文数的代码?...
- 病毒周报(071029至071104)
- [摘录]遇见未知的自己(一)
- MyEclipse 破解文件 run.bat闪退
- linux下mysql主从同步是主从i/o线程显示为no_mysql主从同步IO线程NO
- android 名片识别 简书,iOS 自己实现 名片识别 三 图片处理
- 迁移 Docker 到其它磁盘目录
- 今天又遇到了一个问题
- PyCharm——Youki觉得好用的快捷键~
- 数据结构HashMap(Android SparseArray 和ArrayMap) 1
- 免费的录屏软件,来试试这一款软件吧!
- 在线Cron在线表达式生成器工具推荐【磁钉cron生成器】
- C#:实现读取网卡信息
- C++ 求解最小公倍数
- 鞋子微商怎么做qq引流?微商如何通过QQ空间引流
- 【Python零基础到入门】Python基础语法篇——基本数据类型【文末送书】
- Excel用函数把时间戳格式和日期格式相互转换
- 微信小程序提交上线时 定位接口提示未配置
- 宝塔服务器源代码修改记录,宝塔BT面板修改相关记录,所有插件免费用
- 动态建树之——查字典
热门文章
- el-input只能输入数值和小数点,并且不显示上下箭头
- datax 不识别字段过滤_初效空气过滤器种类
- cad直线和圆弧倒角不相切_建议收藏:史上最全CAD快捷键大全
- 线性判别用于提取词向量_各种机器学习算法的应用场景分别是什么(比如朴素贝叶斯、决策树、K 近邻、SVM、逻辑回归最大熵模型)?...
- pyqt5 qwidget有父类窗口如何设置模态_实战PyQt5: 024-Qt Designer进阶一
- 移植php,PHP交叉编译和移植
- docker privileged作用_docker容器性能监控cAdvisor+influxDB+grafana监控系统安装部署
- odbc中不显示oracle,oracle:odbc无法提供初始化
- CentOS 7.6网络配置
- MySQL(6)-----数据类型