当你的Linux磁盘空间满了时,可以通过以下步骤查找大文件并删除它们:

1. 检查磁盘空间:

使用以下命令检查磁盘空间的使用情况:

df -h

这将显示文件系统的使用情况,包括每个文件系统的总大小、已用空间、可用空间和挂载点。

2 .找到占用空间大的目录:

进入可能占用大量磁盘空间的目录,例如/var、/tmp、/var/lib/docker、/var/log/journal 等,使用以下命令:

/var/log/journal 系统日志文件夹

sudo du -h --max-depth=1 /var

这将显示/var目录下每个子目录的大小。

3.进一步深入:

一旦你找到一个占用较大空间的子目录,进入该目录,然后继续使用相同的du命令,逐步深入查找:

sudo du -h --max-depth=1  /var/subdirectory
4.查找大文件:

在目标目录中使用find命令查找大文件,例如查找大于1GB的文件:

sudo find /var/subdirectory -type f -size +1G

find . -type f -size +1G -exec ls -lh {} \;
5.删除大文件:

一旦找到大文件,你可以使用rm命令删除它,确保你确实要删除它,因为删除后无法恢复。

sudo rm /var/subdirectory/large_file.txt
6.清理日志文件:

如果磁盘空间问题与日志文件相关,可以考虑清理旧的日志文件:

sudo find /var/log -type f -name "*.log" -exec rm -f {} \;
7. 释放被删除文件的空间:

一旦你删除了大文件,使用sync命令确保文件系统已同步,并释放已删除文件的空间:

sync

请谨慎操作,确保你知道你在删除什么,并且备份重要数据。在执行rm命令之前,最好先确认一下,以避免误删重要文件。

8. /var/log/日志文件太大,清理journal就行

/var/log/日志文件太大,清理journal就行

9. Linux log日志清理

检查当前journal使用磁盘量

journalctl --disk-usage

清理方法可以采用按照日期清理,或者按照允许保留的容量清理,只保存2天的日志,最大500M

journalctl --vacuum-time=2d

journalctl --vacuum-size=500M

如果要手工删除日志文件,则在删除前需要先轮转一次journal日志

systemctl kill --kill-who=main --signal=SIGUSR2 systemd-journald.service

要启用日志限制持久化配置,可以修改 /etc/systemd/journald.conf

SystemMaxUse=16M

ForwardToSyslog=no

然后重启

systemctl restart systemd-journald.service

检查journal是否运行正常以及日志文件是否完整无损坏

journalctl --verify