Linux 下安装 Redis ,并以非root用户启动 (新版本)

一、下载Redis   

     https://redis.io/download   将软件包上传到/data下

二、查看gcc的版本是否在 5.3以上

# gcc -v

     版本是4.8.5  ,需要升级

Linux 下安装 Redis ,并以非root用户启动 (新版本)_第1张图片

 

三、升级gcc版本

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
#长期生效
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

然后重启linux后再次查询gcc版本 : gcc -v

Linux 下安装 Redis ,并以非root用户启动 (新版本)_第2张图片

版本升级为9.3.1

四、解压软件包       

# cd /data/
# tar -zxvf redis-6.0.6.tar.gz 

五、进入redis    

#cd /data/redis-6.0.6

 

Linux 下安装 Redis ,并以非root用户启动 (新版本)_第3张图片

     输入编译代码   

# make

六、以其它用户启动redis

#新增用户组
groupadd admin
 #新建用户hm并加入admin组中,并禁止登录 
useradd -M hm -g admin -s /sbin/nologin

在/home 下创建目录hm

 在/home/hm 下创建目录 redis 、 run

# mkdir -p /home/hm/run  #创建run目录
# mkdir -p /home/hm/redis  #创建redis目录
# chown -R hm:admin /home/hm  #将用户hm目录下的所有文件所属者与所属组修改为hm:admin

将redis的配置文件redis.conf复制一份到hm用户的redis目录下

然后编辑redis.conf

$ vim /home/hm/redis/redis.conf  #编辑redis配置文件变更以下内容
将`pidfile /var/run/redis.pid`修改为`pidfile /home/hm/run/redis.pid`
将`dir ./`修改为`dir /home/hm/redis`
logfile "/var/log/redis/redis.log"

bind 127.0.0.1  改成服务器的IP 

daemonize yes (这里讲原来的no改为yes,目的是为了设置后台运行) 

protected-mode no (这里讲原来的yes改为no,目的是为了解决安全模式引起的报错) 

# requirepass foobared 去掉# 新增密码如123456

创建日志文件,并赋权

# mkdir /var/log/redis/   

# echo "" >> /var/log/redis/redis.log

chmod -R 777 /var/log/redis/redis.log 

修改redis目录权限及用普通用户启动redis服务


chown -R hm:admin /data/redis-6.0.6
[root@iZhvmhzrrp5eocZ ~]# su hm
bash-4.2$ /data/redis-6.0.6/src/redis-server /home/hm/redis/redis.conf 
bash-4.2$ exit
exit

查询redis是否以用户hm启动

# ps -ef|grep redis

关闭redis

# su hm
bash-4.2$ /data/redis-6.0.6/src/redis-cli -h 127.0.0.1 -p 6379 -u 123456 shutdown
Invalid URI scheme
bash-4.2$ exit

PS:

1 .在切换用户时报错 “This account is currently not available.”

# su hm

将“/sbin/nologin”改成“/bin/bash”
# vim /etc/passwd

hm:x:1001:1001::/home/hm:/bin/bash

修改完毕后,保存退出

然后su hm就可以进去了

 2. 开机自启动

    编辑rc.local 

vim /etc/rc.local 
写入下面的代码

sudo -u hm /data/redis-6.0.6/src/redis-server /home/hm/redis/redis.conf 2>/dev/null

 

你可能感兴趣的:(服务器)