#!/bin/bash
softPath=`pwd`
fastdfsPath='/etc/fdfs'
nginxUser='nginx'
#ip=`ip a|grep '\..'|grep -v '127'|awk -F "[ /]+" '{print $3}'`
function Basics() {
yum localinstall ${softPath}/rpm/*.rpm -y
cd ${softPath}
tar zxf libfastcommon-1.0.39.tar.gz
cd libfastcommon-1.0.39
./make.sh && ./make.sh install
if [[ $? != 0 ]];then
echo 'libfastcommon安装失败'
rm -rf ${softPath}/libfastcommon-1.0.39
exit 1
fi
rm -rf ${softPath}/libfastcommon-1.0.39
}
function fastdfs() {
for((i=1;i>0;i++));do
read -p '请输入您的本机ip地址:' ip
ip=`echo $ip|sed 's/ //g'`
read -p '请确认y/n/r:' confirm
if [[ ${confirm} == y ]];then
break
elif [[ ${confirm} == n ]];then
exit 0
elif [[ ${confirm} == r ]];then
continue
fi
done
mkdir -p /beixi/{data,application}
mkdir -p /beixi/data/fastdfs/{storage,tracker}
mkdir -p /beixi/data/fastdfs/storage/base
mkdir -p /beixi/data/fastdfs/client
cd ${softPath}
tar zxf fastdfs-5.11.tar.gz
cd fastdfs-5.11
./make.sh && ./make.sh install
if [[ $? != 0 ]];then
echo 'fastdfs安装失败'
exit 1
fi
cp ${softPath}/conf/tracker.conf ${fastdfsPath}
cp ${softPath}/conf/storage.conf ${fastdfsPath}
cp ${softPath}/conf/client.conf ${fastdfsPath}
sed -i "s/192.168.101.62/${ip}/g" ${fastdfsPath}/tracker.conf
sed -i "s/192.168.101.62/${ip}/g" ${fastdfsPath}/storage.conf
sed -i "s/192.168.101.62/${ip}/g" ${fastdfsPath}/client.conf
#/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
/etc/init.d/fdfs_trackerd start
/etc/init.d/fdfs_storaged start
chkconfig fdfs_trackerd on
chkconfig fdfs_storaged on
echo '测试节点状态: /usr/bin/fdfs_monitor /etc/fdfs/storage.conf'
echo '测试图片上传: /usr/bin/fdfs_upload_file /etc/fdfs/client.conf 图片名称.jpg'
rm -rf ${softPath}/fastdfs-5.11
}
function nginx() {
mkdir -p /beixi/{data,application}
cd ${softPath}
yum localinstall ${softPath}/rpm/*.rpm -y
if [[ `grep ${nginxUser} /etc/passwd|wc -l` == 0 ]];then
useradd nginx -s /sbin/nologin -M
fi
tar zxf nginx-1.18.0.tar.gz
cd nginx-1.18.0
./configure --prefix=/beixi/application/nginx-1.13.8 \
--user=${nginxUser} \
--group=${nginxUser} \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_sub_module \
--with-http_random_index_module \
--with-http_degradation_module \
--with-http_secure_link_module \
--with-http_gzip_static_module \
--with-stream
if [[ $? == 0 ]];then
make && make install
else
echo "NGINX参数配置错误"
exit 1
fi
cd /beixi/application && ln -s nginx-1.13.8 nginx
cp ${softPath}/conf/nginx.conf /beixi/application/nginx/conf
/beixi/application/nginx/sbin/nginx -t
/beixi/application/nginx/sbin/nginx
rm -rf ${softPath}/nginx-1.18.0
echo '浏览器访问图片: http://${ip}/16008/group1/M00'
}
parameter=$1
case $parameter in
fastdfs)
fastdfs
;;
nginx)
nginx
;;
Basics)
Basics
;;
All)
Basics
fastdfs
nginx
echo '测试节点状态: /usr/bin/fdfs_monitor /etc/fdfs/storage.conf'
echo '测试图片上传: /usr/bin/fdfs_upload_file /etc/fdfs/client.conf 图片名称.jpg'
;;
*)
echo '请输入[nginx|fastdfs|Basics|All]'
;;
esac