我在ubuntu 16.04上安装了Redis服务器。但是当我尝试使用
启动redis服务时$ sudo systemctl start redis
我收到消息:
Failed to start redis.service: Unit redis-server.service is masked.
我对这个错误一无所知。
我找到了解决方案。我认为这对其他人会有帮助 | systemctl 取消屏蔽服务名称
$ sudo systemctl unmask redis-server.service
如果目录路径中缺少 redis.service 文件
/etc/systemd/system/redis.service
所以我们必须使用以下命令在该目录中创建文件:
sudo nano /etc/systemd/system/redis.service
并写下以下内容
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
[Install]
WantedBy=multi-user.target
这里
然后使用
创建redis用户组和目录sudo adduser --system --group --no-create-home redis
sudo mkdir /var/lib/redis
(创建目录)sudo chown redis:redis /var/lib/redis
(更改所有者权限)sudo chmod 770 /var/lib/redis
运行服务
sudo systemctl start redis
它将正常工作并使用 检查状态
sudo systemctl status redis
对于 Ubuntu 用户运行
sudo systemctl restart redis-server
1.
sudo systemctl unmask redis-server.service
如果目录路径中缺少 redis.service 文件
/etc/systemd/system/redis.service
,所以我们必须使用如下命令在该目录中创建文件:
sudo nano /etc/systemd/system/redis.service
并写下以下内容
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
[Install]
WantedBy=multi-user.target
然后使用创建redis用户组和目录
sudo adduser --system --group --no-create-home redis
sudo mkdir /var/lib/redis (Create directory)
sudo chown redis:redis /var/lib/redis (Change owner permission)
sudo chmod 770 /var/lib/redis
运行服务
sudo systemctl start redis
它将正常工作并使用检查状态
sudo systemctl status redis
你可以跑
sudo systemctl 重新启动 redis-server
或
sudo service redis-server restart(如果您使用的是 WSL)
你必须运行代码
sudo systemctl daemon-reload