我已经在linux上安装了redis。但是,当我尝试启动redis-cli时,我会得到这个错误。
bash: redis-cli:命令找不到
文件redis-cli输出是
ELF 64位LSB可执行文件,x86-64,version 1 (SYSV),动态链接(使用共享库),用于GNU/Linux2.6.18,BuildIDsha1=0x5fe1c6d3da13df88f2ea826ac762f088c29b81d5,未剥离
发布于 2014-03-29 18:24:06
redis-cli似乎在这里,读着你的答案。用which redis-cli检查一下这个。
我已经在几台linux机器上安装了redis,通常情况下它运行非常顺利。我猜你遇到了一个特例。
以下是我的想法:
这可能是一个动态的联系问题。
所以用dump -H -X64 redis-cli检查头。在标头中,您可以看到它试图查找哪些共享对象。可能有一个共享对象从另一个包的方式,例如一个32位的只有一个。丑陋的,错误的,但这是经常发生的。
使用ldd运行时依赖项检查器查看这些标头在系统上的实际结果。当不存在时安装它。然后简单地运行ldd redis-cli。
现在你已经知道出了什么问题,你可以做几件事。
1)如果可能的话,删除冲突的包。
2)在启动进程之前,使用LIBENV环境变量设置共享对象的搜索路径
3)在编译/链接时使用-blibpath链接器选项来更改标题,为其提供一个不同的搜索路径。-bnolibpath也可以帮助你。
( 4)事后补标。这是有工具的。这通常不是首选的方法。
希望这有帮助,TW
编辑:
虽然make、make test和make install总是很好,但是服务器安装脚本install_server.sh总是有点错误。这一问题刚刚在2.8.8中得到了解决。我建议使用最新版本。
编辑2:
OP的问题被证明与动态链接无关,这是一个简单的路径问题。为了历史的目的,我保留原样的答案。
发布于 2014-03-31 07:40:51
我不知道原因是什么,但是当我使用以下命令运行时
/usr/local/bin/redis-cli它起作用了
但是,当我从/usr/local/bin/文件夹运行redis-cli时,我会得到错误信息。
bash: redis-cli: command not found看上去像是路径问题
发布于 2017-10-26 22:23:37
如果您是从源代码构建的,并且您位于包含源代码的默认redis-stable目录中,那么您应该能够通过运行以下命令启动cli:
./src/redis-cli
https://stackoverflow.com/questions/22730248
复制相似问题