9

在 10.5 上一切正常,但现在我的 PackageMaker 安装项目已损坏。这几天我一直在和一个问题作斗争,要么

  • Snow Leopard (OS X 10.6.1) 破坏了 PackageMaker 安装
  • 我缺乏非常非常基本的知识花絮

为了缩小问题的范围,我已经到了这一点:

  1. 创建一个新的 PackageMaker 安装
  2. 让它在我的主目录中安装一个 jpeg 图像
  3. 定义一个preinstall什么都不做的脚本
    #!/bin.sh
    出口 0

运行上述...并观察它失败并出现以下错误消息,例如时钟工作

Sep 14 15:09:45 manoa installd[5620]: PackageKit: ----- Begin install -----
Sep 14 15:09:45 manoa installd[5620]: PackageKit: request=PKInstallRequest <1 packages, destination=/>
Sep 14 15:09:45 manoa installd[5620]: PackageKit: packages=(\n    "PKLeopardPackage <file://localhost/Users/stu/Desktop/asdf.pkg>"\n)
Sep 14 15:09:46 manoa installd[5620]: PackageKit: Extracting /Users/stu/Desktop/asdf.pkg (destination=/var/folders/Hb/HbXJFyEpFaupt5QyLN-pTk+++TI/-Tmp-/PKInstallSandbox-tmp/Root/~, uid=501)
Sep 14 15:09:46 manoa installd[5620]: PackageKit: Executing script "./preinstall" in /private/tmp/PKInstallSandbox.cmlS2H/Scripts/test.test.5year_header.pkg.PFrHNB
Sep 14 15:09:46 manoa installd[5620]: PackageKit: *** launch path not accessible
Sep 14 15:09:46 manoa installd[5620]: PackageKit: Install Failed: PKG: pre-install scripts for "test.test.5year_header.pkg"\nError Domain=PKInstallErrorDomain Code=112 UserInfo=0x100149430 "An error occurred while running scripts from the package “asdf”." {\n    NSFilePath = "./preinstall";\n    NSLocalizedDescription = "An error occurred while running scripts from the package \U201casdf\U201d.";\n    NSURL = "file://localhost/Users/stu/Desktop/asdf.pkg";\n    PKInstallPackageIdentifier = "test.test.5year_header.pkg";\n}
Sep 14 15:09:46 manoa Installer[5614]: install:didFailWithError:Error Domain=PKInstallErrorDomain Code=112 UserInfo=0x1195917c0 "An error occurred while running scripts from the package “asdf”."
Sep 14 15:09:46 manoa Installer[5614]: Install failed: The Installer encountered an error that caused the installation to fail. Contact the software manufacturer for assistance.
Sep 14 15:09:47 manoa Installer[5614]: IFDInstallController 144040 state = 7
Sep 14 15:09:47 manoa Installer[5614]: Displaying 'Install Failed' UI.
Sep 14 15:09:47 manoa Installer[5614]: 'Install Failed' UI displayed message:'The Installer encountered an error that caused the installation to fail. Contact the software manufacturer for assistance.'.

中没有文件/private/tmp/PKInstallSandbox.cmlS2H/Scripts/test.test.5year_header.pkg.PFrHNB/,这让我认为问题出在 PackageMaker 上,而不是我。但我是 OS X 软件安装领域的新手,所以仍然存在疑问。

所以,问题 是:PackageMaker 的预安装脚本在 OS X 10.6 上是否损坏?还是对我不理解的预安装脚本有一些要求?

4

3 回答 3

8

我遇到了同样的问题,为脚本设置可执行权限为我解决了这个问题!

pkgutil --expand my.pkg my 
chmod +x my/inner.pkg/Scripts/preinstall 
pkgutil --flatten my my-fixed.pkg 

在 golang-nuts groups的这个线程中找到了这个解决方案

于 2013-11-13T13:09:08.193 回答
2

“无法访问启动路径”可能与正在压缩和/或解压缩 PKG 的软件有关。

所以,我遇到了我的飞行后脚本没有运行并导致我的 PKG 失败的问题。查看安装程序日志(要查看此运行有问题的 PKG,然后菜单项“窗口 > 安装程序日志”并从下拉列表中选择“显示所有日志”),我在尝试时看到了可怕的“启动路径无法访问”运行脚本(由 PackageMaker 重命名为“postflight”)。

问题只出现在我客户的系统上。这是一个真正的难题,因为我的两台 Mac 测试机器在运行 PKG 时都没有问题,而且它们的环境似乎与客户的机器相同。

然后在赛门铁克网站上的一个不起眼的帖子中,我看到有人发现这个问题与 PKG 的压缩和/或解压缩方式有关。

果然。我的客户正在从 DropBox 下载 PKG,而 DropBox 压缩它的方式损坏了 PKG 中的某些内容。

解决方案是让我在上传到 DropBox 之前在我的系统上压缩 PKG,然后一切顺利。

于 2013-09-15T05:05:09.067 回答
0

我有同样的问题。检查脚本的第一行。在我的情况下!#!/bin/sh

于 2011-03-03T14:02:00.563 回答