從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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章