随笔 - 6  文章 - 124  评论 - 1  阅读 - 13042

Linux 如何使用parted进行磁盘分区?

简介

Linux 中的 parted 命令是一个用于创建、修改和管理磁盘分区的多功能工具。它支持传统的 MBR(Master Boot Record:主引导记录)和现代的 GPT(GUID Partition Table:GUID 分区表)分区方案。

磁盘分区的主要原因

  • 最佳性能:正确管理分区可以提高系统的速度和响应性。例如,将操作系统文件从用户数据中分离出来,或者将频繁访问的数据放在磁盘上更快的部分上,都可以提高性能。

  • 数据组织:分区允许用户根据类型、目的或重要性来隔离数据。例如,可以将系统文件、个人数据和备份文件放在单独的分区中,以确保更好地组织和更快地检索数据。

  • 数据安全:通过将敏感或关键数据隔离在其自己的分区中,可以降低受系统崩溃、恶意软件或其他分区上的损坏软件影响的风险。

  • 备份和恢复:分区使备份数据更加直接。而不是备份整个驱动器,可以专注于特定的分区。这使得恢复过程更快,在数据丢失时更有针对性。

  • 双启动和系统升级:对于那些想要运行多个操作系统或测试新软件版本的人来说,单独的分区是至关重要的。这允许用户拥有多个操作系统版本或设置,而不会干扰他们的主系统。

主要特点

  • 创建、删除、调整大小以及移动分区。

  • 使用 GPT 支持大磁盘大小(>2 TB)。

  • 可以处理各种文件系统,如 ext4、NTFS、FAT32 等。

  • 适用于交互和非交互模式。

语法

parted [options] [device] [command [arguments]]
  • device:目标磁盘,例如:/dev/sda, /dev/nvme0n1

  • command:具体操作,例如创建或调整分区大小。

常用选项及其子命令

  • -l, --list:列出所有块设备上的分区布局

  • -a <alignment-type>, --align <alignment-type>:为新创建的分区设置对齐

  • align-check <type> <partition>:对齐检查,type 类型为:minimaloptimal

  • mklabel <label-type>:创建新的分区表

  • mkpart [part-type name fs-type] [start] [end]:创建新分区

  • print [print-type]:显示分区表

  • rescue [start] [end]:拯救恢复丢失的分区

  • resizepart [partition] [end]:重新分配分区大小

  • rm [partition]:删除分区

  • select [device]:选择设备,选择设备作为要编辑的当前设备。设备通常应为 Linux 硬盘设备,但必要时它可以为分区、软件 raid 设备或 LVM 逻辑卷。

  • set [partition] [flag] [state]:设置分区的标志和状态

示例用法

以交互模式启动 Parted

sudo parted /dev/sdX

以非交互式模式启动 Parted

sudo parted /dev/sdX mklabel gpt

查看分区表

sudo parted /dev/sdX print

创建分区表

选择 GPT(推荐用于现代系统)或 MBR

sudo parted /dev/sdX mklabel gpt
sudo parted /dev/sdX mklabel msdos

创建分区

创建一个主分区

sudo parted /dev/sdX mkpart primary ext4 0% 50%
  • primary:分区类型

  • ext4:文件系统类型

  • 0%:起始位置(磁盘的开头)

  • 50%:结束位置(磁盘空间的 50%)

格式化分区

sudo mkfs.ext4 /dev/sdX1

重新分配分区大小

将分区大小调整为磁盘的 80%:

sudo parted /dev/sdX resizepart 1 80%

# 1代表分区的编号

删除一个分区

sudo parted /dev/sdX rm 1

# 1代表分区的编号

交互式模式示例

sudo parted /dev/sdX

(parted) mklabel gpt
(parted) mkpart primary ext4 1MiB 100%
(parted) print
(parted) quit

对齐分区

sudo parted /dev/sdX mkpart primary ext4 1MiB 100% --align optimal

检查分区

sudo parted /dev/sdX check 1

设置可启动的标志

将分区标记为可启动

sudo parted /dev/sdX set 1 boot on

变更分区的名称

sudo parted /dev/sdX name 1 MyPartition

创建全磁盘分区

sudo parted /dev/sdX mklabel gpt
sudo parted /dev/sdX mkpart primary ext4 0% 100%

脚本分区创建

为了实现自动化,无需交互即可运行命令

sudo parted /dev/sdX --script mklabel gpt
sudo parted /dev/sdX --script mkpart primary ext4 1MiB 50%

MBR与GPT的主要异同

特点 MBR GPT
最大磁盘大小 2 TB >9 ZB
最大分区数 4个主分区 无限制(默认是128个)
兼容性 老系统 现代系统
冗余 无备份表 有备份表
posted on   我是唐青枫  阅读(159)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示