
我已經在我的 mac mini 伺服器上使用 Launchd 中的 Lingon 設定了 2 個使用者的 getmail。一個使用者的 getmail 運作良好,而另一個使用者的則不然。 launchd 條目的 plist 為:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>GroupName</key>
<string>staff</string>
<key>Label</key>
<string>org.intelmini.maggie-mail</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/bin/getmail</string>
</array>
<key>RootDirectory</key>
<string>/Users/maggie</string>
<key>ServiceDescription</key>
<string>Maggies getmail</string>
<key>StartInterval</key>
<integer>600</integer>
<key>UserName</key>
<string>maggie</string>
<key>WorkingDirectory</key>
<string>/Users/maggie</string>
</dict>
</plist>
我從 launchd 得到的錯誤是:
Jan 19 08:30:31 intelmini com.apple.launchd[1] (org.intelmini.maggie-mail[7928]): Bug: launchd_core_logic.c:4194 (24498):2
Jan 19 08:30:31 intelmini com.apple.launchd[1] (org.intelmini.maggie-mail[7928]): posix_spawn("/opt/local/bin/getmail", ...): No such file or directory
Jan 19 08:30:31 intelmini com.apple.launchd[1] (org.intelmini.maggie-mail[7928]): Exited with exit code: 1
然而該文件顯然存在:
intelmini:~ maggie$ ls -l /opt/local/bin/getmail
lrwxr-xr-x 1 root admin 71 10 Jan 08:42 /opt/local/bin/getmail -> /opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin/getmail
果然,當我以該使用者身分登入時,它可以從終端運行:
intelmini:~ maggie$ getmail
getmail version 4.22.2
Copyright (C) 1998-2009 Charles Cazabon. Licensed under the GNU GPL version 2.
SimplePOP3Retriever:[email protected]:110:
0 messages (0 bytes) retrieved, 124 skipped
是的,所以我不知道如何解決這個問題。運行 getmail 的兩個使用者都是管理員。