我在debian服务器上的socket.io中有一个脚本。我永远安装了Nodemon。
当我使用Nodemon或Forever启动脚本时,它可以很好地工作。但是,当我在Linux服务中推动此命令时,它会失败。
在这里我的服务:
[Unit]
Description=Chat
[Service]
WorkingDirectory=/var/www/mysite/web
ExecStart=/usr/bin/forever start /var/www/mysite/web/server.js
Restart=always
RestartSec=500ms
User=www-data
Group=www-data
[Install]
WantedBy=multi-user.target
当我检查journalctl时,我有一个错误:
Error: EACCES: permission denied, open '/var/www/.forever/YEAA.log'
在这里完全错误:
déc. 27 13:45:05 vps32913 forever[7558]: warn: --minUptime not set. Defaulting to: 1000ms
déc. 27 13:45:05 vps32913 forever[7558]: warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
déc. 27 13:45:05 vps32913 forever[7558]: info: Forever processing file: /var/www/mysite/web/server.js
déc. 27 13:45:05 vps32913 forever[7558]: fs.js:646
déc. 27 13:45:05 vps32913 forever[7558]: return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
déc. 27 13:45:05 vps32913 forever[7558]: ^
déc. 27 13:45:05 vps32913 forever[7558]: Error: EACCES: permission denied, open '/var/www/.forever/YEAA.log'
déc. 27 13:45:05 vps32913 forever[7558]: at Object.fs.openSync (fs.js:646:18)
déc. 27 13:45:05 vps32913 forever[7558]: at Object.forever.startDaemon (/usr/lib/node_modules/forever/lib/forever.js:460:14)
déc. 27 13:45:05 vps32913 forever[7558]: at /usr/lib/node_modules/forever/lib/forever/cli.js:319:15
déc. 27 13:45:05 vps32913 forever[7558]: at /usr/lib/node_modules/forever/lib/forever/cli.js:162:5
déc. 27 13:45:05 vps32913 forever[7558]: at /usr/lib/node_modules/forever/lib/forever.js:412:11
déc. 27 13:45:05 vps32913 forever[7558]: at FSReqWrap.oncomplete (fs.js:152:21)
也许永远无法访问.forever文件夹?
您可以尝试这样的chmod吗?
chmod 644 /var/www/.forever
编辑
如果它不起作用,则可能应该启动forever
作为root用户
也许有这样的东西?
[Service]
...
User=root
Group=root
希望它有帮助。