Linux 服务器硬盘满了后感觉会出不少 bug

121 天前
 seWindows
服务器上一直不停报错没注意,跑了几个月,竟然把 journal 的日志占满了。journal 日志一直没限制。后来清理的时候发现大概占了硬盘空间的 80%左右,其实是发现 ssh 登不上去了才发现这个问题。

商家的 vnc 也因为硬盘满了,tty 进不去。

还好进救援模式才进去了,不然只能重装了。一看是真的 100%,一点也没有空余空间了。

期间还发现了如果硬盘满了,挂载里面 loop 文件也挂载不上去,提示“块有问题”。清理完后就行了


后来复盘的时候才发现是一个 loop 硬盘满了,读写一直失败。导致宿主机一直记录这个失败日志,导致宿主机硬盘也满了。
硬盘满了后,感觉有不少软件会卡在 syslog 或者其他 log 函数上。很多软件都会出现预期之外的行为。
3310 次点击
所在节点    Linux
22 条回复
wacxr123
121 天前
确实,我的经验是如果按 Tab 无法自动补全路径,就知道是盘满了(
flynaj
121 天前
这个时候你就知道 zabbix 的好处了。
Donaldo
121 天前
我中招过几次,但我一堆服务器总是懒得去设置,其实可以设置一下 rotate 或者过期日期,要不迟早有满的一天。。。啊,好累。。。
Kumo31
121 天前
这些行为就是预期内的,只不过大部分软件的设计者就没考虑处理这种情况。我们还有一个专门的避免任何 IO 的程序去做这种情况下的节点降级处理
june4
121 天前
我自己写了个快满了无限 5 分钟发一次邮件的定时任务,放在我的 linux 服务器初始化安装脚本里。

#!/bin/bash -e
if [[ -f /etc/default/disk-usage-agent ]]; then
. /etc/default/disk-usage-agent
fi
max_usage=${max_usage:-90}
usage=$(df | grep -e '/$' | awk '{print $5}' | tr -d %)
if (( usage > max_usage )); then
warnmsg="WARNING: disk-usage-agent: exceeds max usage: $usage%"
echo $warnmsg >&2
df -h | /opt/util/bin/mailadmins "$warnmsg" -
fi
totoro625
120 天前
某些程序的写入操作是删除原有数据再写入(并不是追加和修改),硬盘已满的情况下这样会导致文件丢失
这里点名 acme
kneo
120 天前
这不叫 bug 。举个再极端的例子,你电脑断电了程序挂了,你能说这是软件 bug ?
L4Linux
120 天前
你们运维在干啥? logrotate 都不跑一下的吗?
dfdd1811
120 天前
所以虽然我自己只有三台机器,但我还是用 prometheus+grafana…
wheat0r
120 天前
这事最大的 bug 是有人把硬盘跑满了
dengjunhua
120 天前
监控和告警的重要性
wolonggl
120 天前
磁盘满了。依赖在磁盘创建临时文件基本收到影响,
报告/tmp 空间满了后,一大堆软件受影响
flyqie
119 天前
这个其实蛮正常的。

毕竟不同软件的内部流程是不一样的,自然是没法统一的。

并且说真的。。应该设个剩余空间报警,不然很麻烦。
Yii234
119 天前
最基础的主机监控告警都没有,是生产服务器吗?
PerFectTime
119 天前
想起来之前看到的一个段子,新拿到服务器先 dd 一个 10g 的空文件,等到磁盘满了删除该文件以快速解决磁盘占用满的问题
sunxvvv
119 天前
硬盘满了,数据无法写到硬盘上,程序和内核的部分功能无法正常完成,不出问题才不合理吧......
pollux
118 天前
@PerFectTime 牛 +1
flyqie
118 天前
@PerFectTime #15

你这让我想起来 ext4 的保留空间了。。

都是干这个用的
FrankAdler
118 天前
/usr/bin/journalctl --vacuum-size=50M 放定时任务把
Coelacanthus
112 天前
@FrankAdler 那不如在 journald.conf 里配置 SystemMaxUse 或者 SystemKeepFree

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1073133

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX