Centos
多個 Memcached 伺服器 /etc/init.d 啟動腳本有效嗎?
我通過源安裝了 memcached 伺服器,並且可以為 1 個 memcached 伺服器實例安裝標準啟動腳本,但是通過 google 嘗試了幾個腳本,找不到一個可以管理多個 memcached 伺服器實例在啟動時自動啟動的腳本。我已經嘗試了這兩個腳本,但都不起作用, service memcached start 只是返回到命令提示符,沒有啟動 memcached 伺服器實例
- lullabot.com/articles/installing-memcached-redhat-or-centos
- addmoremem.blogspot.com/2010/09/running-multiple-instances-of-memcached.html
然而,這個 bash 腳本可以工作,但在啟動時不會啟動 memcached 實例?
#!/bin/sh case "$1" in start) /usr/local/bin/memcached -d -m 16 -p 11211 -u nobody /usr/local/bin/memcached -d -m 16 -p 11212 -u nobody ;; stop) killall memcached ;; esac
作業系統:Centos 5.5 64bit Memcached = v1.4.5 Memcache = v2.2.5
任何人都可以將我指向一個有效的 /etc/init.d/ 啟動腳本來管理多個 memcached 伺服器?謝謝
編輯:謝謝墊子,這是最終工作的程式碼
#!/bin/sh # chkconfig: - 80 12 # description: The memcached daemon is a network memory cache service. # processname: memcached BIN=/usr/local/bin/memcached USER=nobody CON=2048 THREADS=4 $BIN -d -m 16 -p 11211 -c $CON -t $THREADS -u $USER $BIN -d -m 16 -p 11212 -c $CON -t $THREADS -u $USER case "$1" in start) $BIN -d -m 16 -p 11211 -c $CON -t $THREADS -u $USER $BIN -d -m 16 -p 11212 -c $CON -t $THREADS -u $USER ;; stop) killall $BIN ;; esac
要向 chkconfig 添加服務,您通常需要在 shell 腳本的 shebang 下方添加一些特殊註釋:
#!/bin/sh # chkconfig: - 55 45 # description: The memcached daemon is a network memory cache service. # processname: memcached
將行添加到 /etc/init.d/memcached 後,您可以發出
chkconfig --add memcached
當然,程序可以從其他執行級別開始,以便檢查您是否會發出
chkconfig --list | grep "memcached"
memcached 的常見執行級別是
chkconfig --level 345 memcached on