我公司的 IT 部门主要使用 Windows 运行,为了变得更加安全,他们正在改变 Macintosh 计算机登录我们内部网络的方式,以便它们像 Windows 计算机一样使用 Active Directory。
我在 Mac 上获得了管理权限,并且能够完成我以前在软件安装身份验证方面能够做的大部分工作。
但是,有一个问题:“软件更新”功能不起作用。当我尝试让 Mac 从 Apple 菜单执行软件更新时,会出现一个正常窗口,列出需要更新的内容;我可以选择要更新的内容并单击“更新”按钮,但之后什么也没发生。
它不再像以前那样要求进行身份验证,计算机也不会执行任何下载或安装(它有时会要求我同意 iTunes 的许可协议)。
我可以单独下载更新并安装,没有任何问题,但自动更新失败。我宁愿像以前一样使用软件更新菜单项:它更方便。
关于如何修复此问题有什么建议吗?
编辑于2009年11月19日,10:09(东部标准时间):我已经将这个问题发布到 Apple Mac OS X Snow Leopard 支持论坛。
编辑于2009年11月19日,12:39 EST:是的,终端命令“sudo softwareupdate --install --all”确实运行正常。我想避免这种情况,因为我的同事通常不习惯使用 Mac。
我也尝试了 Chealion 的建议删除“~/Library/Preferences/com.apple.SoftwareUpdate.plist”和“/Library/Preferences/com.apple.SoftwareUpdate.plist”,但软件更新仍然失败。
但是,我确实在控制台中收到了诊断消息(如下)。我删除了 MS Office 软件包收据并检查了 suhelperd(软件更新帮助守护程序?);看来 suhelperd 崩溃了,这解释了为什么它不起作用。我已向 Apple 提交了一份错误报告 (radar://7408619)。
以下是控制台诊断消息:
11/19/09 12:36:44 PM com.apple.suhelperd[66829] terminate called after throwing an instance of 'NSException'
11/19/09 12:36:47 PM com.apple.launchd[1] (com.apple.suhelperd[66829]) Job appears to have crashed: Abort trap
11/19/09 12:36:48 PM com.apple.ReportCrash.Root[66830] 2009-11-19 12:36:48.275 ReportCrash[66830:2703] Saved crash report for suhelperd[66829] version ??? (???) to /Library/Logs/DiagnosticReports/suhelperd_2009-11-19-123648_localhost.crash
11/19/09 12:36:54 PM com.apple.launchd[1] (com.apple.suhelperd) Throttling respawn: Will start in 1 seconds
11/19/09 12:36:55 PM com.apple.suhelperd[66836] terminate called after throwing an instance of 'NSException'
11/19/09 12:36:55 PM com.apple.launchd[1] (com.apple.suhelperd[66836]) Job appears to have crashed: Abort trap
11/19/09 12:36:56 PM com.apple.ReportCrash.Root[66830] 2009-11-19 12:36:56.017 ReportCrash[66830:2f03] Saved crash report for suhelperd[66836] version ??? (???) to /Library/Logs/DiagnosticReports/suhelperd_2009-11-19-123655_localhost.crash
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_automator.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_automator_workflow.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_autoupdate.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_clipart.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_core.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_dock.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_entourage.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_entourage_help_std.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_equationeditor.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_errorreporting.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_excel.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_excel_help_std.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_fonts.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_graph.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_helpviewer.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_launch.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_ooxml.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_orgchart.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_powerpoint.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_powerpoint_help_std.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_brazilian.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_danish.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_dutch.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_english.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_finnish.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_french.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_german.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_italian.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_japanese.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_norwegian.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_portuguese.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_spanish.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_proofing_swedish.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_required.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_silverlight.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_sounds.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_word.pkg
11/19/09 12:36:58 PM Software Update[66826] PackageKit: *** Missing bundle identifier: /Library/Receipts/Office2008_en_word_help_std.pkg
11/19/09 12:37:26 PM com.apple.suhelperd[66839] terminate called after throwing an instance of 'NSException'
11/19/09 12:37:26 PM com.apple.launchd[1] (com.apple.suhelperd[66839]) Job appears to have crashed: Abort trap
11/19/09 12:37:26 PM com.apple.ReportCrash.Root[66830] 2009-11-19 12:37:26.929 ReportCrash[66830:2b07] Saved crash report for suhelperd[66839] version ??? (???) to /Library/Logs/DiagnosticReports/suhelperd_2009-11-19-123726_localhost.crash
以下是 suhelperd 崩溃报告:
Process: suhelperd [66839]
Path: /System/Library/PrivateFrameworks/SoftwareUpdate.framework/Versions/A/Resources/suhelperd
Identifier: suhelperd
Version: ??? (???)
Code Type: X86-64 (Native)
Parent Process: launchd [1]
Date/Time: 2009-11-19 12:37:26.473 -0500
OS Version: Mac OS X 10.6.2 (10C540)
Report Version: 6
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Application Specific Information:
abort() called
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSCFArray objectAtIndex:]: index (0) beyond bounds (0)'
*** Call stack at first throw:
(
0 CoreFoundation 0x00007fff859a9444 __exceptionPreprocess + 180
1 libobjc.A.dylib 0x00007fff8787e0f3 objc_exception_throw + 45
2 CoreFoundation 0x00007fff859a9267 +[NSException raise:format:arguments:] + 103
3 CoreFoundation 0x00007fff859a91f4 +[NSException raise:format:] + 148
4 Foundation 0x00007fff855da080 _NSArrayRaiseBoundException + 122
5 Foundation 0x00007fff8553cb81 -[NSCFArray objectAtIndex:] + 75
6 Admin 0x00007fff8107920e +[User(UserPrivate) _userWithInfo:attributes:] + 71
7 Admin 0x00007fff81080d6b +[User findUserByID:searchParent:] + 404
8 suhelperd 0x0000000100001274 0x0 + 4294972020
9 suhelperd 0x0000000100002240 0x0 + 4294976064
10 suhelperd 0x00000001000053b1 0x0 + 4294988721
11 suhelperd 0x00000001000044b3 0x0 + 4294984883
12 suhelperd 0x0000000100004154 0x0 + 4294984020
13 libSystem.B.dylib 0x00007fff83eb60d8 mach_msg_server + 357
14 suhelperd 0x00000001000036eb 0x0 + 4294981355
15 suhelperd 0x0000000100002a1f 0x0 + 4294978079
16 suhelperd 0x0000000100001080 0x0 + 4294971520
)
Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libSystem.B.dylib 0x00007fff83e86fe6 __kill + 10
1 libSystem.B.dylib 0x00007fff83f27e32 abort + 83
2 libstdc++.6.dylib 0x00007fff873cf5d2 __tcf_0 + 0
3 libobjc.A.dylib 0x00007fff87881d29 _objc_terminate + 100
4 libstdc++.6.dylib 0x00007fff873cdae1 __cxxabiv1::__terminate(void (*)()) + 11
5 libstdc++.6.dylib 0x00007fff873cdb16 __cxxabiv1::__unexpected(void (*)()) + 0
6 libstdc++.6.dylib 0x00007fff873cdbfc __gxx_exception_cleanup(_Unwind_Reason_Code, _Unwind_Exception*) + 0
7 libobjc.A.dylib 0x00007fff8787e192 object_getIvar + 0
8 com.apple.CoreFoundation 0x00007fff859a9267 +[NSException raise:format:arguments:] + 103
9 com.apple.CoreFoundation 0x00007fff859a91f4 +[NSException raise:format:] + 148
10 com.apple.Foundation 0x00007fff855da080 _NSArrayRaiseBoundException + 122
11 com.apple.Foundation 0x00007fff8553cb81 -[NSCFArray objectAtIndex:] + 75
12 com.apple.framework.Admin 0x00007fff8107920e +[User(UserPrivate) _userWithInfo:attributes:] + 71
13 com.apple.framework.Admin 0x00007fff81080d6b +[User findUserByID:searchParent:] + 404
14 suhelperd 0x0000000100001274 0x100000000 + 4724
15 suhelperd 0x0000000100002240 0x100000000 + 8768
16 suhelperd 0x00000001000053b1 0x100000000 + 21425
17 suhelperd 0x00000001000044b3 0x100000000 + 17587
18 suhelperd 0x0000000100004154 0x100000000 + 16724
19 libSystem.B.dylib 0x00007fff83eb60d8 mach_msg_server + 357
20 suhelperd 0x00000001000036eb 0x100000000 + 14059
21 suhelperd 0x0000000100002a1f 0x100000000 + 10783
22 suhelperd 0x0000000100001080 0x100000000 + 4224
Thread 1: Dispatch queue: com.apple.libdispatch-manager
0 libSystem.B.dylib 0x00007fff83e51bba kevent + 10
1 libSystem.B.dylib 0x00007fff83e53a85 _dispatch_mgr_invoke + 154
2 libSystem.B.dylib 0x00007fff83e5375c _dispatch_queue_invoke + 185
3 libSystem.B.dylib 0x00007fff83e53286 _dispatch_worker_thread2 + 244
4 libSystem.B.dylib 0x00007fff83e52bb8 _pthread_wqthread + 353
5 libSystem.B.dylib 0x00007fff83e52a55 start_wqthread + 13
Thread 2:
0 libSystem.B.dylib 0x00007fff83e529da __workq_kernreturn + 10
1 libSystem.B.dylib 0x00007fff83e52dec _pthread_wqthread + 917
2 libSystem.B.dylib 0x00007fff83e52a55 start_wqthread + 13
Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x0000000000000000 rbx: 0x00007fff707d7298 rcx: 0x00007fff5fbff868 rdx: 0x0000000000000000
rdi: 0x0000000000010517 rsi: 0x0000000000000006 rbp: 0x00007fff5fbff880 rsp: 0x00007fff5fbff868
r8: 0x00007fff707da9e0 r9: 0x0000000000000063 r10: 0x00007fff83e83026 r11: 0x0000000000000202
r12: 0x00007fff85a2dca1 r13: 0x0000000000000000 r14: 0x00007fff70bea228 r15: 0x00007fff5fbffb10
rip: 0x00007fff83e86fe6 rfl: 0x0000000000000202 cr2: 0x00007fff70e3afd0
答案1
看来 suhelperd 崩溃了,这解释了它为什么无法工作。我已向 Apple 提交了一份错误报告 (radar://7408619)。
答案2
您的组织是否控制可通过 MCX 获得的软件更新?
mcxquery -u shortname
您可以从终端查看我的运行情况,看看是否设置了任何首选项。
将软件更新指向另一台服务器的另一种方法是设置CatalogURL
(~/Library/Preferences/com.apple.SoftwareUpdate.plist
针对用户)和/或/Library/Preferences/com.apple.SoftwareUpdate.plist
(这将影响使用 GUI 的用户以及在命令行上使用 sudo 运行的用户)。您可以尝试删除文件(它们将在需要时重新创建),或者如果您对它们的设置感到好奇,您可以在属性列表查看器(开发人员工具的一部分)中打开文件或在命令行上运行defaults read CatalogURL com.apple.SoftwareUpdate
并defaults read CatalogURL /Library/Preferences/com.apple.SoftwareUpdate.plist
或者,他们可能在网络上阻止了 Apple 的软件更新服务器 - 那么它在脱离他们的网络时还能运行吗?
答案3
我遇到了同样的问题,问题源于没有使用移动帐户。为网络用户启用移动帐户解决了这个问题。