diff --git a/scripts/install/fedora.sh b/scripts/install/fedora.sh index 9dc13f65f..5256f28d4 100644 --- a/scripts/install/fedora.sh +++ b/scripts/install/fedora.sh @@ -3,10 +3,115 @@ PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH LANG=en_US.UTF-8 - mkdir -p /www/server mkdir -p /www/wwwroot mkdir -p /www/wwwlogs mkdir -p /www/backup/database mkdir -p /www/backup/site + +if [ ! -f /usr/bin/applydeltarpm ];then + yum -y provides '*/applydeltarpm' + yum -y install deltarpm +fi + + +setenforce 0 +sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config + +yum install -y wget curl vixie-cron lsof +#https need + +if [ ! -d /root/.acme.sh ];then + curl https://get.acme.sh | sh +fi + +if [ -f /etc/init.d/iptables ];then + + 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 + 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 + iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT + iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 30000:40000 -j ACCEPT + service iptables save + + iptables_status=`service iptables status | grep 'not running'` + if [ "${iptables_status}" == '' ];then + service iptables restart + fi +fi + +#安装时不开启 +service iptables stop + +if [ "${isVersion}" == '' ];then + if [ ! -f "/etc/init.d/iptables" ];then + yum install firewalld -y + systemctl enable firewalld + systemctl start firewalld + + 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 + firewall-cmd --permanent --zone=public --add-port=3306/tcp + firewall-cmd --permanent --zone=public --add-port=30000-40000/tcp + firewall-cmd --reload + fi +fi + +#安装时不开启 +systemctl stop firewalld + + +yum install -y libevent libevent-devel mysql-devel libjpeg* libpng* gd* zip unzip libmcrypt libmcrypt-devel + +if [ ! -d /www/server/mdserver-web ];then + wget -O /tmp/master.zip https://codeload.github.com/midoks/mdserver-web/zip/master + cd /tmp && unzip /tmp/master.zip + mv /tmp/mdserver-web-master /www/server/mdserver-web + rm -rf /tmp/master.zip + rm -rf /tmp/mdserver-web-master +fi + +yum groupinstall -y "Development Tools" +paces="wget python-devel python-imaging libicu-devel zip unzip bzip2-devel gcc libxml2 libxml2-dev libxslt* libjpeg-devel libpng-devel libwebp libwebp-devel lsof pcre pcre-devel vixie-cron crontabs" +yum -y install $paces +yum -y lsof net-tools.x86_64 +yum -y install ncurses-devel mysql-dev locate cmake +yum -y install python-devel.x86_64 +yum -y install MySQL-python +yum -y install epel-release +yum -y install python36-devel + +#if [ ! -f '/usr/bin/pip' ];then +# wget https://bootstrap.pypa.io/pip/2.7/get-pip.py +# python get-pip.py +# pip install --upgrade pip +# pip install pillow==6.2.2 +#fi + + +if [ ! -f /usr/local/bin/pip3 ];then + python3 -m pip install --upgrade pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple +fi + + +cd /www/server/mdserver-web/scripts && ./lib.sh + +chmod 755 /www/server/mdserver-web/data + +if [ -f /www/server/mdserver-web/bin/activate ];then + cd /www/server/mdserver-web && source /www/server/mdserver-web/bin/activate && pip3 install -r /www/server/mdserver-web/requirements.txt +else + cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/requirements.txt +fi +cd /www/server/mdserver-web && ./cli.sh start +sleep 5 + +cd /www/server/mdserver-web && ./cli.sh stop +cd /www/server/mdserver-web && ./scripts/init.d/mw default +cd /www/server/mdserver-web && ./cli.sh start \ No newline at end of file diff --git a/scripts/update/fedora.sh b/scripts/update/fedora.sh index 55af7bb06..35e6b6aa8 100644 --- a/scripts/update/fedora.sh +++ b/scripts/update/fedora.sh @@ -4,9 +4,70 @@ export PATH LANG=en_US.UTF-8 +if [ -f /etc/motd ];then + echo "Welcome to mdserver-web panel" > /etc/motd +fi + +sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config + wget -O /tmp/master.zip https://codeload.github.com/midoks/mdserver-web/zip/master -rm -rf /tmp/mdserver-web-master -cd /tmp && unzip /tmp/master.zip -cp -rf /tmp/mdserver-web-master/* /www/server/mdserver-web +cd /tmp && unzip /tmp/master.zip +/usr/bin/cp -rf /tmp/mdserver-web-master/* /www/server/mdserver-web rm -rf /tmp/master.zip rm -rf /tmp/mdserver-web-master + + +yum install -y curl-devel libmcrypt libmcrypt-devel python36-devel + +cd /www/server/mdserver-web/scripts && sh lib.sh + +chmod 755 /www/server/mdserver-web/data + +#venv +cd /www/server/mdserver-web && python3 -m venv . + +if [ ! -f /usr/local/bin/pip3 ];then + python3 -m pip install --upgrade pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple +fi + +if [ -f /www/server/mdserver-web/bin/activate ];then + cd /www/server/mdserver-web && source /www/server/mdserver-web/bin/activate && pip3 install -r /www/server/mdserver-web/requirements.txt +else + + cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/requirements.txt +fi + +sh /etc/init.d/mw stop && rm -rf /www/server/mdserver-web/scripts/init.d/mw && rm -rf /etc/init.d/mw + +echo -e "stop mw" +isStart=`ps -ef|grep 'gunicorn -c setting.py app:app' |grep -v grep|awk '{print $2}'` +port=$(cat /www/server/mdserver-web/data/port.pl) +n=0 +while [[ "$isStart" != "" ]]; +do + echo -e ".\c" + sleep 0.5 + isStart=$(lsof -n -P -i:$port|grep LISTEN|grep -v grep|awk '{print $2}'|xargs) + let n+=1 + if [ $n -gt 15 ];then + break; + fi +done + + +echo -e "start mw" +cd /www/server/mdserver-web && sh 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 0.5 + let n+=1 + if [ $n -gt 15 ];then + break; + fi +done +echo -e "start mw success" + +/etc/init.d/mw default \ No newline at end of file