我一直在关注官方指南用于安装 mongodb 但它不会作为服务运行。当我尝试时
$ whereis mongod
mongod: /usr/bin/mongod /etc/mongod.conf /usr/share/man/man1/mongod.1.gz
但请远离启动服务的指南
$ sudo service mongod start
mongod: unrecognized service
答案1
貌似无法安装mongodb-org-服务器包裹如果你没有systemd即使 mongodb 文档上有关于安装后配置它的部分。为了使其工作,我从他们那里下载了软件包下载中心对于我的发行版,找到并分析了服务脚本。
ExecStart=/usr/bin/mongod --config /etc/mongod.conf
所以为了运行服务器只需确保您有来自您的文件夹mongod.conf和mongod.conf本身。您可能在安装失败后拥有这些文件,但即使没有,您也可以创建文件夹并获取mongod.conf从下载的存档中。默认情况下,它们是文件夹/var/lib/mongodb 和 /var/log/mongodb如果它们不存在并且位置不存在,请使用此命令创建它们mongod.conf是/etc/mongod.conf
sudo mkdir -p /var/log/mongodb /var/lib/mongodb
此外,您还必须确保正在运行的用户有访问文件夹的权限。如果这不是您当前的用户,请将该用户代替“whoami”
sudo chown `whoami` /var/lib/mongodb /var/log/mongodb/
现在您可以手动运行服务器
mongod --config /etc/mongod.conf
这是全部mongod.server如果有人感兴趣的话可以从存档中
[Unit]
Description=MongoDB Database Server
Documentation=https://docs.mongodb.org/manual
After=network-online.target
Wants=network-online.target
[Service]
User=mongodb
Group=mongodb
EnvironmentFile=-/etc/default/mongod
ExecStart=/usr/bin/mongod --config /etc/mongod.conf
PIDFile=/var/run/mongodb/mongod.pid
# file size
LimitFSIZE=infinity
# cpu time
LimitCPU=infinity
# virtual memory size
LimitAS=infinity
# open files
LimitNOFILE=64000
# processes/threads
LimitNPROC=64000
# locked memory
LimitMEMLOCK=infinity
# total threads (user+kernel)
TasksMax=infinity
TasksAccounting=false
# Recommended limits for mongod as specified in
# https://docs.mongodb.com/manual/reference/ulimit/#recommended-ulimit-settings
[Install]
WantedBy=multi-user.target
答案2
检查ls /etc/init.d/*mongo*
和的输出service --status-all
以找出确切的服务名称
你必须知道您的系统中使用了什么 init 系统。
谷歌搜索给你:
https://wiki.debian.org/Init#Determining_the_init_system
从您的链接(https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-debian/):
最新版本的 Linux 倾向于使用 systemd(使用 systemctl 命令),而旧版本的 Linux 倾向于使用 System V init(使用 service 命令)。
您可以通过发出以下命令来启动 mongod 进程:
sudo systemctl 启动 mongod