当你的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