【发布时间】:2014-03-01 00:20:10
【问题描述】:
我在 Windows XP 32 位主机上的 VirtualBox 中运行 turnkey-node (Debian Wheezy) 设备。
在 Debian 客户机中,我做了一些修改,以便它运行我自己的 NodeJS 应用程序,而不是默认的。
我还修改了示例 run.sh 脚本,使其不再直接运行 node,而是运行 script 命令,该命令又运行 node,这样我就可以将其输出记录到文件并欺骗节点认为它正在使用 TTY 以便在日志输出中保留颜色转义序列,如 here、here 和 here 所讨论的。
这一切都很好,除非需要关闭 nodejs 服务——script、sh 和 node 进程在服务停止后都继续存在。
任何想法为什么会发生这种情况?我猜包含的nodejs init script 不打算像这样使用,但我不知道改变它来解决这个问题的第一件事。
以下是我提到的更改:
- 修改
/etc/default/nodejs指向我自己的应用程序的run.sh -
修改
run.sh,如下所示:#!/bin/sh cd `dirname $0` script -qfc "node server.js" server.log
为了让 nodejs 与 VirtualBox 共享文件夹功能一起工作,还有一些小的修改,但我认为这不是重点。
【问题讨论】:
-
好吧,你可以使用
kill命令,但它可能不是推荐的方式。 -
我链接到包含的初始化脚本,它本身使用
kill,但也许不是kill是对的吗?