Macos 在OS X上使用hdiutil分离卷时出错
我有一个在Mac OS 10.5.8上运行的程序。程序运行一个连续的循环,在这个循环中,它装载一个映像,安装一个浏览器插件,然后再次卸载映像。如果我让这个程序继续运行,我最终会遇到以下错误“fork:resource temporary unavailable”。在活动监视器中,我可以看到数百个名为diskimages helper的进程正在运行。有人知道为什么会发生这种情况,以及我如何避免这种情况吗?下面是我在程序的一个周期中使用的命令Macos 在OS X上使用hdiutil分离卷时出错,macos,terminal,volume,detach,Macos,Terminal,Volume,Detach,我有一个在Mac OS 10.5.8上运行的程序。程序运行一个连续的循环,在这个循环中,它装载一个映像,安装一个浏览器插件,然后再次卸载映像。如果我让这个程序继续运行,我最终会遇到以下错误“fork:resource temporary unavailable”。在活动监视器中,我可以看到数百个名为diskimages helper的进程正在运行。有人知道为什么会发生这种情况,以及我如何避免这种情况吗?下面是我在程序的一个周期中使用的命令 # First I remove the plugin
# 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助手进程来处理它。请注意,
hdiutil detach
将负责为您卸载卷(前提是正在运行磁盘仲裁),因此,您可以跳过卸载步骤。您正在重复安装同一个浏览器插件?该程序还做了一些其他事情,使其变得有用:)它下载了不同版本的插件,并运行了一些测试。为了得到答案,我将试一试。(很难说它是否有效,因为问题有时需要几天才能显现出来,并不是每个周期都会增加一个diskimages过程)嘿,戈登,我终于有时间尝试你的建议了,这似乎是有效的:)谢谢。mount
是attach
的同义词,但unmount
不是detach
的同义词,这是非常不幸的。这把我绊倒了,慢慢地用磁盘*
条目填充/dev
,最终导致无可安装文件系统
错误。重新启动以清除/dev/disk*
条目,并使用附加
/分离
代替装载
/卸载
似乎解决了问题。