Memcached 安装脚本(附服务器自启动)

一、目的

为简化Memcached快速安装部署,并添加至服务启动项,开机自启动。

二、脚本

2.1 github地址
github链接
2.2 脚本内容

#!/bin/bash
#mail:[email protected]
#function:auto install memcached
clear
echo "##########################################"
echo "#       Auto Install Memcached-1.4                          ##"
echo "#       Press Ctrl + C to cancel                                 ##"
echo "#       Any key to continue                                       ##"
echo "##########################################"
read -n 1
softdir="/software"
memcached_url="http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz"
libevent_url="https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz"
sys_version=$(rpm -q centos-release|cut -d- -f3)

sys_init() {
[ -f /etc/init.d/functions ] && . /etc/init.d/functions
[ ${sys_version} != "6" ] && echo "Please use centos6.x" && exit 1
[ $(id -u) != "0" ] && echo "Error: You must be root to run this script" && exit 1
sed -i "s/SELINUX=enforcing/SELINUX=disabled/"  /etc/selinux/config
setenforce 0
yum install -y gcc gcc-c++ wget
}

download_software() {
if [ ! -d ${softdir} ];then
    mkdir ${softdir} && cd ${softdir}
else
    cd ${softdir}
fi
for software_url in ${memcached_url} ${libevent_url}
do
    wget -c ${software_url}
    if [ $? -eq 0 ];then
        for software in `ls`
        do
            tar zxf $software -C /tmp
        done
    fi
done
}

install() {
cd /tmp/libevent-2.1.8-stable
./configure --prefix=/usr/local/libevent
make && make install
rm -rf /tmp/libevent-2.1.8-stable
echo "/usr/local/libevent/lib">/etc/ld.so.conf.d/libevent.conf
ldconfig

cd /tmp/memcached-1.4.0
./configure --with-libevent=/usr/local/libevent --prefix=/usr/local/memcached
make && make install
rm -rf /tmp/memcached-1.4.0
echo "export PATH=$PATH:/usr/local/memcached/bin">/etc/profile.d/memcached.sh && source /etc/profile.d/memcached.sh
}

start_server() {
cat >/etc/init.d/memcached-server<<EOF
#!/bin/bash
#auth:kaliarch
# memcached    Startup script for memcached processes
#
# chkconfig: - 90 10
# description: Memcache provides fast memory based storage.
# processname: memcached

. /etc/rc.d/init.d/functions

memcached="/usr/local/memcached/bin/memcached"
prog="memcached"
port=11211
user=nobody
mem=20
lockfile=\${LOCKFILE-/var/lock/subsys/memcached}
pidfile=\${PIDFILE-/tmp/memcached.pid}
getpid=\$(pidof memcached)
start() {
    action $"Starting \$prog: " /bin/true
    # Starting memcached with 64MB memory on port 11211 as deamon and user nobody
    \$memcached -d -m \$mem -p \$port -u \$user -P \${pidfile}

    RETVAL=$?
    [ \$RETVAL = 0 ] && touch \${lockfile}
    return \$RETVAL
}

stop() {
    if test "x\${getpid}" != x; then
        action $"Stopping \$prog " /bin/true
        killall memcached
    fi
    RETVAL=\$?
    [ \$RETVAL = 0 ] && rm -rf \${lockfile} \${pidfile}
    return \$RETVAL
}

case "\$1" in
        start)
            start
            ;;

        stop)
            stop
            ;;

        status)
        status -p \${pidfile} \${memcached}
        RETVAL=\$?
            ;;

        restart)
            stop
            start
            ;;
        condrestart)
            if test "x\${getpid}" != x; then
                stop
                start
            fi
            ;;

        *)
            echo $"Usage: \$0 {start|status|stop|restart|condrestart}"
            exit 1

esac

exit \${RETVAL}
EOF
cd /
chmod +x /etc/init.d/memcached-server
chkconfig memcached-server on
service memcached-server start
}

main() {
sys_init
download_software
install
start_server
}

main

三、测试


原文地址:http://blog.51cto.com/kaliarch/2083810

时间: 2024-10-12 16:13:46

Memcached 安装脚本(附服务器自启动)的相关文章

Mongodb 安装脚本(附服务器自启动)

一.目的 为简化Mongodb快速安装部署,并添加至服务启动项,开机自启动. 二.脚本 2.1 github地址 github链接2.2 脚本内容 #!/bin/bash #mail:[email protected] #function:auto install mongodb [ $(id -u) != "0" ] && echo "Error: You must be root to run this script" && ex

如何在linux平台上安装redis(附自动安装脚本)

1.Redis的简单介绍 Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集合和有序集合.支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能.所以Redis也可以被看成是一个数据结构服务器. Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这被称为"半持久化模式");也可以把每一次数据变化都写到一个append onlyfile(aof)里

详解FTP服务之vsftpd(附三种用户安装脚本)

FTP(File Transfer Protocol,文件传输协议)可以在网络中传输文档.图像.视频以及应用程序等多种类型的文件.在企业中大多数情况下,则是用户使用FTP从服务器上下载文件.一个完整的FTP文件传输需要建立两种类型的连接,一种为控制文件传输的命令,称为控制连接:另一种实现真正的文件传输,称为数据连接控制连接:客户端希望与FTP服务器建立上传下载的数据传输时,它首先向服务器TCP协议的21端口发起一个建立连接的请求,FTP服务器接受来自客户端的请求,完成连接的建立过程,这样的连接就

树莓派:L2TP/IPsec VPN 服务器一键安装脚本

经试验,在树莓派上一次成功,很好用,谢谢原作者!!!此文转自:https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/README-zh.md IPsec VPN 服务器一键安装脚本 使用 Linux Shell 脚本一键快速搭建 IPsec VPN 服务器.支持 IPsec/L2TP 和 Cisco IPsec 协议,可用于 Ubuntu,Debian 和 CentOS 系统.你只需提供自己的 VPN 登录凭证,然后运行脚本自动完成安装. I

RHEL6.5x64下memcached安装和使用

RHEL6.5x64下memcached安装和使用 从网上下载libevent-2.0.21-stable.tar.gz 和memcached-1.4.5.tar.gz,然后运行 第一步:安装gcc编译器 [[email protected] ~]#yum -y isnatll gcc 第二步:安装libevent和memcached [[email protected] srv]# tar zxvf libevent-2.0.21-stable.tar.gz [[email protected

L2TP/IPSec一键安装脚本

本脚本适用环境:系统支持:CentOS6+,Debian7+,Ubuntu12+内存要求:≥128M更新日期:2017 年 05 月 28 日 关于本脚本:名词解释如下L2TP(Layer 2 Tunneling Protocol)IPSec(Internet Protocol Security)IKEv2 (Internet Key Exchange v2)能实现 IPsec 的目前总体上有 openswan,libreswan,strongswan 这3种.libreswan 是基于 ope

Memcached 安装

安装Memcached 安装Memcached前要先安装 libevent库 安装环境: [[email protected] ~]# uname -a Linux MEM 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]# 安装libevent库 mkdir -p /home/lvnian/tools/ cd /home/l

Memcached安装与部署

1.      准备工作 下载libevent:http://monkey.org/~provos/libevent/ (由于memcached与客户端的通信是借助libevent来实现的,所以此动作必须在memcached安装前完成) 下载memcached:http://memcached.org/ (注意:memcache是由服务器端和客户端共同组成,此处指memcache的服务器端,客户端在memcache的官网也提供了下载地址) 分别把memcached和libevent下载回来,放到

Window下memcached安装与测试

1.下载Memercached For Windows:http://download.csdn.net/detail/bbirdsky/7395123 2.安装: 1>注意install.bat文件中binPath需要修改为memcached.exe所在的目录,displayName为服务名,不建议修改,如果修改后其它的bat文件也需要做相应的修改: 2>注意避免直接双击被杀毒软件给拦截,最好是进入dos命令行执行 创建服务脚本:install.bat 启动服务脚本:start.bat 停止