저는 서버를 상속 받았으며 이상한 문제가 있습니다. 메시지를 반환하지 않은 forever start server.js
을 실행할 때 문제가 발생했습니다. 그리고 나서 forever list
은 영원히 실행중인 프로세스를 표시하지 않았습니다. 일부 파고 들자 마자 나는 어떤 사람들은 영원히 sudo
으로 달릴 것을 제안했다.영원히 server.js를 중지하면 "server.js가 영원히 프로세스에 유효한 인덱스가 아닙니다."가 반환됩니다.
sudo forever start server.js
을 실행 한 후에는 정상적으로 작동하는 것처럼 보였습니다. forever list
은 server.js가 실행 중임을 보여줍니다. 그러나 이제는 그 과정을 멈출 수 없습니다. kill
을 실행하면 top
에 표시된 목록에서 노드가 제거되지만 Forever는 여전히 server.js를 실행중인 것으로 봅니다. sudo forever stop server.js
을 실행하면 "server.js는 영원히 사용할 수있는 프로세스의 올바른 인덱스가 아닙니다."라는 오류를 반환합니다. sudo forever stopall
또는 sudo forever list
반환 아무리 내가 뭘
node.js:63
throw e;
^
TypeError: Cannot call method 'replace' of undefined
at Argv (/usr/local/lib/node/.npm/optimist/0.1.2/package/lib/optimist.js:38:33)
at Object.<anonymous> (/usr/local/lib/node/.npm/forever/0.3.0/package/bin/forever:81:26)
at Module._compile (node.js:462:23)
at Module._loadScriptSync (node.js:469:10)
at Module.loadSync (node.js:338:12)
at loadModule (node.js:283:14)
at require (node.js:411:14)
at Object.<anonymous> (/usr/local/bin/forever:11:18)
at Module._compile (node.js:462:23)
at Module._loadScriptSync (node.js:469:10)
실행, 나는 server.js를 중지 할 수 없습니다. 영원히 사명이 조금 지나치게 과열 된 것 같습니다. 어떤 제안?
이것은 영원히 프로세스를 루트 프로세스로 시작하기 때문에 효과가있었습니다. 실제로'ps aux | 영원히 grep | grep -v grep' 명령 프롬프트에서 프로세스의 소유자가 루트임을 알 수 있습니다. root 만 프로세스를 시작/중지 할 수 있습니다. – verybadalloc
알겠습니다. 나는'sudo '로 실행하는 것이 같은 방식으로 동작 할 것이라고 생각했다. 나는 내가 따라갈 때 이것을 알아 내고있어, 나는 그 설명을 고맙게 생각한다. 여전히 영원히 stop server.js를 유효한 명령으로 받아들이지 않는 이유를 설명하지 못합니다. 왜 그럴지 모른다고 생각 해요? – Mrweiner
'ps aux |의 출력의 마지막 열의 값은 얼마입니까? grep 'server.js'| grep -v grep'? – verybadalloc