首页
关于我们
友链链接
壁纸下载
更多
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
Search
1
[Win DD包] wes7-x86-cn-精简,安装后仅占用1.55G存储空间
26,091 阅读
2
v2rayN基础使用教程、配置说明、添加订阅、路由选择
18,931 阅读
3
鸿蒙Next也能科学上网?Clash Meta for harmorny next os
12,469 阅读
4
纯血鸿蒙系统如何安装电报、推特、Tiktok和油管APP
11,629 阅读
5
保姆级教程!甲骨文ARM DD成Debian10并升级内核成5.10
6,557 阅读
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
登录
Search
标签搜索
vps
typecho
linux
bench
mysql
cloudflare
nginx
lnmp
empirecms
ssl
openwrt
google
centos
docker
qbittorrent
telegram
n1
301
free
serverstat
V+变量
累计撰写
306
篇文章
累计收到
264
条评论
首页
栏目
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
页面
关于我们
友链链接
壁纸下载
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
搜索到
1
篇与
的结果
2026-11-07
三步法解决linux小磁盘服务器磁盘满的痼疾
0 背景博主用的阿里云VPS只有30G磁盘空间,之前把博客、图库放到阿里云上,加上部署的统计、监控、测试的docker程序,经常出现服务器磁盘已满,导致无法继续写入磁盘,很多网站程序和进程都报错,所以有必要进行清理。但是,先别急着删 /tmp。 空间满的真凶通常不是它,而是这几处:/var/log 与 journald 日志、Docker 镜像/构建缓存、包管理器缓存,以及「已删除但仍被进程占用」的文件(df 显示满、du 却对不上)。盲删 /tmp/* 还可能删掉运行中的 socket、锁文件和正在使用的临时文件,把服务搞挂。1 排查问题排查占用问题df -hT # 哪个分区满了 df -i # 是否 inode 耗尽(有空间却写不进) sudo du -xhd1 / 2>/dev/null | sort -rh | head -20 # 根目录各层占用 sudo lsof +L1 2>/dev/null | head -30 # 删了但没释放的文件 sudo du -xhd1 /var 2>/dev/null | sort -rh | head -15 sudo journalctl --disk-usage sudo docker system df 2>/dev/null2 清理磁盘2.1 清理包缓存sudo apt clean(Debian/Ubuntu)或sudo dnf clean all(RHEL 系)优点是随时可重新下载,最安全。2.2 清理journal 日志sudo journalctl --vacuum-size=200M 只裁旧日志,不动服务。2.3 清理系统临时文件:优先sudo systemd-tmpfiles --clean按 tmpfiles.d 规则清理,比手工 rm 安全得多。2.4 清理tmp确需手工清 /tmp:先预览清单,确认后再删,只处理 7 天未访问的普通文件:sudo find /tmp /var/tmp -xdev -type f -atime +7 -print | head -100 #只看,不删清单确认无误后,把 -print 换成 -delete。不要碰 /run、/dev/shm:sudo find /tmp /var/tmp -xdev -type f -atime +7 -delete | head -1002.5 清理内存若 lsof +L1 有输出:重启对应服务释放句柄,别 kill -9 盲杀;也不要直接 rm 正在写的大日志,用 truncate 或 logrotate。2.6 清理dockerdocker system prune 会删停止的容器、未被引用的镜像和网络,必须单独确认。3 系统加固-减少垃圾文件产生给增长封顶,让系统自己约束,避免过几个月又堆满。都是一次配置、长期生效,且不删除现有数据。3.1 给系统日志封顶(最常见的大头)bashsudo mkdir -p /etc/systemd/journald.conf.d && printf '[Journal]\nSystemMaxUse=200M\nMaxRetentionSec=2week\n' | sudo tee /etc/systemd/journald.conf.d/10-limit.conf && sudo systemctl restart systemd-journaldjournal 日志总量硬上限 200M、只保留两周,超出自动轮转丢弃。用 drop-in 文件不改动原配置,删掉 10-limit.conf 即可回滚;重启 journald 不会中断业务。3.2 让包管理器不再囤积安装包bashprintf 'APT::Keep-Downloaded-Packages "false";\n' | sudo tee /etc/apt/apt.conf.d/99-no-keep-downloadsDebian/Ubuntu:apt install 完即删 .deb,/var/cache/apt/archives 不再越攒越大。RHEL/CentOS 系改成在 /etc/dnf/dnf.conf(或 /etc/yum.conf)的 [main] 段设 keepcache=0。这条纯配置、无需重启服务。3.3 开启临时文件自动回收bashsudo systemctl enable --now systemd-tmpfiles-clean.timer每天自动跑一次 systemd-tmpfiles --clean,按系统默认规则清掉 /tmp 中超过 10 天、/var/tmp 中超过 30 天的文件。多数发行版默认已启用,这条是确认并强制生效。想更激进可加 printf 'd /tmp 1777 root root 7d\n' | sudo tee /etc/tmpfiles.d/10-tmp.conf。注意:启用后系统会自动删除旧临时文件,如果你有长期搁在 /tmp 里的数据,先挪到 /home 下的目录。验证是否生效:bashsystemctl list-timers systemd-tmpfiles-clean* --no-pager sudo journalctl --disk-usage df -h3.4 docker优化建议如果这台机器跑 Docker,容器日志往往是比 /tmp 更凶的隐形杀手。建议在 /etc/docker/daemon.json 里配置 log-opts 的 max-size(如 10m)和 max-file(如 3)——但不要直接覆盖已有 daemon.json(先备份、合并字段),且 systemctl restart docker 会中断正在运行的容器,需要单独安排窗口。新配置也只对新建容器生效,已有容器要重建。
2026年11月07日
1 阅读
0 评论
0 点赞