macOS 磁盘工具入门:基础知识

“磁盘工具”随 macOS 一起提供,自首次发布以来一直是操作系统的一部分。以下是使用它的方法。

“磁盘工具”提供各种任务,例如格式化储存设备、装入和卸载宗卷、创建磁盘映像以及拷贝驱动器。首先,我们将定义一些术语,然后深入探讨您可以使用“磁盘工具”执行的操作。

了解设备和卷

首先,需要了解的一些存储术语是:

  1. 设备 – 一种存储设备,例如 SSD、硬盘、RAID 阵列或控制器卡。
  2. SSD – 固态驱动器 – 一种使用内存而不是盘片来存储数据的存储设备。
  3. 硬盘 – 包含旋转磁盘的存储设备(驱动器)。
  4. 总线 – 连接设备并仲裁设备与计算机之间通信的电路。
  5. 控制器 – 将另一台设备连接到计算机的接口设备。许多控制器都是内置的。
  6. 启动磁盘 – 在 macOS 中,安装操作系统的宗卷。

有时,术语“设备”和“驱动器”可以互换使用。

每个物理储存设备都以多种可能的方式之一连接到您的 Mac。

这可以通过内部连接(如SATA),或通过外部连接器(如USB,Thunderbolt)或较旧的Mac上的FireWire。对于可以接受内部扩展卡的Mac,可以使用内部卡上的其他类型的总线连接器,例如SATA,eSATA,SCSI,iSCSI或FiberChannel。

如今,大多数扩展卡都基于PCI(外围组件互连),这是一种用于内部卡的计算标准。某些存储设备还可以通过以太网等网络标准或通过 WiFi 或蓝牙进行连接。

文件系统

文件系统是一种软件,它知道如何使用驱动器上的特定卷格式读取和写入数据。

每个驱动器可以包含一个或多个卷。将卷视为设备上的存储容器,可以包含文件夹(目录)和文件:物理磁盘的逻辑子部分,使用文件系统格式化以存储文件和数据。

卷有时也称为分区。一个设备可以有多个卷。在 macOS 中,可以装载或卸载宗卷。装载宗卷后,其图标将显示在 Finder 应用程序的桌面上。

操作系统必须知道如何与卷上的相应文件系统通信,以便读取或写入卷。

文件系统的示例包括 APFS、HFS+(macOS 扩展)、FAT16 和 FAT32、exFAT、NTFS、NFS 以及 Linux 操作系统上的 ext4。在macOS中,APFS,HFS+,FAT和exFAT是内置的。

通过安装文件系统插件,可以在 macOS 中使用其他文件系统,这些插件允许 macOS 读取或写入不受支持的文件系统并挂载使用它们格式化的卷。

当驱动器是新的时,它是未格式化的。在使用之前,必须连接它,然后使用支持的文件系统进行格式化,以便将其挂载到桌面上。

格式化设备后,可以使用一个或多个卷对其进行分区,每个卷都可以挂载到桌面上。卷可以是只读的,也可以是读/写的。对于只读卷,可以从卷中读取文件,但不能写入卷。

光盘和蓝光光盘是只读卷的示例。

可写卷也可以锁定或解锁 – 通常具有软件权限,但有时使用硬件开关,例如 SD 相机卡。当卷被锁定时,它将变为只读。可以从中读取文件,但不能写入其中。

设备上的每个卷都包含某些数据结构,这些数据结构告诉文件系统有关卷的信息:它在设备上的开始和结束位置、卷的类型、卷的大小以及其他信息,例如卷上有多少个文件和文件夹。

其中一些数据结构是:

  1. 挂载点 – 在 UNIX 操作系统中文件系统中的一个目录,其中挂载了卷以进行输入/输出 (I/O) 访问。
  2. 块 – 卷上数据的单个 I/O 单元。对于硬盘和 SSD,块的长度通常为 512 字节,但并不总是 <> 字节。
  3. 文件 – 位于卷上的单个有组织数据单元,可由应用读取或写入。
  4. 卷头 – 描述卷或分区的卷的数据部分。
  5. 目录 – 卷的数据部分,用于存储文件和文件夹的列表及其在卷上的位置。
  6. B-Tree – 卷的附加数据部分,与目录协同工作以描述文件和文件夹。

将 B 树想象成一棵有分支的树,每个分支是一个子文件夹,其内容是进一步的分支,文件是叶子。B 树帮助文件系统跨驱动器块跟踪文件。

某些卷还包含盘区文件 – 附加文件,如果目录文件太满,则包含有关卷上文件位置的信息。

如果您想了解有关macOS的HFS+(扩展)文件系统如何存储这些数据结构的详细信息,请参阅Apple和Addison-Wesley在1990年代初出版的《Macintosh内部:文件》一书。近二十年前,苹果还发布了关于HFS+的技术说明。

某些卷(但并非所有卷)还可以包含索引和数据库信息。将文件和文件夹详细信息存储在数据库中可以更快地搜索卷内容。过去的一个这样的索引文件系统是BFS,或Be文件系统。

苹果自己的APFS也使用索引来存储文件和文件夹的详细信息。不幸的是,苹果决定关闭APFS的细节,该公司没有发布任何关于APFS的技术细节 – 主要是为了让恶意行为者更难破解它。

作为脚注,如果您是开发人员,则可以使用方法 unmountVolumeAtURL:options:completionHandler: 以编程方式通过 URL 卸载已装载的卷。

了解磁盘阵列

RAID 是独立磁盘冗余阵列的首字母缩写词 – 一种驱动器阵列,其作用类似于计算机的单个驱动器。

RAID 卷使用多个设备来存储文件信息,并将其作为单个卷呈现给计算机。有不同的 RAID 级别,包括级别 0 到 6。

RAID 0 或条带化将多个物理设备合并到一个卷中。RAID 1 或镜像可在多个设备上创建相同的冗余卷。

其他 RAID 级别将条带化或镜像与验证或奇偶校验相结合 – 用于检查读取和写入的位或块以提高可靠性。

RAID 0 速度很快,因为当数据读取或写入阵列时,I/O 会同时通过多个设备。某些 RAID 系统协同使用多个磁盘控制器以获得更高的性能。

RAID 1 更可靠,因为数据一次写入多个卷 – 创建数据的冗余副本。

RAID 0 的缺点是,如果阵列中的单个设备发生故障,整个卷将丢失并变得无法访问。

其他类型的 RAID 可以根据用户的需要,将镜像和条带化的概念构建成不同的结构。它们非常值得探索,但您将在了解 RAID 0 和 RAID 1 方面走得更远。

了解 BSD 磁盘标识符

由于macOS建立在UNIX的BSD发行版之上,因此它使用BSD的设备命名法来描述磁盘和卷。在 BSD 中,每个卷在挂载时都作为索引节点附加到核心操作系统中。

在BSD中,存储设备用“disk”一词标识,并附上一个数字 – 例如“disk0”或“disk1”。磁盘上的每个卷都用“s”字符标识,并附加一个数字 – 例如“disk0s1”或“disk0s2”。

若要获取连接到 Mac 的所有 BSD 设备和卷的完整列表,请在“终端”中键入:

diskutil list,然后按回车键。

这将在终端中生成每个设备及其所有卷的树。列出了每个设备和卷的其他信息,包括文件系统、大小、名称、分区方案和 BSD 标识符:

53896-109378-diskutil-xl

分区方案或分区映射仅指示设备使用的卷格式。目前,“磁盘工具”支持 GUID、Apple 分区图 (APM) 和 Microsoft 主引导记录 (MBR) 方案。

卷映射或分区映射描述设备上的所有卷。

了解文件在卷上的存储方式

首次在卷上创建文件时,将在卷的文件目录中创建一个条目,如有必要,还会在盘区文件中创建一个条目。盘区文件是附加目录文件,用于描述文件部分在卷上的位置(如果文件增长到无法单独在目录中描述的大小)。

关于文件要记住的一个关键点是,它们的数据可能不会存储在卷上的连续块中。事实上,在大多数情况下,构成文件的磁盘上的块将分散在设备上的非连续块中。这称为碎片化。

读取或写入文件时,文件系统会在目录和扩展文件中查找构成该文件的块。在读取的情况下,从设备读取块,然后在内存中按顺序重新组装,然后再传送到请求的应用程序。

当应用读取或写入文件时,它通常不会直接执行此操作。相反,它要求操作系统 API(应用程序编程接口)为其执行设备阻止访问。大多数应用程序都不必了解有关每种文件系统的详细信息。

反过来,操作系统要求相应的文件系统对卷执行块 I/O 以读取或写入文件。文件系统反过来对设备驱动程序进行块 I/O 调用 – 知道如何对设备本身进行物理数据访问的软件。

设备驱动程序只是一个知道如何直接与设备通信和控制设备的软件。操作系统在需要访问设备时加载并使用设备驱动程序。

因此,总而言之,文件I/O通过系统的路径大致为:app->OS API->filesystem->设备驱动程序。然后回来。

每当应用读取或写入设备上的文件时,数据都会通过此路径传输,最终成为设备上原始数据块的集合。只有通过文件系统,块才能重新组装成有意义的文件组织 – 最终在应用程序级别。

首先显示卷

开箱即用,您的 Mac 不会在桌面上显示储存空间宗卷。当macOS于2000年首次发布时,这是苹果的一个奇怪的决定。史蒂夫乔布斯本人争论是否在桌面上显示Mac存储卷。

最初的 Mac 操作系统从 1984 年 Mac 的第一个版本开始就一直在桌面上显示卷。但在后来的几年里,史蒂夫开始相信系统应该更像设备一样工作 – 不让用户直接访问软件的内部部分,如文件系统。

53896-109381-lisamw2-xl
最初的Mac桌面。

事实上,我们看到这种方法用于iPhone和iPad – 文件系统被关闭,除非通过官方安装渠道,如App Store。

最后,苹果和史蒂夫决定继续提供对卷的直接桌面访问,因为这是Mac一直以来的工作方式。

但有一个问题:在现代 macOS 上,桌面上的存储卷显示默认处于关闭状态。

要在桌面上显示宗卷,您需要访问 Finder->设置,然后在“在桌面上显示这些项目:”下打开存储宗卷的四个复选框。

53896-109379-DU-finder-settings-xl
查找器设置。打开顶部附近的四个音量复选框。

打开这些选项后,所有已装载的宗卷都将在 Finder 的桌面上显示为图标。如果不先执行此操作,宗卷仍然存在,但其图标不会显示在 Finder 中。

这可能会让 macOS 的新手感到困惑。

基本磁盘工具使用情况

接下来,让我们启动“磁盘工具”并查看基本 UI 以及控件的作用:

53896-109380-DU-window1-xl
“磁盘工具”主窗口。

在“磁盘工具”窗口的左侧,是储存宗卷的列表。此处列出了连接到 Mac 的所有已知宗卷,无论它们是装载还是卸载。

挂载卷是已加载到 BSD 核心的索引节点树中并连接到 I/O 子系统的卷。未挂载的卷是驻留在存储设备上但未连接到 BSD 核心的卷。

macOS 的 Finder 会监控 BSD 索引节点树,并在挂载和卸载时监视索引节点。装入宗卷后,“访达”会在 Mac 的桌面上显示其图标。

卸载宗卷后,Finder 会从桌面移除该图标。当您将卷拖到废纸篓或按住 Control 并单击它并选择“弹出”时,这就是幕后发生的情况。

内部设备宗卷首先列在“磁盘工具”窗口的顶部,外部设备上的宗卷列在该窗口下方。

列表中未装入的卷以灰色表示。如果引导宗卷格式化为 APFS 宗卷,它将包含可旋转箭头指示的宗卷列表,因为 APFS 支持子宗卷(称为容器宗卷)。

如果磁盘不包含任何 macOS 知道如何读取的宗卷,或者宗卷已损坏且无法读取,“磁盘工具”会在宗卷列表中按 BSD 名称列出该宗卷(灰显)。

如果按住 Control 键点按或右键单击“磁盘工具”中宗卷列表中的宗卷,则会显示一个包含各种功能的弹出式菜单。其中包括“获取信息”、“在 Finder 中显示”、“重命名”、“卸载”、“弹出”、“图像来源”和“擦除”,以及其他一些项目。

选择“显示简介”将显示一个窗口,其中包含有关卷的一些基本信息:

53896-109382-DU-getinfo-xl
“显示简介”窗口。

值得注意的是 BSD 设备名称、容量、加密级别(如果有)(如果卷可引导)及其 S.M.A.R.T 状态。包括各种其他信息。

同样值得注意的是设备树路径。所有连接的设备,而不仅仅是存储设备,都在 IORegistry 的 macOS 软件中枚举 – 从 Mac 主板向下的设备分层树。

IORegistry是macOS的IOKit的一部分,对于本文的范围来说过于复杂和技术性,因此我们不会在这里介绍它。如果您想阅读有关 IORegistry 的更多信息,请参阅 Apple 的开发人员文档。

要在Mac上全面了解整个设备的IORegistry,您可以使用名为IORegistryExplorer的旧版Apple开发人员工具。但是,您需要一个Apple开发人员帐户才能登录到Mac开发人员工具的其他下载区域并下载该应用程序。

自2013年以来,Apple一直没有更新IORegistryExplorer,但从macOS Ventura开始,它仍然可以工作。

53896-109383-DU-IORegE-xl
IORegistryExplorer应用程序。

使用“磁盘工具”中的上下文弹出式菜单,您可以从边栏中装载和卸载(弹出)宗卷,还可以直接在列表中重命名它们,以及格式化(抹掉)它们,以及执行其他选项。

您还可以通过在边栏中向上或向下拖动音量来拖动并重新排序边栏中的音量以满足您的喜好。

请注意,如果您直接在边栏或 Finder 中重命名宗卷而不重新格式化,最好尽快重新启动 Mac,以强制 IORegistry 和 BSD 核心操作系统将有关宗卷的所有信息完全重新加载到操作系统中。

在“磁盘工具”窗口的顶部,名称“磁盘工具”旁边还有一个小边栏图标:

53896-109386-DU-show-all-devices-xl
边栏控件。单击以隐藏或显示边栏。

点按边栏图标会显示一个弹出式菜单,其中包含三个选项:“隐藏边栏”、“仅显示宗卷”和“显示所有设备”。如果选择“显示所有设备”,边栏还会显示设备固件中列出的每个物理存储设备的名称 – 设备上的所有宗卷都列在设备名称下方:

53896-109389-DU-sidebar-popup-xl
从边栏弹出菜单中选择“显示所有设备”。

显示设备时,您可以通过转动每个设备名称旁边的箭头来折叠每个设备名称,通过隐藏该设备的卷来缩短列表。

工具栏按钮

“磁盘工具”窗口顶部有几个工具栏按钮:

  1. 卷添加和删除
  2. 急救
  3. 分区
  4. 擦 除
  5. 恢复
  6. 装载或卸载
  7. 获取信息

您可以通过从主菜单中选择“查看自定义工具栏…”来自定义工具栏中的项目>

53896-109393-Du-toolbar1-xl
自定义工具栏。

在工具栏下方,将显示所选卷或设备的图标、总线、分区图和容量。

在此下方,将显示一个条形图,其中包含卷上存储的每种文件的彩色图例,以及每种文件类型使用的总空间。如果在边栏中选择设备而不是宗卷,条形图会显示设备上的每个宗卷,并带有颜色编码图例和每个宗卷的容量。

53896-109395-DU-bargraph-xl
设备和卷条形图显示磁盘上的文件使用情况。

“磁盘工具”窗口中的最后一项是一个文本面板,其中包含“显示简介”窗口中显示的重要数据子集 – 让您一目了然地轻松查看重要的设备或宗卷信息。

主菜单栏中的大多数“磁盘工具”菜单类似于工具栏按钮和上下文弹出菜单,尽管主菜单项的组织与上下文菜单和图标中的略有不同。

主菜单栏中还有一个“映像”菜单,其中包含用于操作磁盘映像的项目,我们将在后面的文章中介绍。

基本格式

在“磁盘工具”中,有两种基本方法可用于准备储存设备以在 macOS 中使用。

您可以对设备进行简单的擦除(格式化),这会在设备上创建一个大卷。或者,您可以将设备分区为多个宗卷,每个宗卷单独挂载在 Finder 的桌面上。

请注意,如果要擦除 Mac 上的内置内置驱动器,则需要从包含 macOS 的外部宗卷重新启动 Mac,或者通过重新启动然后按住键盘上的 Command-R 来启动到 Mac 的内置恢复模式。进入恢复模式后,您可以从“恢复”菜单运行“磁盘工具”。

在基于 Apple 硅的 Mac 上,您还可以通过按住 Mac 的电源按钮直到出现恢复模式屏幕来启动进入恢复模式。

您可以通过在重新启动后按住 Mac 键盘上的 Command-Option 来选择要启动的外部 macOS 宗卷,然后选择可引导宗卷并单击箭头或确定按钮。

启动后,您可以在“磁盘工具”窗口边栏中选择 Mac 的内部驱动器,然后从边栏的上下文弹出菜单中选择“抹掉”以对其进行格式化。请注意,因为这将完全删除并擦除内部驱动器上的任何内容。

有关 Mac 启动键组合的更多信息,请参阅 Apple 的技术说明页面。

对于其他设备,若要执行简单的单宗卷抹掉,请从“磁盘工具”的边栏弹出式菜单图标中选择“显示所有设备”,然后在边栏中选择一个设备,然后按住 Control 键点按或右键单击该设备,然后从弹出菜单中选择“抹掉”。您也可以选择一个设备,然后单击“擦除”工具栏图标,或者从“编辑”菜单或上下文弹出菜单中选择“擦除”

53896-109367-DU-erase1-xl
点按“抹掉”工具栏按钮,或从上下文弹出菜单中选择“抹掉”。

将出现一个擦除工作表,其中包含三个字段:“卷名称”、“格式”和“方案”。为新宗卷命名,然后选择格式化的格式和分区方案。

格式:字段是新卷的卷格式。目前,Disk Utility 支持 Apple File System (APFS)、Mac OS Extended (HFS+)、FAT (MS-DOS) 和 exFAT(Extended FAT)。

您还可以选择制作 APFS 的加密版本,并选取宗卷是否支持区分大小写的文件名。

HFS Plus (HFS+) 是 Mac OS 8 和 9 中较旧但仍受支持的 Mac OS 卷格式。最初的Mac有一种称为MFS – Macintosh文件系统的卷格式 – 不支持文件夹或文件层次结构。苹果后来推出了带有HFS的文件夹,当2TB驱动器在1990年代后期出现时,扩展了HFS以支持HFS+。

FAT是文件分配表的首字母缩写 – 一种旧的但仍然支持的DOS / Windows卷格式。

53896-109391-DU-erase3-xl
擦除选项。

“方案”是指使用哪种分区图格式。如前所述,这是设备的卷标头的格式,其中包含有关设备上卷的信息。对于现代标准可启动 macOS 卷格式,请选择“GUID 分区图”。

对于Windows可启动卷,请选择“主引导记录”(MBR),这是一种Microsoft PC卷格式。Apple提供MBR主要用于Boot Camp实用程序,该实用程序允许您将Microsoft Windows安装到Mac上的分区上。

为了使Windows在Mac上启动,设备必须包含MBR。

例如,如果要格式化可同时安装在 macOS 和 Windows 计算机上的 USB 拇指驱动器,也请使用 MBR。

Apple 分区映射 (APM) 是一种较旧但仍受支持的分区映射方案。APM用于早期版本的Mac OS,该版本在基于PowerPC的Mac上运行,并且仍然主要支持在较旧的Mac上安装较新的驱动器。

但要制作现代可启动的 macOS 卷,请改为选择“GUID 分区图”。

苹果多年前在 Mac 中切换到英特尔处理器时提供了对 GUID 分区图的支持,主要是因为英特尔架构的某些部分在使用大多数现代 PC 中使用的 EFI 固件时需要启动 GUID 分区图。

在“擦除”工作表中进行所有选择后,单击“擦除”按钮。请注意,这将启动格式化过程,所选设备或卷上的所有数据都将被销毁。

另请注意,在边栏中,您可以格式化整个设备,这会销毁设备上的所有现有宗卷。或者,您可以选择单个宗卷并仅抹掉该宗卷,这会销毁该宗卷上的所有数据,但使设备上的其他宗卷保持不变。

当打算仅擦除单个卷时,请务必仔细选择,以免无意中破坏设备上的其他卷。

完成后,“磁盘工具”将显示一个结果窗口,其中包含成功或错误,说明抹掉失败的原因。如果成功,新创建的宗卷也将自动挂载到 Finder 的桌面上,您可以在其中像访问任何其他储存宗卷一样访问它。

53896-109369-Format-6-xl
擦除结果 – 在本例中为成功。

分区

如果要创建多个宗卷,而不是在设备上创建单个大宗卷,请点按工具栏中的“分区”图标,或者按住 Control 键点按或右键单击“磁盘工具”边栏中的设备,然后从弹出菜单中选择“分区”。这将打开主分区表:

53896-109370-p1-xl
单击“分区”工具栏按钮或“分区…”从边栏中的上下文弹出菜单。

在此工作表中,您可以将设备格式化为单个大分区,也可以单击饼图下方的“+”按钮以添加其他卷。这会将卷分成两个相等的卷。

然后,您可以通过单击每个卷来单独选择每个卷,然后使用右侧的控件设置其参数。单击“应用”按钮以修改设备以包含指示的多个卷。

53896-109372-p2-xl
单击“+”按钮添加音量。

如果重新选择原始卷,则可以继续单击“+”按钮,该按钮每次将音量再次减半,从所选卷创建两个较小的卷。您可以继续此过程以创建任意数量的卷,直到单击“应用”按钮进行更改。

53896-109371-p3-xl
单击“应用”以保存对设备分区图的更改。

创建宗卷后,“磁盘工具”将更新设备的分区图以包含新宗卷,并将每个宗卷挂载到桌面上。

未经允许不得转载:表盘吧 » macOS 磁盘工具入门:基础知识