【2025-03-13 11:00:00AI Siri网最新消息】
macOS 安装器使用起来既快捷又方便,但你可以通过查看其内置日志获取有关安装过程中发生的更多信息。下面是如何查看它们。
macOS 安装器文件被称为软件包,通常具有 .pkg 文件扩展名。 当你打开一个 .pkg 文件以在 Mac 上安装软件时,Apple 的安装器应用程序会执行一系列复杂的步骤来验证和安装该软件。
大多数 .pkg 文件都构建为包含一系列标准步骤,其中首先验证软件包,然后解压缩有效负载并将其复制到目标驱动器。
最后,运行安装后脚本以检查安装、设置文件权限并执行任何安装后清理操作。
从图形用户界面 (GUI) 来看,这看起来像一个简单而快速的过程。但是,在幕后却发生了很多事情。
幸运的是,安装器会详细记录安装过程中发生的事情。查看此日志、将其保存到文本文件或打印它非常容易。
安装器是一个运行 .pkg 文件的通用应用程序
大多数 .pkg 文件实际上并不包含安装器应用程序 – 而是由 macOS 的安装器应用程序 (Installer.app) 读取和运行,该程序位于启动磁盘上的 /System/Library/Core Services 中。 当前 macOS Sequoia 15.3 安装器应用程序版本为 6.2。
当你双击 Finder 中的 .pkg 文件时,macOS 会启动安装器应用程序,然后将 .pkg 的文件路径传递给它,以便它可以被读取。
要获取 Mac 上所有 .pkg 文件的列表,请在键盘上按 Command-F,然后将搜索词设置为“Kind is Other”,然后在右侧的搜索字段中输入“Installer”。
.pkg 文件是 Bundles,macOS 中的特殊文件夹 – 就像大多数应用程序一样。 .pkg 包也可能包含其他包。
开发者构建的自定义安装程序也是如此,它们不会由 Installer.app 运行。

Apple 的 Xcode 应用程序中捆绑了四个软件包。
从 Mac OS X 10.5 Leopard 开始,Apple 为开发者提供了创建扁平安装程序包文件的能力。 它们是单个编码文件,而不是捆绑文件夹,但仍然具有 .pkg 文件名扩展名,并由 Installer.app 运行。
扁平文件包会阻止用户打开 .pkg 包,并使用 Finder 的 显示包内容 上下文菜单项或使用终端应用程序在内部查看。
无论哪种方式,打开后,Installer.app 都会运行 .pkg 并执行它在其中找到的内容。
如果 .pkg 不是扁平文件包,你可以在 Finder 中 Control-单击 它,然后从上下文菜单中选择 显示包内容 项以打开 .pkg 包并查看其中的内容。
不要更改 .pkg 中的任何内容,因为许多 .pkg 包含数字签名信息,这些信息必须与 .pkg 的内容匹配。
安装后查看安装器日志
典型的 .pkg 安装会打开一个标准的 Installer.app 窗口,显示安装进度,包括安装期间的步骤和消息。 安装完成或失败后,安装器将显示结果以及“安装成功”等消息。
此时,用户通常会单击安装程序窗口中的 关闭 按钮。

Installer.app 完成安装。
如果用户选择 窗口 菜单而不是单击 关闭 按钮,则可以使用名为 安装程序日志 (Command-L) 的菜单项。 选择 安装程序日志 会提示 Installer.app 打开一个日志窗口,该窗口显示安装期间发生的全部文本。
日志中的默认显示是显示 仅显示错误。 但是,如果单击窗口顶部工具栏中的 仅显示错误 菜单项,你还可以选择 显示错误和进度 或 显示所有日志。

选择“显示所有日志”以查看安装期间发生的一切。
选择 显示所有日志 会更改日志窗口的文本以显示安装程序在安装期间运行的完整、详细的步骤 – 以及任何错误。 日志窗口顶部还有一个 搜索 字段,用于搜索日志文本,还有一个 保存 和 打印 按钮。
如果你从不同的 .pkg 文件执行多次安装,并且想要保留所有安装的记录,则 保存 特别有用。
保存或打印每个日志后,你可以安全地 退出 安装程序。
安装程序日志显示许多有用的信息,包括:
- 安装的日期和时间
- Mac 硬件和软件配置
- 用户名
- 安装目标路径
- 安装组件
- 错误或警告
- 更多
安装程序收据
每次安装后,macOS 都会将一个简短的记录附加到启动磁盘上的 /Library/Receipts 中名为“InstallHistory.plist”的文件。 这是属性列表 (.plist) 格式的标准 XML 文件,你可以使用任何文本编辑器或 Apple 的 Xcode 开发者应用程序读取该文件。
InstallHistory.plist 文件中的每个项目都是一个 XML 字典,其中包含有关执行的安装的少量信息 – 其中一个子项目名为“packageIdentifiers”。 此数组包含所运行的安装程序的 捆绑包 ID 的列表。
将 .plist 字典视为一组嵌套的 XML 数据,其中包含一个名称(键)和一个数据项目组(例如字符串、数组、日期、数字或其他字典)。
捆绑包 ID 只是唯一标识 macOS 的应用程序或 .pkg 的文本。 例如,“com.apple.installer”是 macOS 安装程序应用程序本身的捆绑包 ID。 每个捆绑包 ID 必须是唯一的,以避免应用程序和 .pkg 冲突。
理解 bundle ID 的概念对于理解 macOS 如何管理和识别已安装的软件至关重要。每个应用和 .pkg 文件都必须拥有一个唯一的 bundle ID,这样系统才能正确地区分它们,并避免潜在的命名冲突。苹果公司鼓励开发者采用反向域名的方式来创建 bundle ID,例如 `com.example.appname`,以确保其唯一性。了解这些 ID 也有助于进行手动卸载或故障排除,尤其是在应用无法通过常规方式卸载时。
install.log
如果要查看 macOS 上的系统范围日志文件 (install.log),它位于启动磁盘上的 /private/var/log 中。 但请注意:除非你最近才完成了 macOS 的全新安装,否则该文件可能非常大 – 数千甚至数万页。
你需要在 Finder 中显示隐藏文件才能查看 /private/var/log。 你可以使用任何纯文本编辑器(包括 Apple 提供的 TextEdit)查看任何 macOS .log 文件。
大多数 macOS 日志文件都位于此文件夹中,或者位于用户文件夹中的 /Library/Logs 中。
你还可以通过在启动磁盘上的 /Applications/Utilities 文件夹中运行 macOS 的 控制台 应用程序来查看 install.log 文件。 控制台在一个集中位置显示所有系统日志。
要在控制台中查看 install.log,只需在侧边栏中选择 日志报告,然后双击右侧文件窗格中的 install.log。 还有一些选项可用于清除日志,以及显示它们在启动磁盘上的位置。
pkgutil
macOS 还包括一个名为 pkgutil
的命令行终端应用程序,它是一个通用的 .pkg 实用程序。 要查看选项和使用说明,请在终端中键入:
man pkgutil
并在键盘上按 Return。 要退出手动系统,请按 Control-Z 或 q。 你还可以在终端中键入 pkgutil -h 以获取 pkgutil
命令列表。
pkgutil
有一些很棒的选项,可让你查看有关 Mac 上的 .pkgs 的信息。 一些比较有趣的选项是:
- — pkgs(显示给定卷上的所有已安装软件包 ID)
- — files(显示由指定软件包安装的文件)
- — pkg-info(显示有关软件包的元数据)
- — forget(丢弃指定软件包的收据数据)
- — expand(将平面 .pkg 展开到文件夹)
- — flatten(展开的反面)
- — check-signature(验证软件包的签名)
大多数 .pkgs 还包含一个 bom(物料清单)文件 – 另一个命令行工具 (lsbom
) 允许你读取 bom 以列出 .pkg 中的内容。
删除日志
你可以不时地删除 /private/var/logs 中包含的某些日志(如果需要)。 只是不要删除 macOS 锁定的或正在使用的任何内容。
macOS 会定期压缩和删除旧日志来存档旧日志。 这些日志文件将显示为 .gz 或 .bz2 文件。
如果你不需要这些存档日志,可以删除它们。
你还可以从控制台应用程序本身删除日志。 在 Finder 和控制台中,你需要管理员密码才能删除受保护的日志。
请记住,当你从 Mac 中删除日志文件时,这些消息将永远消失,并且不再可用。
如果你确实删除了 macOS 使用的系统日志,它将在需要将日志消息写入磁盘时自动重新创建一个新副本。 删除日志后最好重新启动 Mac 以重置和刷新所有内容。
如果你确实需要保留一些日志文件以供以后使用,但又想从 Mac 中清除它们,请务必先制作日志文件的备份副本。
安装程序实用程序
如果你想构建自己的 .pkg 安装程序,macOS 有一个名为 pkgbuild
的内置命令行工具。 来自 Araelium 的第三方实用程序 Package Builder ($25) 可帮助简化软件包组装和构建。
Stephane Sudre 有一个免费的软件包构建器,简称为 Packages。
另请查看来自 CharlesSoft 的很棒的 .pkg 检查器工具 Pacifist ($20)。
另一个很棒的小安装程序实用程序是来自 Mother’s Ruin 的 Suspicious Package。 此实用程序允许你查看 macOS 安装程序内部,而无需运行它们 – 允许你验证软件包签名,查看安装程序包含的内容,以及查看安装程序将运行的脚本。
macOS 安装程序架构非常强大,事实上可以追溯到 2000 年 Mac OS X 的第一个版本。 实际上,.pkg 架构可以追溯到 macOS 的前身 NeXTStep。
在以后的文章中,我们将研究常见的 macOS 安装程序错误,并讨论如何构建 macOS 安装程序包以及要在其中包含哪些内容。