【问题标题】:Mac OS X terminal killall won't kill running processMac OS X终端killall不会杀死正在运行的进程
【发布时间】:2009-03-28 09:56:15
【问题描述】:

我有一个正在运行的 lighttpd 实例。当我执行“ps -axc”时,进程被列为

"614 ?? 0:00.15 lighttpd"

但是当我执行“killall lighttpd”时,我得到了

No matching processes belonging to you were found

我使用的是 Mac OS X 10.5.6。我有什么遗漏吗?

【问题讨论】:

    标签: macos terminal


    【解决方案1】:

    根据其他回复,如果不是您的流程,如果您是管理员,请在前面加上 sudo。如果没有,你可能会倒霉。

    另外,请尝试sudo killall -9 lighttpd,它发送特定信号 KILL 而不是 TERM。

    只是为了确保您也可以使用 PID 尝试sudo kill -9 614

    【讨论】:

    • 好的,做到了。发生的事情是我创建了一个 lighttpd.plist 并将其添加到 /library/launchdaemons,然后使用 launchctl 加载它。它在 root 而不是我的用户帐户下运行。它正在杀死 proc,但立即被重新加载。
    【解决方案2】:

    任务是否写在ps aux列表中的括号中?如果是这样,它就是一个僵尸,它正在等待一些 I/O 任务,它可能永远不会完成。据我所知,你不能杀死它。

    【讨论】:

      【解决方案3】:

      它属于你吗?如果你这样做了

      ps aux | grep lighttpd
      

      这将为您提供与该进程关联的用户 ID(我猜它是 chowned 给另一个用户)

      【讨论】:

        【解决方案4】:

        有效:killall -u root -c lighttpd

        【讨论】:

          猜你喜欢
          • 2012-03-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-15
          • 2016-01-10
          • 2013-07-17
          • 1970-01-01
          • 2013-08-26
          相关资源
          最近更新 更多