#!/bin/bash # 随身 WiFi(4G 设备)空间体检 set -u echo "════════ 1. 磁盘总览 ════════" df -h / 2>/dev/null | sed 's/^/ /' echo echo " 根分区占用明细(前 20 大目录):" du -xhd1 / 2>/dev/null | sort -rh | head -20 | sed 's/^/ /' echo echo "════════ 2. /root 下明细 ════════" du -xhd1 /root 2>/dev/null | sort -rh | head -15 | sed 's/^/ /' echo echo "════════ 3. /var 下明细 ════════" du -xhd1 /var 2>/dev/null | sort -rh | head -12 | sed 's/^/ /' echo echo "════════ 4. 日志和缓存(最容易清理的)════════" for d in /var/log /var/cache/apt /var/lib/apt/lists /tmp /root/.cache; do [ -d "$d" ] && printf " %-28s %s\n" "$d" "$(du -sh "$d" 2>/dev/null | awk '{print $1}')" done echo echo " journald 日志占用:" journalctl --disk-usage 2>/dev/null | sed 's/^/ /' echo echo "════════ 5. 中转相关文件 ════════" du -sh /root/lanremote-relay 2>/dev/null | sed 's/^/ /' du -sh /root/lanremote-relay/downloads 2>/dev/null | sed 's/^/ downloads: /' ls -la /root/lanremote-relay/downloads/ 2>/dev/null | sed 's/^/ /' echo " 日志文件:" ls -lah /root/lanremote-relay/*.log 2>/dev/null | awk '{printf " %-42s %s\n", $9, $5}' echo echo "════════ 6. 我调试时留下的临时文件(_build 上传的脚本)════════" du -sh /root/*.sh /root/*.py 2>/dev/null | sort -rh | head -20 | sed 's/^/ /' echo " /root 下的零散文件总数: $(ls -1 /root 2>/dev/null | wc -l)" echo echo "════════ 7. 内存和 swap ════════" free -m | sed 's/^/ /' echo echo " swap 分区情况:" swapon --show 2>/dev/null | sed 's/^/ /' || echo " 没有启用 swap" echo echo "════════ 8. 最大的 20 个文件(全盘)════════" find / -xdev -type f -size +3M 2>/dev/null -printf '%s %p\n' \ | sort -rn | head -20 \ | awk '{printf " %8.1f MB %s\n", $1/1048576, $2}'