Simple Linux Panel
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mdserver-web/scripts/install/centos.sh

156 lines
4.9 KiB

7 years ago
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 years ago
export PATH
7 years ago
LANG=en_US.UTF-8
6 years ago
if [ ! -f /usr/bin/applydeltarpm ];then
yum -y provides '*/applydeltarpm'
yum -y install deltarpm
fi
7 years ago
3 years ago
VERSION_ID=`cat /etc/*-release | grep VERSION_ID | awk -F = '{print $2}' | awk -F "\"" '{print $2}'`
setenforce 0
6 years ago
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
6 years ago
3 years ago
yum install -y wget lsof crontabs
3 years ago
yum install -y python3-devel
3 years ago
yum install -y python3-pip
3 years ago
yum install -y python-devel
3 years ago
yum install -y vixie-cron
3 years ago
yum install -y curl-devel libmcrypt libmcrypt-devel
3 years ago
yum install -y mysql-devel
3 years ago
3 years ago
#https need
3 years ago
if [ ! -d /root/.acme.sh ];then
3 years ago
curl https://get.acme.sh | sh
fi
3 years ago
if [ -f /etc/init.d/iptables ];then
6 years ago
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
6 years ago
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 888 -j ACCEPT
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 7200 -j ACCEPT
3 years ago
# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
3 years ago
# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 30000:40000 -j ACCEPT
6 years ago
service iptables save
iptables_status=`service iptables status | grep 'not running'`
if [ "${iptables_status}" == '' ];then
service iptables restart
fi
3 years ago
#安装时不开启
service iptables stop
6 years ago
fi
3 years ago
3 years ago
if [ ! -f /etc/init.d/iptables ];then
yum install firewalld -y
systemctl enable firewalld
3 years ago
#取消服务锁定
systemctl unmask firewalld
3 years ago
systemctl start firewalld
3 years ago
firewall-cmd --permanent --zone=public --add-port=22/tcp
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
firewall-cmd --permanent --zone=public --add-port=888/tcp
firewall-cmd --permanent --zone=public --add-port=7200/tcp
3 years ago
# firewall-cmd --permanent --zone=public --add-port=3306/tcp
3 years ago
# firewall-cmd --permanent --zone=public --add-port=30000-40000/tcp
3 years ago
sed -i 's#AllowZoneDrifting=yes#AllowZoneDrifting=no#g' /etc/firewalld/firewalld.conf
3 years ago
firewall-cmd --reload
3 years ago
#安装时不开启
systemctl stop firewalld
3 years ago
fi
6 years ago
3 years ago
yum groupinstall -y "Development Tools"
yum install -y epel-release
yum install -y oniguruma oniguruma-devel
#centos8 stream | use dnf
if [ "$?" != "0" ];then
yum install -y dnf dnf-plugins-core
dnf config-manager --set-enabled powertools
yum install -y oniguruma oniguruma-devel
dnf upgrade -y libmodulemd
fi
3 years ago
3 years ago
yum install -y libtirpc libtirpc-devel
yum install -y rpcgen
yum install -y openldap openldap-devel
yum install -y bison re2c cmake
yum install -y cmake3
yum install -y autoconf
yum install -y libmemcached libmemcached-devel
yum install -y curl curl-devel
yum install -y zlib zlib-devel
yum install -y libzip libzip-devel
yum install -y pcre pcre-devel
yum install -y icu libicu-devel
yum install -y freetype freetype-devel
yum install -y openssl openssl-devel
yum install -y graphviz libxml2 libxml2-devel
yum install -y sqlite-devel
yum install -y oniguruma oniguruma-devel
yum install -y ImageMagick ImageMagick-devel
3 years ago
3 years ago
yum install -y libzstd-devel
3 years ago
yum install -y libevent libevent-devel unzip
3 years ago
yum install -y python-imaging libicu-devel zip bzip2-devel gcc pcre pcre-devel
3 years ago
yum install -y libjpeg-devel libpng-devel libwebp libwebp-devel
3 years ago
yum install -y lsof net-tools
3 years ago
yum install -y ncurses-devel
3 years ago
yum install -y vixie-cron
3 years ago
3 years ago
for yumPack in make cmake gcc gcc-c++ flex bison file libtool libtool-libs autoconf kernel-devel patch wget libjpeg libjpeg-devel libpng libpng-devel gd gd-devel zlib zlib-devel glib2 glib2-devel tar bzip2 bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel libcurl libcurl-devel e2fsprogs e2fsprogs-devel libidn libidn-devel vim-minimal gettext gettext-devel ncurses-devel gmp-devel libcap diffutils ca-certificates net-tools psmisc libXpm-devel git-core c-ares-devel libicu-devel libxslt libxslt-devel zip unzip glibc.i686 libstdc++.so.6 cairo-devel ncurses-devel libaio-devel perl perl-devel perl-Data-Dumper crontabs expat-devel readline-devel;
3 years ago
do yum -y install $yumPack;done
6 years ago
3 years ago
if [ "$VERSION_ID" -eq "9" ];then
yum install -y patchelf
3 years ago
dnf --enablerepo=crb install -y libtirpc-devel
dnf --enablerepo=crb install -y libmemcached-devel
dnf --enablerepo=crb install -y libtool libtool-libs
# yum remove -y chardet
3 years ago
fi
3 years ago
cd /www/server/mdserver-web/scripts && bash lib.sh
chmod 755 /www/server/mdserver-web/data
cd /www/server/mdserver-web && ./cli.sh start
isStart=`ps -ef|grep 'gunicorn -c setting.py app:app' |grep -v grep|awk '{print $2}'`
n=0
while [[ ! -f /etc/init.d/mw ]];
do
echo -e ".\c"
sleep 1
let n+=1
if [ $n -gt 20 ];then
echo -e "start mw fail"
exit 1
fi
done
cd /www/server/mdserver-web && /etc/init.d/mw stop
3 years ago
cd /www/server/mdserver-web && /etc/init.d/mw start
cd /www/server/mdserver-web && /etc/init.d/mw default
3 years ago