Loading... # 别执行头图的命令 # 引 <div class="tip inlineBlock warning"> <p><a href="https://www.fmcraft.top/index.php/archives/206.html" target="_blank"><span style="color:#009900;"></span>更好的阅读体验</a></p> </div> <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-ffecfd8613ae8aaed3d7f958a43cd84b25" aria-expanded="true"><div class="accordion-toggle"><span style="">扯淡内容 <stronge>点我展开</stonger></span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-ffecfd8613ae8aaed3d7f958a43cd84b25" class="collapse collapse-content"><p></p> 使用 <code>rm</code> 可以快速清理 <p></p></div></div></div> 相信大家在用久[服务器](https://www.rainyun.com/DHEnry_)后肯定会发现自己的服务器系统盘非常容易膨胀  虽然你可能只是有恐惧症罢了 这该如何解决? <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-08b814ca1fbe357e44fcd8e3b9c713dd7" aria-expanded="true"><div class="accordion-toggle"><span style="">一种非常好用的解决方案</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-08b814ca1fbe357e44fcd8e3b9c713dd7" class="collapse in collapse-content"><p></p>花钱扩容硬盘,但是你既然都看到了这篇文章你应该不会使用这个方法吧<p></p></div></div></div> # 如果你要阅读这篇文章,你需要掌握的 - 正确连接到 ssh 服务器,在客户端使用 `ssh root@<server_ip>` - 正确使用 `cd <d>` 来进入一个文件夹 - 正确使用 `ls` 列出服务器文件 - 正确使用 `rm [] <d/f>` 删除文件及重要参数例如 `r` 和 `f` # 实践 ## Warn & Info 一般的 web 服务器,有 nginx、php、mysql、docker、pma,我们清理 Linux 系统就从这些方面入手,假设你使用的是 Ubuntu 22.04 ,其他系统不一定能用,但是应该是通用的,只不过包含 `apt` 的命令是执行不了的 <div class="tip inlineBlock error"> 一定要先备份文件!!!避免重要文件被误删!!! </div> ## 笼统的办法 这个办法非常通用,但是清理的效果不一定明显 ### 日志文件 #### 网站日志 日志文件应该没有什么人没看到他,这里一般包含 nginx 的访问日志,包括站点的访问日志,如果你的操作系统中,安装了宝塔,日志文件一般在 `/www/wwwlogs` 这个文件中,所以我们可以使用以下命令删除 ```bash cd /www # 进入 /www 目录 rm -rf /www/wwwlogs # 强制递归删除 /www/wwwlogs mkdir wwwlogs # 再建立 wwwlogs 文件夹 ``` #### 系统日志 然后再入手系统日志,就是包括维护信息啥的,他在 `/var/log` ,同样删除 ```bash cd /var # 同上 rm -rf /var/log mkdir log ``` #### `systemctl` 日志 然后删除 `systemctl` 的日志,但是这里使用 `journalctl ` ,使用以下命令删除 ```bash journalctl --vacuum-time=7d # 清理 7 天前的 systemctl 日志 ``` #### `apt-get` 日志 然后再清理 `apt-get` 的日志 <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-199c0ac6677c0c60cb8aae522facecfb57" aria-expanded="true"><div class="accordion-toggle"><span style=""><code>apt</code> 与 <code>apt-get</code> 的区别</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-199c0ac6677c0c60cb8aae522facecfb57" class="collapse collapse-content"><p></p> 交互式用户推荐使用 <code>apt</code><br> 脚本或自动化使用 <code>apt-get</code> <p></p></div></div></div> 可使用以下命令删除 ```bash apt-get clean -y # -y 用于强制确认 ``` ### 缓存 Windows 中缓存位置位于 `%temp%` ,但是 linux 中是 `/tmp/` 所以直接删除即可 ```bash rm -rf /tmp/* # 强制递归删除 /tmp/ 目录下的所有文件(夹) ``` ### 不需要的软件包 使用 `apt-get` 清理不需要的软件包,也是可以的,但是有风险,这一般会删掉没有依赖或者废弃的软件包 ```bash apt-get autoremove --purge -y # -y 强制确认 ``` ## 更适用于自己的办法 这种方法就比较零散了,一般是人工/机械地产生大文件,需要你进行手动查找和删除,一般没什么作用 ### 手动定位大文件 #### 定位根目录下的大文件 合理使用 `df` 定位大文件 ```bash du -h --max-depth=1 / # 最大文件深度为 1 ,查找根目录下的,推荐设置为 1 ,然后再进一步查找 ```  我这边查找到了根目录的每一个文件夹的大小 我这边发现 `/home` 目录似乎占用了过多的硬盘空间,为了演示,在 `/home` 目录里面查找大文件 #### 定位二级目录的大文件 使用 `cd` 进入你怀疑有大文件的目录 然后再使用 `df` 查找,但是查找的目录要改成 rt ```bash du -h --max-depth=1 /home # / 改成了 /home,即查找的目录 ```  又列出了一些文件,再进入查找 #### 定位三级目录的大文件 再次使用 `cd` 定位到三级的时候,一般需要使用 `ls` 查看了  这时候就要考研我们的 English 能力了,你但凡有小学六年级英语基础,你就应该发现 `backup` 是备份文件夹,里面肯定有一堆没用的文件 进入后,删掉没用的即可 ```bash rm -rf <d> # <d> 填文件夹的绝对路径,千万别填相对路径!!!可能会发生玄学事件 ``` <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-c3d00d986a649a7d6c3d4990a7c01e9557" aria-expanded="true"><div class="accordion-toggle"><span style="">绝对路径是什么</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-c3d00d986a649a7d6c3d4990a7c01e9557" class="collapse collapse-content"><p></p> 例如,你在文件夹 <code>/home/judge</code> 下,该文件夹下有一个文件夹叫做 <code>ry</code> ,那么:<br> <code>/home/judge/ry</code> 是这个文件夹的绝对路径<br> <code>/ry</code> 是这个文件夹的相对路径<br> 说人话,相对于当前文件夹的文件夹的路径叫做相对路径,相对于根目录的文件夹的路径叫做绝对路径 <strong>这不是长难句</strong> <p></p></div></div></div> #### 如果你还想定位,那你继续定位 ### 查找指定特点的大文件 合理使用 `find` 命令 ```bash find / -type f -size +1G 2>/dev/null ``` `/` 根目录 `-type f` 查找选项为 file 文件并非文件夹 `-size +1G` 查找大于 1G 的文件 `2>/dev/null` 把权限错误的文件的输出放到 `/dev/null`  查找到手动删除即可 # 感谢阅读 最后修改:2025 年 11 月 28 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 3 如果觉得我的文章对你有用,请随意赞赏