折腾:
期间,发现:
systemctl restart mongod
错误依旧,且:
systemctl stop mongod
systemctl start mongod
并没有真正去启动mongod,因为:
错误还是一样的:
tail -n 40 /var/log/mongodb/mongod.log 2018-04-10T13:59:39.695+0800 I NETWORK [initandlisten] getaddrinfo(" 112.4.64.141") failed: Name or service not known 2018-04-10T13:59:39.695+0800 E NETWORK [initandlisten] listen(): socket is invalid. 2018-04-10T13:59:39.695+0800 E STORAGE [initandlisten] Failed to set up sockets during startup. 2018-04-10T13:59:39.695+0800 I CONTROL [initandlisten] dbexit: rc: 48
根本没有调用更新后的conf文件。。。
而在:
的后续折腾中,也发现了类似的问题:
用service 也还是无法启动或重启mongod
去看看sock文件,貌似没问题:
[root@xxx-general-01 ~]# ll /tmp/mongodb-32018.sock srwx------ 1 mongod mongod 0 Apr 10 13:59 /tmp/mongodb-32018.sock
难道是也是有问题:
因为此处的权限中,作为root组的root用户,对于上述的sock文件是没有访问权限的
因为上述的权限是:srwx———
other group是连读取权限都没有的
后来好像是:
此处的mongod的服务,是作为mongod的组和用户,去在开机时启动的,可以正常启动的
此处,远程用ssh作为root用户登录进来后,是root用户,无法启动属于mongod:mongod的服务mongod?
但是是可以借用mongod的用户去启动mongod的:
sudo -u mongod mongod -f /etc/mongod.conf
另外后来发现也是可以通过:
sudo -u mongod systemctl stop mongod
不过需要输入root的密码才可以 -》 因为运行systemctl需要管理员权限
搜:
root user can not start mongod