合理分区是服务器稳定运行的底层结构设计,需按用途分离/var、/home、/srv等关键目录,结合LVM实现动态扩容,并针对云环境启用GPT、4K对齐、discard及合适I/O调度器。
磁盘分区不是安装时的“填空题”,而是服务器稳定运行的底层结构设计。合理划分,能隔离故障、控制增长、简化维护——比如把日志塞进独立 /var 分区,就不会因日志暴增导致整个系统瘫痪。
按用途拆分关键分区
不要把所有东西堆在根目录(/)。核心原则是“谁用谁管、谁涨谁限”:
- /var:专存日志、缓存、邮件队列等易膨胀内容。建议单独划出 10–20GB,用 XFS 文件系统更抗碎片;若跑 Docker 或数据库,可加大到 30GB+ 并监控使用率
- /home:存放用户配置和脚本。即使不托管大量用户数据,也建议独立分区(如 5–10GB),避免用户误操作或临时文件占满根分区
- /srv:Web 内容、API 静态资源、FTP 根目录等业务数据应放这里。按实际容量预估,预留 20% 空间,便于后续扩容
-
/tmp 和 /var/tmp:设为独立小分区(各 2–5GB),并启用
noexec,nosuid挂载选项,提升安全性
避开常见空间陷阱
很多宕机源于“看不见的膨胀”:
- 日志轮转未启用?
logrotate必须配置,尤其/var/log/journal(systemd-journald)默认不限大小,可能几小时吃掉几十GB - 容器镜像和层未清理?Docker 的
/var/lib/docker默认在 /var 下,建议用overlay2+ 单独挂载点,或通过docker system prune定期清理 - MySQL 的
innodb_log_file_size和二进制日志(binlog)长期保留?这些都落在 /var 下,需配合expire_logs_days控制
云环境与物理机的分区差异
云服务器(如阿里云 ECS、AWS EC2)通常用 NVMe SSD,分区策略要适配其特性:
- 首选 GPT 分区表(非 MBR),支持大容量盘与 UEFI 启动
- 新建分区务必 4K 对齐(
parted默认对齐,fdisk需手动确认起始扇区为 2048) - 挂载时启用
discard(TRIM 支持),并在/etc/fstab中加入defaults,noatime,discard - SSD 场景下,I/O 调度器推荐
none(NVMe)或deadline(SATA/SAS),避免 CFQ 带来的额外延迟
动态调整比重装更高效
分区不是一锤定音。LVM 是云服务器和现代物理机的标配弹性方案:
- 用
pvcreate → vgcreate → lvcreate构建卷组,所有业务分区(/var、/srv)都建在 LV 上 - 空间不足时,扩展物理盘后执行
pvresize → lvextend → resize2fs(EXT4)或xfs_growfs(XFS),全程无需停机 - 测试环境可先用 LVM 快照做变更备份,但生产环境慎用——快照会拖慢写入性能

















