【收藏级】parted全套配置模板与脚本
【收藏级】parted 全套配置模板与脚本
说明: parted 用于 GPT/MBR 磁盘分区,适合 Linux(CentOS、Rocky、Ubuntu),必须 root 执行;所有示例以 /dev/sdb 为目标盘,替换成你自己的磁盘。 警告:下面脚本会清空整块磁盘数据,测试前确认磁盘路径,生产务必先备份!
前置须知
parted 两种模式:交互模式、脚本模式(--script),自动化优先用脚本模式
推荐分区表:GPT(现代服务器首选);MBR 单盘上限 2T,不推荐
对齐规范:分区起始位置从 1MiB 开始(4k 扇区对齐,适配机械盘、SSD)
执行前卸载分区:umount /dev/sdb*
模板 1:GPT 单盘,一个整分区(最简单,适合数据盘)
#!/bin/bash
DISK="/dev/sdb"
umount ${DISK}*
parted --script ${DISK} mklabel gpt
parted --script ${DISK} mkpart primary 1MiB 100%
parted --script ${DISK} align-check optimal 1
执行后:
创建 GPT 标签
建立一个主分区,从 1MiB 到磁盘末尾
校验分区对齐格式化示例(ext4)
mkfs.ext4 ${DISK}1
模板 2:GPT 多分区分割模板(示例:boot、swap、data)
示例:磁盘总空间按需划分,仅演示逻辑,数值自行修改
#!/bin/bash
DISK="/dev/sdb"
umount ${DISK}*
parted --script ${DISK} mklabel gpt
# 第一个分区 boot 500M
parted --script ${DISK} mkpart boot 1MiB 500MiB
# swap分区 8G
parted --script ${DISK} mkpart swap 500MiB 8500MiB
# 剩余全部给数据区
parted --script ${DISK} mkpart data 8500MiB 100%
# 依次校验对齐
parted --script ${DISK} align-check optimal 1
parted --script ${DISK} align-check optimal 2
parted --script ${DISK} align-check optimal 3
格式化
mkfs.ext4 ${DISK}1
mkswap ${DISK}2
mkfs.ext4 ${DISK}3
模板 3:MBR 模板(仅老机器、小于 2T 磁盘才用,不推荐)
#!/bin/bash
DISK="/dev/sdb"
umount ${DISK}*
parted --script ${DISK} mklabel msdos
parted --script ${DISK} mkpart primary 1MiB 100%
模板 4:脚本:自动检测磁盘、清空、分区、格式化、写入 fstab
自动化一键脚本,带变量、挂载点、自动写入 /etc/fstab
#!/bin/bash
set -e
DISK="/dev/sdb"
PART="${DISK}1"
MOUNT_POINT="/data"
FS_TYPE="ext4"
# 卸载已有分区
umount ${DISK}* 2>/dev/null || true
echo "=== 开始清除磁盘并新建GPT分区 ==="
parted --script ${DISK} mklabel gpt
parted --script ${DISK} mkpart primary 1MiB 100%
# 等待内核识别分区
sleep 2
partprobe ${DISK}
echo "=== 格式化 ==="
mkfs.${FS_TYPE} ${PART}
echo "=== 创建挂载目录 ==="
mkdir -p ${MOUNT_POINT}
# 获取UUID
UUID=$(blkid -s UUID -o value ${PART})
# 写入fstab,避免重复追加
grep -q "${UUID}" /etc/fstab || echo "UUID=${UUID} ${MOUNT_POINT} ${FS_TYPE} defaults 0 0" >> /etc/fstab
echo "=== 挂载测试 ==="
mount ${MOUNT_POINT}
echo "完成!挂载点:${MOUNT_POINT}"
echo "UUID: ${UUID}"
常用 parted 单行命令速查(直接复制)
查看磁盘分区信息
parted /dev/sdb print
检查对齐
parted /dev/sdb align-check optimal 1
删除分区 3
parted --script /dev/sdb rm 3
修改分区名称(GPT 支持命名)
parted --script /dev/sdb name 3 data-volume
配套:扩容分区脚本(分区后面还有空闲空间,扩展分区)
只能向后扩容,不能向前
#!/bin/bash
DISK="/dev/sdb"
PART_NUM=1
parted --script ${DISK} resizepart ${PART_NUM} 100%
partprobe ${DISK}
# ext4文件系统扩容
resize2fs ${DISK}${PART_NUM}
重要避坑清单
parted 单位不要混用,统一用 MiB,不要 MB,二者含义不同
resizepart 之后必须执行 partprobe,让内核刷新分区表,不然 mkfs/resize2fs 报错
SSD、NVMe 一律 GPT + 1MiB 起始对齐
不要对正在使用的系统盘执行 mklabel,直接宕机丢数据
如果是 RAID/LVM,先在底层做好 RAID,再对 RAID 设备分区,不要对单块盘分区
脚本中 set -e 遇到错误自动终止,适合生产;调试时可以去掉
- 上一页:MySQL速查表常见问题排查手册
- 下一页:网络安全最佳实践丨瓦罗兰技术为您深度解析
-
【收藏级】parted全套配置模板与脚本【收藏级】parted 全套配置模板与脚本说明: parted 用于 GPT/MBR 磁盘分区,适合 Linux(CentOS、Rocky、Ubuntu),必须 root 执行;所有示例以 /dev/sdb 为目标盘,替换成你自己的磁盘。 警告:下面脚本会清空整块磁盘数据,测试前确认磁盘路径,生产务必先备份!前置须知parted 两...
-
2026年日志管理框架最新教程,运维必收藏2026 日志管理框架最新教程,运维必收藏核心变化一句话:2026 不再是单一 ELK 一统天下,OpenTelemetry OTLP 是采集标准;轻量优先选 Loki+Vector/Alloy,强全文检索选 OpenSearch,旧 ELK 逐步迁移;核心目标:日志、指标、链路统一可观测,控制存储成本、降低运维负担。重点提...
-
高可用架构精选最佳实践:资深运维的私藏技巧高可用架构精选最佳实践:资深运维的私藏技巧高可用的本质不是"永远不挂",而是挂了也能继续服务核心业务。下面从架构分层、容错机制、运维实战三个维度拆解。一、架构分层:三层盾牌模型SeatGeek 的"Shielding the Core"策略把防御分为三层,每层职责明确。Edge S...
-
为什么推荐年度Fluentd?深度对比与实测【干货】为什么推荐年度 Fluentd?深度对比与实测一句话定位:Fluentd 是 CNCF 毕业、Apache2.0 协议的统一日志采集聚合层,主打复杂日志清洗、多源多目的地路由、自带磁盘持久缓冲;适合做集群聚合节点,和轻量采集端 Fluent Bit 搭配是云原生标准组合。实测结论:它不...
-
挂载最佳实践:资深运维的私藏技巧挂载最佳实践:资深运维的私藏技巧 一、fstab 安全规范修改 fstab 前必须先备份:cp /etc/fstab /etc/fstab.bak。每次编辑完必须执行 mount -a 验证,无输出即正常,有报错立刻修复,否则重启后可能进入紧急模式。数据盘条目务必加 nofail,网络存储务必加 _netdev,防止设备不...
-
为什么推荐K8s部署实战?深度对比与实测推荐 K8s 部署实战,核心不是因为它“听起来高级”,而是它能把部署效率、资源利用率、故障恢复、AI 算力调度、云原生生态一起拉高。 2026 年之后,K8s 已经不只是 Web 应用部署工具,正在成为 AI 推理、GPU 调度、平台工程、GitOps 的基础设施底座。 一、为什么值得...