1

我有一台运行 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 ")"

谁能告诉我可能是什么问题?

4

2 回答 2

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

如果您担心它可能是一个损坏的下载,您可以查阅这个列表,其中包含每个 MongoDB 二进制版本(针对 32 位 i686 平台)的 md5 哈希值。或者,如果可能,您可以尝试通过包管理器安装 MongoDB。

于 2012-08-20T22:06:00.007 回答
2

我在 32 位 ubuntu linux 机器上安装 64 位 mongodb 时遇到了同样的错误。当我安装 32 位软件包时它消失了。

于 2014-04-07T17:16:31.853 回答