mdserver-web/scripts/install/centos.sh

163 lines
5.1 KiB
Bash
Raw Normal View History

2018-12-10 06:37:38 -05:00
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
2022-06-14 03:14:31 -04:00
export PATH
2018-12-10 06:37:38 -05:00
LANG=en_US.UTF-8
2019-03-04 21:04:05 -05:00
if [ ! -f /usr/bin/applydeltarpm ];then
yum -y provides '*/applydeltarpm'
yum -y install deltarpm
fi
2018-12-10 06:37:38 -05:00
2022-07-07 00:51:23 -04:00
VERSION_ID=`cat /etc/*-release | grep VERSION_ID | awk -F = '{print $2}' | awk -F "\"" '{print $2}'`
2019-04-02 04:46:46 -04:00
setenforce 0
2019-09-13 12:26:03 -04:00
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
2019-04-02 04:42:44 -04:00
2022-06-13 12:00:56 -04:00
yum install -y wget lsof crontabs
2022-06-13 13:09:45 -04:00
yum install -y python3-devel
2022-07-04 12:06:47 -04:00
yum install -y python3-pip
2022-06-13 13:03:02 -04:00
yum install -y python-devel
2022-06-13 13:09:45 -04:00
yum install -y vixie-cron
2022-06-20 11:09:59 -04:00
yum install -y curl-devel libmcrypt libmcrypt-devel
2022-06-26 01:51:05 -04:00
yum install -y mysql-devel
2022-06-13 13:09:45 -04:00
2022-07-07 00:51:23 -04:00
2019-03-04 23:59:37 -05:00
#https need
2022-06-10 04:27:13 -04:00
if [ ! -d /root/.acme.sh ];then
2022-06-13 12:00:56 -04:00
curl https://get.acme.sh | sh
2019-07-31 05:34:32 -04:00
fi
2019-02-02 06:38:16 -05:00
2022-04-10 11:09:41 -04:00
if [ -f /etc/init.d/iptables ];then
2019-03-04 21:04:05 -05:00
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
2020-06-11 11:39:31 -04:00
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
2019-03-04 21:04:05 -05:00
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
2022-06-22 23:57:42 -04:00
# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
2022-06-20 12:41:44 -04:00
# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 30000:40000 -j ACCEPT
2019-03-04 21:04:05 -05:00
service iptables save
iptables_status=`service iptables status | grep 'not running'`
if [ "${iptables_status}" == '' ];then
service iptables restart
fi
2022-06-13 11:44:12 -04:00
#安装时不开启
service iptables stop
2019-03-04 21:04:05 -05:00
fi
2022-06-13 11:44:12 -04:00
2022-06-13 12:00:56 -04:00
if [ ! -f /etc/init.d/iptables ];then
yum install firewalld -y
systemctl enable firewalld
2022-07-04 12:06:47 -04:00
#取消服务锁定
systemctl unmask firewalld
2022-06-13 12:00:56 -04:00
systemctl start firewalld
2019-05-18 02:35:40 -04:00
2022-06-13 12:00:56 -04:00
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
2022-06-22 23:57:42 -04:00
# firewall-cmd --permanent --zone=public --add-port=3306/tcp
2022-06-20 12:41:44 -04:00
# firewall-cmd --permanent --zone=public --add-port=30000-40000/tcp
2022-06-15 04:25:19 -04:00
sed -i 's#AllowZoneDrifting=yes#AllowZoneDrifting=no#g' /etc/firewalld/firewalld.conf
2022-06-13 12:00:56 -04:00
firewall-cmd --reload
2022-07-04 12:43:46 -04:00
#安装时不开启
systemctl stop firewalld
2022-06-13 12:00:56 -04:00
fi
2019-03-04 21:04:05 -05:00
2022-06-21 07:57:23 -04:00
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
2022-07-05 22:27:24 -04:00
dnf upgrade -y libmodulemd
fi
2022-07-07 00:51:23 -04:00
2022-07-15 14:08:15 -04:00
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
2022-07-07 00:51:23 -04:00
2022-07-05 03:34:50 -04:00
yum install -y libzstd-devel
2022-07-15 13:05:21 -04:00
yum install -y libevent libevent-devel unzip
2022-07-15 14:08:15 -04:00
yum install -y python-imaging libicu-devel zip bzip2-devel gcc pcre pcre-devel
2022-07-15 23:28:56 -04:00
yum install -y gd gd-devel
2022-06-20 12:49:04 -04:00
yum install -y libjpeg-devel libpng-devel libwebp libwebp-devel
2022-07-15 23:28:56 -04:00
yum install -y net-tools
2022-07-15 14:08:15 -04:00
yum install -y ncurses-devel
2022-07-15 13:05:21 -04:00
yum install -y vixie-cron
2022-06-28 13:35:32 -04:00
2022-07-15 23:28:56 -04:00
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 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 expat-devel readline-devel;
2022-06-28 13:35:32 -04:00
do yum -y install $yumPack;done
2019-03-04 21:04:05 -05:00
2022-07-07 02:49:11 -04:00
if [ "$VERSION_ID" -eq "9" ];then
yum install -y patchelf
2022-07-15 14:08:15 -04:00
dnf --enablerepo=crb install -y libtirpc-devel
dnf --enablerepo=crb install -y libmemcached-devel
dnf --enablerepo=crb install -y libtool libtool-libs
2022-07-15 21:08:23 -04:00
dnf --enablerepo=crb install -y gnutls-devel
2022-07-15 21:33:43 -04:00
dnf --enablerepo=crb install -y mysql-devel
2022-07-15 23:28:56 -04:00
dnf --enablerepo=crb install -y libvpx-devel libXpm-devel libwebp libwebp-devel
dnf --enablerepo=crb install -y oniguruma oniguruma-devel
2022-07-15 14:08:15 -04:00
# yum remove -y chardet
2022-07-07 02:49:11 -04:00
fi
2022-07-15 14:08:15 -04:00
cd /www/server/mdserver-web/scripts && bash lib.sh
chmod 755 /www/server/mdserver-web/data
2019-02-02 05:01:34 -05:00
cd /www/server/mdserver-web && ./cli.sh start
2022-06-30 10:28:29 -04:00
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
2022-06-29 09:26:14 -04:00
cd /www/server/mdserver-web && /etc/init.d/mw start
2022-06-30 10:28:29 -04:00
cd /www/server/mdserver-web && /etc/init.d/mw default
2022-06-29 09:26:14 -04:00