磁盘格式化
目录
磁盘格式化
磁盘格式化是为初次使用准备数据存储设备(例如硬盘驱动器、固态驱动器、软盘或USB闪存驱动器)的过程。在某些情况下,格式化操作还可能创建一个或多个新文件系统。执行基本媒体准备的格式化过程的xxx部分通常称为“低级格式化”。分区是该过程第二部分的通用术语,使数据存储设备对操作系统可见。该过程的第三部分,通常称为“高级格式化”,通常是指生成新文件系统的过程。在某些操作系统中,这三个过程的全部或部分可以在不同级别组合或重复并且术语“格式化”被理解为指一种操作,其中新磁盘介质已完全准备好存储文件。某些格式化实用程序允许区分不擦除所有现有数据的快速格式化和擦除所有现有数据的长选项。
作为一般规则,[nb1]默认情况下格式化磁盘会保留磁盘介质上的大部分现有数据;其中一些或大部分可以使用特权[nb2]或特殊工具恢复。特殊工具可以通过一次覆盖所有文件和可用空间来删除用户数据。
磁盘格式化过程
格式化供操作系统及其应用程序使用的磁盘通常涉及三个不同的过程。
- 低级格式化(即,最接近硬件)用指示记录块开始的标记(今天通常称为扇区标记)和其他信息(如稍后在正常操作中使用的块CRC)标记磁盘表面该磁盘控制器到读或写数据。这是磁盘的xxx基础,通常在工厂完成。
- 分区将磁盘划分为一个或多个区域,将数据结构写入磁盘以指示区域的开始和结束。这一级别的格式化通常包括检查有缺陷的磁道或有缺陷的扇区。
- 高级格式化在磁盘分区或逻辑卷内创建文件系统格式。这种格式包括操作系统用来识别逻辑驱动器或分区内容的数据结构。这可能会在操作系统安装期间或添加新磁盘时发生。磁盘和分布式文件系统可以为操作系统指定可选的引导块和/或各种卷和目录信息。
格式化
DOS、OS/2和Windows
格式化命令:在MS-DOS、PCDOS、OS/2和MicrosoftWindows下,可以通过该format命令进行磁盘格式化。该format程序通常会事先要求确认以防止意外删除数据,但某些版本的DOS有一个未公开的/AUTOTEST选项;如果使用,则跳过通常的确认并立即开始格式化。WM/FormatC宏病毒使用此命令在打开文档后立即格式化驱动器C:。
无条件格式化:还有一个/U参数可以执行无条件格式化,在大多数情况下会覆盖整个分区,防止通过软件恢复数据。但请注意,该/U开关仅适用于软盘(见右图)。从技术上讲,因为除非/Q使用,软盘总是低级格式化和高级格式化。但是,在硬盘驱动器分区的某些情况下,该/U开关只会阻止创建unformat要格式化的分区中的信息,同时保持分区的内容完全完整(仍在磁盘上但标记为已删除)。在这种情况下,用户的数据仍然可以使用EnCase或磁盘编辑器等专业工具进行恢复。/U因此,不建议依赖硬盘分区的安全覆盖,而应考虑使用DBAN等专用工具。

覆盖:在WindowsVista及更高版本中,非快速格式将随其进行覆盖。在WindowsXP及以下版本中并非如此。
OS/2:在OS/2下,如果/L使用指定长格式的参数,format将覆盖整个分区或逻辑驱动器。这样做可以增强CHKDSK恢复文件的能力。
类Unix操作系统
这些系统上磁盘的高级格式化传统上是使用该mkfs命令完成的。在Linux(也可能是其他系统)mkfs上,通常是文件系统特定命令的包装器,这些命令具有name,其中fsname是用于格式化磁盘的文件系统的名称。某些实现不支持的文件系统有自己的操作工具;例如,Ntfsprogs为NTFS文件系统提供了一个格式实用程序。mkfs.fsnamemkfs
一些Unix和类Unix操作系统具有更高级别的格式化工具,通常是为了使磁盘格式化更容易和/或允许用户使用相同的工具对磁盘进行分区。示例包括GNUParted(及其各种GUI前端,例如GParted和KDE分区管理器)和MacOSX上的磁盘实用程序应用程序。