找不到redis服务器

问题描述 投票:0回答:1
  • 我正在开发适用于 Linux 的 Windows 子系统 (WSL)。
  • 我正在尝试运行一个依赖于 redis 包的 python 文件。当我运行 python 文件时,它会抛出如下错误:
Traceback (most recent call last):
  File "/home/sachinbm/RELEXI/env_relexi/lib/python3.10/site-packages/smartsim/config.py", line 146, in redis_exe
    exe = expand_exe_path(redis_cli)
  File "/home/sachinbm/RELEXI/env_relexi/lib/python3.10/site-packages/smartsim/config.py", line 52, in expand_exe_path
    raise SSConfigError(f"Could not locate executable {exe}")
smartsim.error.errors.SSConfigError: Could not locate executable /home/sachinbm/RELEXI/env_relexi/lib/python3.10/site-packages/smartsim/bin/redis-server

而 redis-server 二进制文件位于

/usr/bin/redis-server

所有文件 redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-rdb 均位于

/usr/bin

尝试访问 redis-server 二进制文件的代码是:

def redis_exe(self):
    try:
        redis_bin = self.conf["redis"]["bin"]
        redis_cli = osp.join(redis_bin, "redis-server")
        exe = expand_exe_path(redis_cli)
        return exe
    except KeyError:
        raise SSConfigError("Could not find redis.bin in SmartSim config")
    except SSConfigError as e:
        raise SSConfigError(
            "redis-server exe in SmartSim Config could not be used"
        ) from e

请让我知道如何消除此错误。我应该编辑 bashrc 还是配置文件?

python bash redis config redis-server
1个回答
0
投票

在Relexi的安装过程中,会要求你执行命令

smart --clobber
。此命令从
smartsim
期望的文件夹中删除 redis-server 二进制文件。随后,redis-server 二进制文件被安装在不同的位置。问题是
smartsim==0.3.2
和更高版本之间的文件夹结构发生了变化。 ENV 变量似乎没有正确分配。

所以,做:

pip install smartsim==0.3.2
smart --clobber # maybe avoid this line
smart --clean
smart --no_tf --no_pt -v
SMARTSIM_DIR=$(smart --site)
export PATH=$PATH:$SMARTSIM_DIR/bin # note that '_core/' was removed
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${SMARTSIM_DIR}/lib # note that '_core/' was removed

并继续安装。

但是,该问题与 Relexi 密切相关,您应该在 GitHub 页面上打开问题。如果不知道您正在尝试安装 Relexi,则很难找到问题。

© www.soinside.com 2019 - 2024. All rights reserved.