命令在 upstart 会话作业中执行失败

命令在 upstart 会话作业中执行失败

此命令:

mongod --fork --dbpath ../data --smallfiles --logpath ../data/mongo.log

从终端完美运行,而在目录中/mongo/bin/

但是,当我对 upstart 会话作业文件 (at $HOME/.config/upstart) 使用相同的命令和目录时:

# mongod_service - mongoDB job file
description "MongoDB service"
author "admin"

# When to start the service
start on runlevel [2345]

# When to stop the service
stop on runlevel [016]

# Automatically restart process if crashed
# respawn

# Essentially lets upstart know the process will detach itself to the background
expect fork

# working directory
chdir /mongo/bin/

# log this job
console log

# Start mongod as daemon
exec /mongo/bin/mongod --fork --dbpath /mongo/data --smallfiles --logpath /mongo/data/mongo.log

更新: 更改了作业文件并且现在启动正常,但是当我尝试用 停止它时initctl stop mongod-service,命令永远不会完成!。

有人能建议如何让它工作吗?

答案1

即使您使用的是从 Git 构建的 MongoDB 版本,您仍然可以重用官方的 upstart 配置文件:

https://github.com/mongodb/mongo/blob/master/debian/mongod.upstart

并按要求进行更新。

相关内容