启动后无法打开PID文件varrunmongodbmongod.pid(还没有)。符号链接层数太多,MongoDB Centos 7。

问题描述 投票:0回答:1

我在centos 7上安装了mongodb,但我无法用systemctl.Running启动服务。mongod 启动成功。

我按照这里的所有说明进行了安装。https:/mongoing.comdocstutorialinstall-mongodb-on-red-hat.html。

systemctl status mongod 返回如下。

* mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/mongod.service.d
           `-override.conf
   Active: failed (Result: timeout) since Sun 2020-05-03 14:58:02 CEST; 4min 27s ago
     Docs: https://docs.mongodb.org/manual
  Process: 528 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS)
  Process: 525 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 522 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 519 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)

May 03 14:56:32 zakazise systemd[1]: Starting MongoDB Database Server...
May 03 14:56:32 zakazise mongod[528]: about to fork child process, waiting until server is ready for connections.
May 03 14:56:32 zakazise mongod[528]: forked process: 530
May 03 14:56:34 zakazise systemd[1]: Can't open PID file /var/run/mongodb/mongod.pid (yet?) after start: Too many levels of symbolic links
May 03 14:58:02 zakazise systemd[1]: mongod.service start operation timed out. Terminating.
May 03 14:58:02 zakazise systemd[1]: Failed to start MongoDB Database Server.
May 03 14:58:02 zakazise systemd[1]: Unit mongod.service entered failed state.
May 03 14:58:02 zakazise systemd[1]: mongod.service failed.

在varlogmongodbmongod.log中有一行我认为很重要。

2020-05-03T14:58:02.210+0200 I  CONTROL  [signalProcessingThread] got signal 15 (Terminated), will terminate after current cmd ends

etcsystemdsystemmulti-user.target.wantsmongod.log中有一行我认为很重要的内容: etcmongod.conf:

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.


#security:

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

etcsystemdsystemmulti-user.target.wantsmongod.service。

[Unit]
Description=MongoDB Database Server
Documentation=https://docs.mongodb.org/manual
After=network.target

[Service]
User=mongod
Group=mongod
Environment="OPTIONS=-f /etc/mongod.conf"
EnvironmentFile=-/etc/sysconfig/mongod
ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb
ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb
ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb
ExecStart=/usr/bin/mongod $OPTIONS
PermissionsStartOnly=true
PIDFile=/var/run/mongodb/mongod.pid
Type=forking
# 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 for mongod as specified in
# http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings

[Install]
WantedBy=multi-user.target

我没有修改mongod.conf和mongod.service中的任何内容。这是一个完全全新的安装。

我试过的步骤。

 touch /var/run/mongodb/mongod.pid 
 chown mongod:mongod/var/run/mongodb/mongod.pid
  • 我检查了所有有mongo的路径,它们都有正确的权限。(mongod:mongod)
  • 检查SELinux是否被禁用。
  • 在ufw中允许27017。

编辑

varrunmongodb有每个rwx。

我以root身份登录

mongodb centos7
1个回答
0
投票

这两个路径是不同的。

May 02 21:53:44 zakazise systemd[1]: Can't open PID file /var/run/mongodb/mongod.pid (yet?) after start: Too many levels of symbolic links

pidFilePath: /var/run/mongo/mongod.pid  # location of pidfile
© www.soinside.com 2019 - 2024. All rights reserved.