从redis的安装和配置看linux的服务

本文的目的在于通过实例进一步了解linux的服务相关的知识

本文编写所处的环境:Ubuntu 16.04 Redis 2.8.24

  1. redis的安装
    建议使用源码安装
cd /home/squirrelchen/Downloads   # squirrelchen用户目录下的下载文件夹,通常在此文件夹下载安装程序包
wget http://download.redis.io/releases/redis-2.8.24.tar.gz #下载redis的源码编译包
sudo cp redis-2.8.24.tar.gz /usr/local/redis         #移动到/usr/local/redis 通常安装安装的路径 由于/usr/local 访问需要权限 因此加sudo 
sudo tar -vzxf redis-2.8.24.tar.gz  #解压缩文件夹
cd redis-2.8.24.tar.gz   #进入redis文件夹
make                           #make编译 
sudo make prefix=/usr/local/redis install #安装到/usr/local/redis
  1. redis的运行和测试
cd /usr/local/redis    # 切换到安装目录
./redis-server        # 运行redis-server 
redis-cli            #运行redis-cli
#测试redis
redis> set foo bar
OK
redis> get foo
"bar"
  1. redis设置为系统服务并自启动
sudo cp /home/squirrelchen/Downloads/redis-2.8.24/utils/redis_init_script /etc/init.d #移动redis启动脚本并放到/etc/init.d/目录下 此目录通常存放都是系统服务
cd /etc/init.d 
sudo mv redis_init_script redis_6379 # 重命名为redis_端口号 (可自定义端口号,在配置文件中配置)
sudo vim redis_6379 #vim编辑此文件
#需要更改的配置如下(其实参照官方给的文件,改动并不是很大,甚至几乎不用改,此处提出来,只是让人明白,最重要的最主要的都有那些配置项)

REDISPORT=6379                    #端口号
EXEC=/usr/local/bin/redis-server  #redis-server路径
CLIEXEC=/usr/local/bin/redis-cli  #redis-cli路径
PIDFILE=/var/run/redis_${REDISPORT}.pid #pid文件路径
CONF="/etc/redis/${REDISPORT}.conf"  #redis-配置文件路径
#保存此文件并离开 以上是配置自启动的文件
参照以上的配置 建立/etc/redis/
sudo mkidr /etc/redis 
cd /etc/redis 
sudo cp /home/squirrelchen/Downlaods/redis-2.8.24/redis.conf 6379.conf #移动配置文件到此处
sudo vim 6379.conf 
# 改一下配置项
daemonize yes   #开启守护进程
pidfile /var/run/redis_6379.pid #pid文件路径
loglevel debug         # 默认静默模式,为了方便调试,我开了debug模式
logfile /var/log/redis.log #log日志存放处

#以上改完之后保存退出

#注意,Ubuntu16.04不支持了chckconfig取而代之的是sysv-rc-conf 
sudo apt-get install sysv-rc-conf sysv-rc #安装sysv-rc-conf
sudo sysv-rc-conf #查看系统服务
sudo upadte-rc.d redis_6379 defaulats #加入系统自启动服务
sudo reboot # 重启
redis-cli #连接redis 

  1. linux的服务安装和配置流程
    5.1 wget 下载服务的源代码
    5.2 tar 解压缩压缩包
    5.3 cd 文件夹或者 cd 到 bin/ 或者 cd 到 src/
    5.4 使用make编译 (编译之前可以试试用configure测试编译环境,如果缺少依赖,就会提示,安装好依赖包)
    5.6 使用make install 安装 prefix=/usr/local/xxx 通常指定安装到此处,使得所有用户都可以看到并运行该服务
    5.7 cp 该服务的启动脚本文件到/etc/init.d/xxx 目录下 并拷贝此服务的配置文件到/etc/xxx 下 编辑合适的配置项
    5.8 sudo update-rc.d xxxx defaults 加入到系统自启动服务项中
    5.9 sudo reboot 重启
    5.10 sudo sysv-rc-conf 查看系统服务

  2. 深入理解linux的服务相关
    6.1 系统的服务命令之chkconfig
    查看系统上所有的服务(不等于正在运行的服务)

sudo apt-get install chkconfig 
sudo yum install chkconfig  # 安装chkconfig

chkconfig / chkconfig --list #系统上运行的服务

查看某一个服务的状态

chkconfig --list service-name #查看某一个服务状态

服务运行所处的级别
0 关机
1 单用户
2 无网络环境的多用户
3 有网络环境的多用户
4 系统未使用
5 桌面环境
6 重启

设置某一服务在某一级别的运行状态

sudo chkconfig --levels/level xxx service-name on/off/reset/

新增服务

1. 需要把init脚本拷贝到 /etc/init.d/ 目录下
2. 需要在运行脚本中 写入 \# chkconfig 运行级别 开启优先级 关闭优先级
3. sudo chkconfig --add service-name 

删除服务

sudo chkconfig --del service-name
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章