我有一个运行Linux内核版本2.6的设备。我已将mongodb的Linux 32位二进制文件复制到/ usr / local / bin中。当我运行mongod时,我得到以下输出
./mongod: line 1: syntax error: unexpected "("
mongo的输出是
/usr/local/bin # ./mongo
./mongo: line 1:ELFPª: not found
./mongo: line 2: syntax error: unexpected ")"
谁能告诉我可能是什么问题?
答案 0 :(得分:3)
看起来二进制文件已损坏,或者它被shell解释而不是执行。如果我强制进行shell解释,我可以获得类似的输出:
$ sh /usr/bin/mongod
/usr/bin/mongod: 2: /usr/bin/mongod: E: not found
/usr/bin/mongod: 3: /usr/bin/mongod: �BA��RƄ,@�@@: not found
/usr/bin/mongod: 4: /usr/bin/mongod: Syntax error: ")" unexpected
/usr/bin/mongod: 1: /usr/bin/mongod: �P�x@�4�: not found
/usr/bin/mongod: 2: /usr/bin/mongod: E�@E��: not found
/usr/bin/mongod: 2: /usr/bin/mongod: cq�1A�A�: not found
/usr/bin/mongod: 1: /usr/bin/mongod: cannot create ��Q@�/�@8: Directory nonexistent
/usr/bin/mongod: 1: /usr/bin/mongod: ELF: not found
如果你担心它可能是一个损坏的下载,你可以咨询this list,其中包含每个MongoDB二进制版本(对于32位i686平台)的md5哈希值。或者,如果可能,您可以尝试通过包管理器安装MongoDB。
答案 1 :(得分:2)
我在32位ubuntu linux机箱上安装64位mongodb时遇到了同样的错误。当我安装32位软件包时,它就消失了。