服务器磁盘空间管理指南
在服务器运维中,“启动”或“增加”磁盘空间通常分为三种场景:清理现有空间、挂载新磁盘以及扩容已有分区,以下是针对这三种场景的详细操作指南。
快速释放现有磁盘空间
当服务器提示磁盘空间不足(Disk Full)导致服务无法启动时,首先应尝试清理冗余文件。
- 查找大文件:使用
du命令定位占用空间最大的目录。du -sh /(查看根目录下各文件夹大小)find / -type f -size +100M(查找大于100MB的文件)
- 清理日志文件:
- 检查
/var/log目录,删除或压缩旧的.log或.gz文件。 - 使用
echo "" > /var/log/syslog清空日志内容而不删除文件(避免进程崩溃)。
- 检查
- 清理软件包缓存:
- Ubuntu/Debian:
sudo apt-get clean - CentOS/RHEL:
sudo yum clean all
- Ubuntu/Debian:
- 清理临时文件:
- 删除
/tmp目录下不必要的临时文件。
- 删除
挂载新磁盘(增加新存储)
如果你为服务器添加了新的物理硬盘或云硬盘,需要经过识别 $rightarrow$ 分区 $rightarrow$ 格式化 $rightarrow$ 挂载四个步骤。
- 识别新磁盘:
- 使用
lsblk或fdisk -l查看新磁盘的设备名(/dev/vdb或/dev/sdb)。
- 使用
- 创建分区:
- 使用
fdisk /dev/vdb进入交互模式,输入n创建新分区,一路回车确认,最后输入w保存退出。
- 使用
- 格式化磁盘
:
- 将分区格式化为文件系统(推荐 ext4 或 xfs):
mkfs.ext4 /dev/vdb1
- 挂载磁盘:
- 创建挂载点:
mkdir /data - 执行挂载:
mount /dev/vdb1 /data
- 创建挂载点:
- 设置开机自动挂载:
- 编辑
/etc/fstab文件,在末尾添加一行: /dev/vdb1 /data ext4 defaults 0 0
- 编辑
扩容已有分区(动态增加空间)
如果你在云平台增加了磁盘容量,但系统内显示的空间没有变化,需要进行扩容操作。
- 如果是 LVM(逻辑卷管理)架构(大多数企业级 Linux 默认):
- 扫描物理卷:
pvresize /dev/vdb - 扩展逻辑卷:
lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv - 刷新文件系统:
-
ext4:
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv - xfs:
xfs_growfs /
-
- 扫描物理卷:
- 如果是标准分区:
- 使用
growpart工具(需安装cloud-guest-utils): growpart /dev/vda 1(扩容 vda 磁盘的第 1 个分区)- 然后根据文件系统执行
resize2fs或xfs_growfs。
- 使用
总结与建议
- 预防措施:建议安装
ncdu工具,它可以提供一个可视化界面快速分析磁盘占用情况。 - 监控预警:配置 Prometheus + Grafana 或简单的脚本,在磁盘占用达到 80% 时发送告警。
- 存储策略:将数据库数据、日志文件分别存储在不同的独立磁盘分区中,防止日志撑爆根分区导致系统宕机。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/491774.html



