启动MongoDB时出现Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted

时间:2021-11-17 09:32:56

布置MongoDB数据库时,通过以下命令启动进程时出现以下错误提示:

[mongodb@InterFinance04 bin]$ ./mongod  --dbpath /home/mongodb/mongodb/replset/data   --replSet repset
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] MongoDB starting : pid=38806 port=27017 dbpath=/home/mongodb/mongodb/replset/data 64-bit host=InterFinance04
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] db version v3.2.7
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] git version: 4249c1d2b5999ebbf1fdf3bc0e0e3b3ff5c0aaf2
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] allocator: tcmalloc
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] modules: none
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] build environment:
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten]     distmod: rhel62
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten]     distarch: x86_64
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten]     target_arch: x86_64
2016-07-12T16:52:28.888+0800 I CONTROL  [initandlisten] options: { replication: { replSet: "repset" }, storage: { dbPath: "/home/mongodb/mongodb/replset/data" } }
2016-07-12T16:52:28.912+0800 E NETWORK  [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted
2016-07-12T16:52:28.912+0800 I -        [initandlisten] Fatal Assertion 28578
2016-07-12T16:52:28.912+0800 I -        [initandlisten] 

从红色的提示可以看出是因为/tmp/mongodb-27017.sock这个文件没有操作权限。

原因分析:

查看该文件情况如下:

启动MongoDB时出现Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted

可以看到这个文件的所有者是root用户,因为在准备环境的时候用的是root用户,而当时用root用户启动过一个没成功,后面修改配置文件过后用mongodb用户启动就出现了这个问题。

觖方法:

直接把该文件删除掉用Mongodb用户启动就行了。

可以看到这一次就是mongodb用户创建的文件了

启动MongoDB时出现Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted