AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 35293
Accepted
Darryl Hein
Darryl Hein
Asked: 2009-07-03 12:51:28 +0800 CST2009-07-03 12:51:28 +0800 CST 2009-07-03 12:51:28 +0800 CST

OSX Cron 导致以下错误:Could not setup Mach task special port 9: (os/kern) no access

  • 772

任何想法如何解决出现在 Mac OSX system.log 文件中的错误?甚至错误意味着什么?

我有以下每分钟运行的 cron 作业:

* * * * * cd /Library/[...]/report/ && nice -n 15 /usr/local/php5/bin/php -f report_generator.php > /dev/null 2>&1

在互联网上搜索提到评论 cron 工作,但在我的事业中,我不能这样做。谷歌的大多数搜索结果也没有明确提及错误的实际含义。

完整的错误是:

Jul  2 14:50:00 xserve2 com.apple.launchd[1] (0x10c3f0.cron[46328]): Could not setup Mach task special port 9: (os/kern) no access

Mac OSX 10.5

mac-osx-server mac-osx
  • 3 3 个回答
  • 2817 Views

3 个回答

  • Voted
  1. Best Answer
    Chealion
    2009-07-03T21:28:48+08:002009-07-03T21:28:48+08:00

    我知道这不能完全解决原始问题,但希望能告诉我们问题是错误launchd还是其他问题。

    您是否尝试过删除该cron工作并将其重新设置为适当的launchd工作?launchd应该运行这些cron作业,但听起来你可能遇到了一个错误。

    如果您愿意,可以launchd使用诸如Lingon 之类的 GUI创建作业,而不是自己制作 .plist。

    示例 .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>Label</key>
        <string>test.dood.123</string>
        <key>ProgramArguments</key>
        <array>
            <string>cd</string>
            <string>/Library/REMOVED/DIRS/report/</string>
            <string>&amp;&amp;</string>
            <string>nice</string>
            <string>-n</string>
            <string>15</string>
            <string>/usr/local/php5/bin/php</string>
            <string>-f</string>
            <string>report_generator.php</string>
            <string>&gt;</string>
            <string>/dev/null</string>
            <string>2&gt;&amp;1</string>
        </array>
        <key>StartInterval</key>
        <integer>60</integer>
    </dict>
    </plist>
    

    从我的谷歌搜索来看,这听起来像是launchd运行cron作业的错误。来源:1

    StartInterval将简单地从上次运行作业时开始运行它几秒钟。 StartCalendarInterval将允许您在设定的时间运行它,而不是<key>StartInterval</key>上面示例中的使用以下内容:

    仅在凌晨 3:15 运行

     <key>StartCalendarInterval</key>
     <dict>  
         <key>Hour</key>
         <integer>3</integer>
         <key>Minute</key>
         <integer>15</integer>
    </dict>
    

    每 5 分钟运行一次 - 带有数组的 StartCalendarInterval。(我不知道有更好的方法来写这个,所以我希望有人能详细说明一下)

     <key>StartCalendarInterval</key>
     <array>
         <dict>
             <key>Minute</key>
             <integer>0</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>5</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>10</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>15</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>20</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>25</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>30</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>35</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>40</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>45</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>50</integer>
         </dict>
         <dict>
             <key>Minute</key>
             <integer>55</integer>
         </dict>
     </array>
    

    有关更多信息,请查看launchd和手册页文档中的从 cron 迁移部分

    • 2
  2. Jan Cobb
    2009-10-09T23:05:05+08:002009-10-09T23:05:05+08:00

    系统日志中的条目似乎是由启动应用程序本身创建的,cron 作业的(子)子进程在括号中。该条目与任何特定的 cron 作业无关,但在任何 cron 作业运行的每次情况下都会发生:我有每天运行一次的作业和每 5 分钟运行一次的作业,带有日志条目(无法设置 Mach 任务特殊端口9: (os/kern) no access ) 在每一个场合。问题必须是运行 cron 作业的过程的一部分(该 cron 作业的外部),并且可能在作为 cron 进程一部分的 lib 文件之一中找到,例如 '/System/Library/Frameworks/例如,CoreFoundation.framework/Versions/A/CoreFoundation'。该问题不太可能是 launchd 的一部分,因为它仅在调用 cron 时发生。

    尽管可能很复杂,但在允许作业运行的同时停止日志条目的最佳方法是切断中间人 - cron - 并直接从 launchd 运行作业。如何实现这一点的例子很多(见上文)!

    • 1
  3. k3ri
    2009-07-03T13:10:37+08:002009-07-03T13:10:37+08:00

    达里尔,

    在不知道该脚本的作用(或它是谁)的情况下,我建议您首先尝试以该用户身份从命令行运行它。

    副手,它似乎是一个权限的事情。你能提供更多信息吗?

    更多搜索显示了关于该主题的两个论坛主题:

    http://discussions.apple.com/thread.jspa?threadID=1224189&start=0&tstart=0

    http://discussions.apple.com/thread.jspa?messageID=5666826砊

    希望有帮助!

    • 0

相关问题

  • Mac OS X 多用户瘦客户端服务器(终端服务器)?

  • 有没有办法让 OSX 使用更多的 RAM 和更少的交换?

  • Mac OS X 上有哪些有用的命令行命令?

  • emond 进程以 100% 运行

  • 使用 Mac OS X Server 电子邮件和日历

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve