服务器硬盘空间在Linux中的管理与优化
一、查看磁盘空间使用情况
1. df命令:查看文件系统磁盘空间使用情况
常用选项:
-h
:以人类可读的方式显示磁盘空间信息(GB、MB)。
-a
:显示所有文件系统,包括空的文件系统。
-T
:显示文件系统类型。
-i
:显示inode的使用情况。
典型用法:
df -h
示例输出:
文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 40G 20G 18G 53% / tmpfs 7.8G 0 7.8G 0% /dev/shm /dev/sdb1 100G 60G 35G 62% /data
解释:
/dev/sda1
: 根文件系统,总容量40G,已用20G,可用18G,使用率53%。
tmpfs
: 临时文件系统,总容量7.8G,未使用。
/dev/sdb1
: 数据分区,总容量100G,已用60G,可用35G,使用率62%。
2. du命令:查看目录或文件的磁盘使用情况
常用选项:
-h
:以人类可读的方式显示磁盘空间信息。
-s
:只显示总大小,不显示子目录的大小。
--max-depth=N
:限制最大深度为N,仅显示当前目录及其下N级子目录的占用情况。
典型用法:
du -h /var/log
示例输出:
1、2G /var/log
解释:/var/log
目录总大小为1.2GB。
3. ls命令:查看文件和目录的详细信息
常用选项:
-lh
:以人类可读的方式显示文件大小。
典型用法:
ls -lh /var/log
示例输出:
total 1.2G -rw-r--r-1 root root 500M Jan 1 12:00 logfile1.log -rw-r--r-1 root root 700M Feb 1 12:00 logfile2.log
解释:/var/log
目录下有两个日志文件,分别为500MB和700MB。
4. Gnome Disks:图形化工具
使用方法:
打开终端并输入gnome-disks
命令,即可启动Gnome Disks工具。
选择要查看的磁盘,可以查看其详细信息,包括磁盘使用情况、文件系统类型、挂载点等。
二、磁盘空间异常排查与优化
1. 排查大文件和目录
使用ncdu工具:
ncdu
是一个交互式的磁盘使用情况分析工具,支持按大小排序和删除操作。
安装方法(适用于Debian系):
sudo apt install ncdu
使用方法:
sudo ncdu -x /
参数说明:
-x
:限制扫描范围为当前文件系统,不跨越挂载点。
2. 清理Docker资源
常见问题:Docker容器、镜像和卷占用大量磁盘空间。
解决方法:
停止未使用的容器:
docker container prune
删除未使用的镜像:
docker image prune -a
删除未使用的卷:
docker volume prune
清理未使用的网络:
docker network prune
3. 清理日志文件
查找大日志文件:
使用find
命令查找大于1G的日志文件:
find /var/log -type f -name "*.log" -size +1G
手动清理日志:
清空特定容器的日志文件:
sudo truncate -s 0 /var/lib/docker/containers/<container_id>/<container_id>-json.log
设置日志文件大小限制:
编辑Docker配置文件/etc/docker/daemon.json
,添加日志驱动配置:
{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }
重启Docker服务:
sudo systemctl restart docker
三、相关问题与解答
1. df命令显示磁盘空间使用率为100%,但实际还有空间是什么原因?
解答:这通常是由于文件系统中存在大量的小文件或碎片化严重导致的,可以使用df -i
命令检查inode使用情况,如果inode使用率也很高,可能是大量小文件占用了inode,可以通过删除不必要的小文件或调整文件系统的inode数量来解决。
2. 如何释放被大量日志文件占用的磁盘空间?
解答:使用find
命令查找大日志文件,然后根据需要删除旧的日志文件,可以设置日志轮转策略,定期删除旧的日志文件,可以配置日志文件的大小限制,防止单个日志文件占用过多空间,在Docker中配置日志驱动的max-size和max-file参数。
各位小伙伴们,我刚刚为大家分享了有关“服务器硬盘空间 linux”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/755787.html