Ubuntu下Snap安装Redis Stack Server后无法修改配置文件怎么办?
在Ubuntu通过Snap安装Redis Stack Server及配置文件只读问题解决
安装步骤
- 更新系统包并安装redis工具:
sudo apt update sudo apt install redis-tools
- 本地安装Redis Stack Server的Snap包(替换
<snapname.snap>为实际的包文件名):
sudo snap install --dangerous --classic <snapname.snap>
- 创建并编辑systemd服务文件
/etc/systemd/system/redis-stack-server.service,填入以下内容:
[Unit] Description=Redis Stack Server After=network.target [Service] ExecStart=/usr/bin/snap run redis-stack-server Restart=always User=root Group=root [Install] WantedBy=multi-user.target
- 重载systemd配置并启动服务:
sudo systemctl daemon-reload sudo systemctl start redis-stack-server sudo systemctl enable redis-stack-server
解决配置文件只读问题
Snap包的文件系统默认是只读的,无法直接修改/snap/redis-stack-server/x1/opt/redis-stack/etc/redis-stack.conf,可以通过自定义外部配置文件的方式解决:
- 创建自定义配置目录并复制原配置文件:
sudo mkdir -p /etc/redis-stack sudo cp /snap/redis-stack-server/x1/opt/redis-stack/etc/redis-stack.conf /etc/redis-stack/
- 编辑自定义配置文件,修改需要的参数:
sudo nano /etc/redis-stack/redis-stack.conf
- 修改systemd服务文件,让Redis加载自定义配置:
编辑/etc/systemd/system/redis-stack-server.service,将ExecStart行替换为:
ExecStart=/usr/bin/snap run redis-stack-server /etc/redis-stack/redis-stack.conf
- 重新加载systemd配置并重启服务:
sudo systemctl daemon-reload sudo systemctl restart redis-stack-server
之后Redis Stack会使用你在/etc/redis-stack/redis-stack.conf中修改的配置,该目录属于系统可写区域,后续可以直接编辑修改。
内容的提问来源于stack exchange,提问作者vx2008
相关产品推荐
相关产品推荐

