批量清理网站垃圾图片释放磁盘空间

网站跑着跑着磁盘就红了,登录面板一看,多半是被上传的图片、旧缩略图和备份截图塞满了。
手动一张张删不现实,直接用 rm 又怕删错。
这篇文章会告诉你如何安全、批量地清理网站中的垃圾图片,立竿见虎地释放磁盘空间。

动手前先摸清敌情:哪些图片能删

别急着执行命令,先登录服务器或面板,确认以下三点:

  1. 磁盘占用情况。执行 df -h 查看哪个分区已用比例高,通常 / 或 /www 是网站目录所在。
  2. 大图集中在哪。用 du -sh /www/wwwroot/*/wp-content/uploads/ 这种命令按项目查,或者直接在宝塔「文件」里看目录大小。
  3. 判断哪些可以删。以下几类图片基本是安全的清理对象:
  • 从未被引用过的旧上传(比如几年前的文章已删除但图片还在);
  • 主题或插件生成的缩略图(名称通常带 -150x150、-300x200 等尺寸后缀);
  • 重复的备份截图、无效的日志截图;
  • 超过一定天数未访问的临时缓存图片。

如果你用 WordPress,还可以用插件扫描未使用的媒体文件,但为了通用性,这里讲纯命令和面板法。

批量清理:一屏命令搞定海量垃圾图

方法一:按时间清理(适用于旧图片堆积)

例如删除 /www/wwwroot/example.com/wp-content/uploads/ 目录下 180天前 的所有图片:

find /www/wwwroot/example.com/wp-content/uploads/ -type f \( -name "*.jpg" -o -name "*.jpeg" -o -name "*.png" -o -name "*.gif" -o -name "*.webp" \) -mtime +180 -delete

参数说明:

  • -type f 只找文件;
  • \( ... \) 组合多个扩展名条件;
  • -mtime +180 表示修改时间超过 180 天;
  • -delete 直接删除。强烈建议先去掉 -delete 跑一遍预览,确认结果没问题再加 -delete。

方法二:按尺寸清理(适用于超大图)

有些站长允许上传几 MB 的图片,访问量一上来磁盘就崩。
删除大于 1MB 的图片:

find /www/wwwroot/example.com/ -type f \( -name "*.jpg" -o -name "*.png" \) -size +1M -delete

同样先预览:find ... -size +1M -exec ls -lh {} \; 看看都有哪些。

方法三:批量删除带尺寸后缀的缩略图(安全高效)

WordPress 等程序会自动生成 -150x150.jpg、-300x200.jpg 等副本,原始图还在的话,这些副本可以放心删。
执行:

find /www/wwwroot/example.com/wp-content/uploads/ -type f -name "*-[0-9]*x[0-9]*.jpg" -o -name "*-[0-9]*x[0-9]*.png" | xargs rm -f

面板用户操作路径:宝塔批量删除

如果你用宝塔 Linux 面板:

  1. 登录面板,左侧点「文件」。
  2. 导航到 www/wwwroot/你的站点/wp-content/uploads/ 等目录。
  3. 右上角搜索框输入 *.jpg 或 *.png,勾选显示结果后点击「批量操作」→「删除」。
  4. 如果要按时间筛选,可以先用查找功能(顶部「搜索」)设置文件修改时间范围,再批量操作。

宝塔本身不提供按尺寸或按时间过滤的批量删除,建议用 find 命令更灵活。

清完千万别忘的两件事

1. 检查网站是否正常

重点刷新文章详情页、缩略图列表、首页。
如果发现图片裂了,说明误删了原始图,赶紧从回收站恢复(宝塔自带回收站,find 命令也可以先移到 /tmp/ 而不是直接删)。

2. 验证磁盘占用

执行 df -h 再次查看,或宝塔面板首页看磁盘图表。
如果释放空间不理想,可能是日志、数据库或备份文件更大,需要另外处理。

高频问题解答

Q:删了图片但磁盘空间没变少?
A:可能是有进程还在占用已删除的文件(比如 Nginx 缓存了旧图片)。执行 lsof +L1 找出未释放的文件句柄,然后重启 Nginx 或 PHP-FPM:systemctl restart nginx php-fpm。

Q:能不能只删未引用的图片?
A:纯命令法不能智能判断引用关系。建议先用 grep 配合文章数据库导出检查,或者用 WordPress 插件如「Media Cleaner」扫描。本文的方法适合清理明显无用的旧图或缩略图。

Q:删完后变成 404 怎么办?
A:如果只是缩略图变 404,原始图还在,可以删掉缩略图后重新生成(用 Regenerate Thumbnails 插件)。如果原始图没了,从备份恢复或重新上传。

写在最后

批量清理图片是释放磁盘空间最快的手段之一,但务必先预览再执行。
养成定期检查 wp-content/uploads 的习惯,设置上传限制(如限制最大文件尺寸)可以从源头减缓占用。
如果你也在处理服务器磁盘告警,按本文步骤走一遍,几分钟就能看到明显效果。

分享到:
上一篇
慢日志批量优化数据库查询卡顿问题
下一篇
内存爆满一键清理缓存释放资源脚本
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意