我创建了一个
只要电脑显示屏处于开启状态,代理就可以按照广告所述工作,在指定时间打开磁盘映像并挂载其卷。另一方面,如果在启动代理指定的时间内显示器处于睡眠状态,则磁盘映像无法打开,直到显示器从睡眠中唤醒(即使是几个小时后),此时磁盘映像会立即打开并挂载其卷。如果我使用
如何让启动代理在显示器处于睡眠状态下打开磁盘映像并挂载其卷?
我使用的是运行OS X 10.8.2 Mountain Lion的MacBook Pro笔记本电脑。感谢您对这个问题的任何帮助。
launchd
代理,每天早上2:45开启一个无密码保护的稀疏磁盘映像(并挂载它的唯一卷),以便备份软件能够写入该卷。 launchd
代理的plist文件保存在~/Library/LaunchAgents/
中。以下是plist文件的参数:Label: my.DiskImageOpener
KeepAlive: NO
RunAtLoad: NO
StartCalendar:
Hour: 2
Minute: 45
ProgramArguments:
hdiutil
attach
/path/to/MyDiskImage.sparseimage
只要电脑显示屏处于开启状态,代理就可以按照广告所述工作,在指定时间打开磁盘映像并挂载其卷。另一方面,如果在启动代理指定的时间内显示器处于睡眠状态,则磁盘映像无法打开,直到显示器从睡眠中唤醒(即使是几个小时后),此时磁盘映像会立即打开并挂载其卷。如果我使用
open /path/to/MyDiskImage.sparseimage
命令替换hdiutil attacj /path/to/MyDiskImage.sparseimage
命令,或将该命令放置在单独的可执行shell脚本中,由启动代理执行,同样会出现这种现象。如何让启动代理在显示器处于睡眠状态下打开磁盘映像并挂载其卷?
我使用的是运行OS X 10.8.2 Mountain Lion的MacBook Pro笔记本电脑。感谢您对这个问题的任何帮助。
hdiutil
。这至少可以告诉您hdiutil
是否挂起,或者启动代理根本没有被调用。 - Celadaecho $(date)
调试命令(作为单独的可执行 shell 脚本),启动代理程序即使显示器处于睡眠状态也能正常执行它。因此,这似乎是一个启动代理程序在显示器睡眠时尝试打开磁盘映像的问题。感谢您提供的这两个有用的建议。我很高兴按照您的建议将其提交到 apple.stackexchange.com。 - scolfax