我有一个在Mac OS 10.5.8上运行的程序。该程序将运行一个连续的周期,在该周期中它将装载映像,安装浏览器插件并再次卸载映像。如果我让该程序运行,我最终会遇到以下错误:“ fork:资源暂时不可用”。在活动监视器中,我可以看到数百个名为diskimages-helper的进程正在运行。有谁知道为什么会这样以及如何避免呢?以下是我在程序的一个周期中使用的命令。

# First I remove the plugin
rm -rf "/Library/Internet Plug-Ins/my.plugin"

# If the mount exists I unmount it
hdiutil unmount [mount] -force

# If that doesnt work I detach the device
hdiutil detach [device] -force

# Then I mount the image
hdiutil mount [image]

# I install the plugin
installer -package [package] -target /

# Unmount
hdiutil unmount [mount] -force

# And if necessary detach
hdiutil detach [device] -force

最佳答案

您需要始终分离磁盘映像-卸载磁盘映像会卸载文件系统,但是会将磁盘映像附加到/ dev / disk *条目,并运行diskimages-helper进程来处理它。请注意,hdiutil detach将为您卸载卷(假设正在运行磁盘仲裁),因此您可以跳过卸载步骤。

08-16 05:48