硬盘分区是计算机管理存储空间的重要操作,通过将物理硬盘划分为多个逻辑区域(即分区),可以实现操作系统安装、数据分类存储、系统备份等功能,在Windows、Linux等操作系统中,管理员通常可以通过命令行工具完成硬盘分区操作,这些命令功能强大且灵活,适合高级用户或批量管理场景,以下将详细介绍不同操作系统中常用的硬盘分区命令,包括其功能、语法及使用示例。

在Windows系统中,最常用的硬盘分区命令是diskpart,这是一个内置的磁盘管理工具,通过命令行方式实现对磁盘、分区的创建、删除、格式化等操作,要使用diskpart,需以管理员身份打开命令提示符或PowerShell,然后输入diskpart进入其交互环境,在diskpart中,首先需通过list disk命令查看系统中所有磁盘的列表,包括磁盘编号、总大小、状态等信息,若要操作磁盘1,需先通过select disk 1选中该磁盘,随后可进行分区操作,创建分区时,使用create partition primary命令可创建主分区,create partition extended可创建扩展分区(用于创建逻辑驱动器),而create partition logical则在扩展分区内创建逻辑分区,创建分区后,需通过assign letter=X为其分配盘符(X为可用的盘符字母),并通过format fs=ntfs quick快速格式化分区为NTFS文件系统(fs=fat32可格式化为FAT32,fs=exfat则适用于跨平台设备),若需删除分区,可先通过list partition查看分区列表,选中目标分区后执行delete partition override(override参数可强制删除有数据的分区)。diskpart还支持clean命令清除磁盘所有分区及格式化信息(慎用,会导致数据丢失),convert gpt可将MBR磁盘转换为GPT分区表,convert mbr则执行反向操作。
对于Linux系统,硬盘分区命令主要基于fdisk、parted和lsblk等工具。fdisk是经典的分区工具,适用于MBR和GPT分区表,而parted功能更强大,支持高级分区操作和多种文件系统,以fdisk为例,首先通过sudo fdisk -l列出所有磁盘及其分区信息,找到目标磁盘(如/dev/sdb)后,使用sudo fdisk /dev/sdb进入交互模式,在fdisk中,n命令用于创建新分区,可选择主分区(p)或扩展分区(e),并指定分区号、起始扇区及结束扇区(可直接按回车使用默认值),创建GPT分区表时,需先通过g命令初始化,再创建分区。t命令可修改分区类型(如LINUX、SWAP、NTFS等,可通过l查看所有类型),w命令保存并退出,q则不保存退出,分区创建后,需通过sudo mkfs.ext4 /dev/sdb1(ext4为Linux常用文件系统)格式化分区,并使用sudo mount /dev/sdb1 /mnt挂载到指定目录。parted工具的使用稍有不同,例如sudo parted /dev/sdb进入交互模式后,通过mkpart命令创建分区(如mkpart primary ext4 1MiB 10GiB),print查看分区信息,set命令设置分区标志(如set 1 boot on设置启动标志),对于大容量磁盘或RAID设备,parted的gpt支持更稳定。
在macOS系统中,常用的命令是diskutil,它提供了图形化工具之外的命令行管理功能。diskutil list可查看所有磁盘及分区,diskutil eraseDisk JHFS+ MyDisk 0可快速擦除磁盘并格式化为HFS+(JHFS+)并命名为MyDisk,diskutil partitionDisk /dev/disk0s1 GPT JHFS+ MyDisk1 100g JHFS+ MyDisk2 50g则可在一个磁盘上创建多个分区,需要注意的是,macOS的APFS(Apple File System)是默认文件系统,可通过APFS参数指定,如diskutil eraseDisk APFS MyDisk 0。
以下是不同命令的常用语法对比表格:

| 操作系统 | 工具名称 | 常用命令示例 | 功能说明 |
|---|---|---|---|
| Windows | diskpart | list diskselect disk 1create partition primary size=10000assign letter=Dformat fs=ntfs quick |
查看磁盘、选择磁盘、创建主分区(大小单位为MB)、分配盘符、格式化分区 |
| Linux | fdisk | sudo fdisk /dev/sdbn(创建分区)t(修改类型)w(保存) |
交互式分区工具,支持MBR/GPT,适合基础分区操作 |
| Linux | parted | sudo parted /dev/sdbmkpart primary ext4 1MiB 10GiBprint |
高级分区工具,支持调整分区大小、文件系统类型多样化 |
| macOS | diskutil | diskutil listdiskutil partitionDisk /dev/disk0 GPT APFS MyDisk1 100g APFS MyDisk2 50g |
查看磁盘、快速分区并格式化,支持APFS/HFS+等 |
在使用硬盘分区命令时,需注意备份数据,避免误操作导致数据丢失,分区操作需谨慎,尤其是clean、delete等不可逆命令,建议在操作前确认磁盘及分区信息正确,不同操作系统的命令语法和参数存在差异,需根据具体环境选择合适的工具。
相关问答FAQs
-
问:使用
diskpart删除分区时提示“磁盘是只读的”怎么办?
答:该错误通常是因为磁盘被某些程序占用或磁盘属性为只读,可尝试以下方法解决:① 关闭所有可能访问该磁盘的程序(如文件资源管理器、杀毒软件);② 在diskpart中使用attributes disk clear readonly清除磁盘只读属性;③ 若问题依旧,可重启计算机后重新执行操作;④ 确保磁盘未处于RAID阵列或动态磁盘状态,否则需先解除配置。 -
问:Linux中使用
fdisk创建分区后,为何无法格式化并提示“Device or resource busy”?
答:该错误通常是因为目标分区已被系统挂载或存在进程占用,可通过以下步骤排查:① 使用sudo umount /dev/sdb1尝试卸载分区(若提示未挂载,则执行下一步);② 使用sudo lsof /dev/sdb1查看是否有进程占用该设备,若有则终止对应进程;③ 检查/etc/fstab文件中是否有该分区的自动挂载配置,如有则注释或删除;④ 若仍无法解决,可重启计算机后再次尝试格式化操作。
(图片来源网络,侵删)
