在进行归档时,命令"/usr/sbin/chown"执行失败,退出代码为1。

89

我正在尝试为iPhone归档我的第一个 iOS 4.3 应用程序,但总是遇到这个错误:

Command /usr/sbin/chown failed with exit code 1

我已经在各种论坛中进行了搜索,尝试了一些解决方法,例如更改备用安装组(但我不知道要更改成什么),并启用“跳过安装”选项。


你能否打开日志选项卡(即聊天气泡选项卡),选择构建日志,然后展开失败的chmod行,并在问题中包含完整的命令和输出? - Mattias Wadman
13个回答

136

虽然听起来很蠢,在XCode 5.1.1中,我只需要退出并重新启动XCode就可以了。我知道这不是什么“答案”,但对我来说确实有效。

编辑:截至2018年7月,这仍然适用于某些人。 编辑:截至2019年1月,这仍然适用于xcode 9.4.1。 编辑:截至2023年2月,这在xcode 14.2中依然有效。


这是 Xcode 的一个 bug(似乎在 8 版本中仍然存在!)——在我的情况下,它从我打开的另一个项目中获取了错误的值,并将其应用于“Install Owner”和“Alternate Install Owner”字段。正如其他人所说,退出 Xcode,重新启动并执行“清理”和“清理构建文件夹”的操作可以解决问题。 - Evan R
1
Xcode 11.3.1仍然可以使用。但是有一个小问题。在工作时使用MacBook时没有任何问题,但是当我在家尝试存档时会出现错误。但是——如果我从家里连接到我们的工作服务器,它就能正常工作。非常奇怪。 - Bill Norman
1
2022年,XCode 14,仍在工作。 - Climbatize
1
Xcode 13.2.1,通过重新启动 Xcode 解决。 - Eklavyaa
我可以确认,在2023年10月,它仍然在Xcode 13.1上运行正常。 - undefined
显示剩余2条评论

87

在此输入图片描述

我在存档的SetOwnerAndGroup部分遇到了困难 - 每次尝试'chown'时得到"/usr/sbin/chown failed",并且每个文件都会得到"操作不允许"。

这很容易在终端中进行测试 - 'chown'无法工作,但'sudo chown'可以。由于我没有改变文件权限的需要,最简单的解决方案是不要进行chown操作。

上面的屏幕截图显示了-我只是将“Install Owner/Group”留空,就行了。


8
请确保当您的项目中有任何子项目/库(例如CordovaLib)时,也要将安装所有者/组清空。 - tschoffelen
5
谢谢,这正是我所需要的!但我想知道为什么需要这个。昨天它能用,今天就不行了。当然,我还必须清空“安装权限”。 - Phil
如果在企业环境中出现这种情况,这篇文章可以解决它。非常棒。 - ort11
通常我不认为这一步骤是必要的,但它确实解决了问题。我已经回到这个答案几次了。 - funroll
是的,确实如此。在尝试了其他几种方法之后,这是问题的解决者。 - Moonwalker
我曾经遇到过类似的问题。这个方法非常有效。 - user2900761

61

当我遇到这个错误时,重新启动我的电脑解决了它。


10
重新启动是唯一能解决这个问题的方法。 - SteveB
不能修复它。 - C0D3

24

我已经尝试了所有其他解决方案,但它们都对我无效。因此,我在终端上运行了以下命令,将我的项目中的每个文件的所有者更改为我自己:

sudo chown -R my_username:my_group ./my_project_folder

其中,“my_username”是您的用户名,“my_group”是您所在的用户组(通常为“staff”),而“my_project_folder”是您的项目文件夹。


6

对我而言,其他的解决方案在Xcode 4.5上都不起作用。我所做的是:

通过从你的项目和CordovaLib项目中删除armv6架构,清理两个项目并重新构建来解决问题。

来源


2
详细说明这些步骤:在Xcode中,单击您的项目,转到“Build Settings”选项卡,在“Architectures”下只需写入armv7。对于CordovaLib项目(它位于左侧窗格中,与您的项目相同),也要执行相同的操作。然后使用Product-> Clean清除两个项目。这对我也起作用了,解决了我的问题。 - duality_

2

enter image description here我也遇到了Xcode的同样问题。在重启Xcode后,它开始正常工作。在屏幕截图中,Xcode->构建设置,在重新启动Xcode后,已安装组为空。它显示的组ID为一些数字。


2
为了让它在我的环境中工作,我清除了有关权限的所有信息,如adalle所说,并由TomPhil补充。
我清空了安装组安装所有者安装权限字段,包括Cordova子项目

1
  1. 选择出现错误的目标
  2. Build Active Architecture Only从Yes改为No

对我很有用。


1

我尝试了所有可能的变体,但它们都没有帮助我。所以我下载了旧版的XCode 4.4.1,然后应用程序成功地归档了 :)


1

不确定您是否遇到了同样的问题,但这对我有用:

当我创建XCode项目时,我的应用程序名称中有一个空格,因此尝试部署我的应用程序总是失败。我通过使用“自定义存档名称”来解决了这个问题。

在XCode 4中...

  1. 编辑部署方案
  2. 单击存档选项卡
  3. 然后指定一个没有空格的存档名称。

Specify a Custom Archive Name


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接