forked from SimplesIP/pabx-app
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.
198 lines
7.8 KiB
198 lines
7.8 KiB
2 years ago
|
#!/bin/bash
|
||
|
trap "" 2 20
|
||
|
#Funcoes
|
||
|
verifica_erro()
|
||
|
{
|
||
|
RESULTADO=$1
|
||
|
MODULO=$2
|
||
|
TIPO=$3
|
||
|
|
||
|
if [ "$RESULTADO" != "0" ] ; then
|
||
|
clear
|
||
|
if [ "$TIPO" = "DESINSTALAR" ] ; then
|
||
|
echo "Erro durante a desinstalacao do Modulo $MODULO"
|
||
|
else
|
||
|
echo "Erro durante a instalacao do Modulo $MODULO, favor verificar as dependencias"
|
||
|
fi
|
||
|
[ -d /tmp/etc_asterisk-$data ] && /bin/mv -f /tmp/etc_asterisk-$data/* /etc/asterisk
|
||
|
[ -d /tmp/var_lib_asterisk-$data ] && /bin/mv -f /tmp/var_lib_asterisk-$data/$i /var/lib/asterisk
|
||
|
exit $RESULTADO
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
#Variaveis
|
||
|
declare -x data=$(date +%F-%H-%M-%S)
|
||
|
log=/tmp/uninstall.log
|
||
|
#Descobrindo o caminho do script
|
||
|
dir=$(dirname $0)
|
||
|
path_arquivo=$(cd $dir;pwd)
|
||
|
versao_linux=$(cat /etc/redhat-release | sed 's/[a-zA-Z() ]//g')
|
||
|
|
||
|
! [ "$versao_linux" = "6.6" ] && clear && echo "SISTEMA OPERCIONAL INVALIDO" && exit
|
||
|
|
||
|
#Ajuste crontab
|
||
|
sed -i "/\(.*#Servicos Auxiliares\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Transbordo Assistido\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Backup\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#VPN\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Remove Caixa Postal\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Limpa Maildrop\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Backup - Shell\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Bloqueio - SIP\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#NTP\)/d" /etc/crontab
|
||
|
sed -i "/\(.*#Logrotate\)/d" /etc/crontab
|
||
|
sed -i "/\(.*\/var\/spool\/asterisk\/voicemail\/default\/\)/d" /etc/crontab
|
||
|
sed -i "/\(.*\/var\/spool\/postfix\/maildrop\/\)/d" /etc/crontab
|
||
|
sed -i "/\(.*\/hdaux\/utilitarios\/scripts\/logrotate\)/d" /etc/crontab
|
||
|
sed -i "/\(.*\.sh.*\)/d" /etc/crontab
|
||
|
sed -i "/\(.*\.php.*\)/d" /etc/crontab
|
||
|
echo "#VPN" >> /etc/crontab
|
||
|
echo "*/1 * * * * root /bin/sip_teste_vpn.sh" >> /etc/crontab
|
||
|
service crond restart
|
||
|
|
||
|
#Ajuste dos servicos
|
||
|
chkconfig --level 35 rc.pbx off
|
||
|
service rc.pbx stop
|
||
|
chkconfig --level 35 supervisor off
|
||
|
/etc/init.d/supervisor stop
|
||
|
[ -e /etc/init.d/vlibd ] && chkconfig --level 35 vlibd off && /etc/init.d/vlibd stop
|
||
|
[ -e /etc/init.d/dgvfifo ] && chkconfig --level 35 dgvfifo off && /etc/init.d/dgvfifo stop
|
||
|
[ -e /etc/init.d/dahdi ] && chkconfig --level 35 dahdi off && /etc/init.d/dahdi stop
|
||
|
[ -e /etc/init.d/khomp-services ] && chkconfig --level 35 khomp-services off && /etc/init.d/khomp-services stop
|
||
|
|
||
|
#Realizando backup da pasta de gravacoes
|
||
|
if [ -d /var/spool/asterisk/monitor ] ; then
|
||
|
cd /var/spool/asterisk/monitor/
|
||
|
raiz_monitor=$(pwd -P | cut -d "/" -f2)
|
||
|
|
||
|
if [ "$raiz_monitor" = "var" ] ; then
|
||
|
mkdir -p /hdaux/gravacoes-$data
|
||
|
/bin/mv -f /var/spool/asterisk/monitor /hdaux/gravacoes-$data/
|
||
|
else
|
||
|
mkdir -p /$raiz_monitor/gravacoes-$data
|
||
|
/bin/mv -f /var/spool/asterisk/monitor /$raiz_monitor/gravacoes-$data/
|
||
|
fi
|
||
|
fi
|
||
|
|
||
|
#Configuracoes e arquivos de sons
|
||
|
[ -d /etc/asterisk ] && /bin/cp -Rap /etc/asterisk /tmp/etc_asterisk-$data
|
||
|
[ -d /var/lib/asterisk ] && /bin/cp -Rap /var/lib/asterisk /tmp/var_lib_asterisk-$data
|
||
|
|
||
|
#Desistalando Pacotes anteriores
|
||
|
if [ 0 -ne $(find /usr/src/ -name "channel*.sh" | wc -l) ] ; then
|
||
|
echo "Desinstalando KHOMP"
|
||
|
bash $(find /usr/src/ -name "channel*.sh" | sort | tail -n1) -j
|
||
|
RESULT=$?
|
||
|
verifica_erro $RESULT KHOMP DESINSTALAR
|
||
|
fi
|
||
|
|
||
|
if [ 0 -ne $(find /usr/src -name "spandsp-0*" -type d -print | wc -l) ] ; then
|
||
|
echo "Desinstalando SPANDSP"
|
||
|
cd $(find /usr/src -name "spandsp-0*" -type d -print)
|
||
|
make uninstall >> $log 2>&1
|
||
|
RESULT=$?
|
||
|
verifica_erro $RESULT SPANDSP DESINSTALAR
|
||
|
fi
|
||
|
|
||
|
if [ 0 -ne $(find /usr/src -name "libpri-1*" -type d -print | wc -l) ] ; then
|
||
|
echo "Desinstalando LIBPRI"
|
||
|
cd $(find /usr/src -name "libpri-1*" -type d -print)
|
||
|
make uninstall >> $log 2>&1
|
||
|
RESULT=$?
|
||
|
verifica_erro $RESULT LIBPRI DESINSTALAR
|
||
|
fi
|
||
|
|
||
|
if [ 0 -ne $(find /usr/src -name "dahdi-linux-complete-2*" -type d -print | wc -l) ] ; then
|
||
|
echo "Desinstalando DAHDI"
|
||
|
cd $(find /usr/src -name "dahdi-linux-complete-2*" -type d -print)/linux/
|
||
|
make uninstall >> $log 2>&1
|
||
|
RESULT=$?
|
||
|
verifica_erro $RESULT DAHDI DESINSTALAR
|
||
|
fi
|
||
|
|
||
|
if [ 0 -ne $(find /usr/src -name "asterisk-1*" -type d -print | wc -l) ] ; then
|
||
|
echo "Desinstalando ASTERISK"
|
||
|
cd $(find /usr/src -name "asterisk-1*" -type d -print)
|
||
|
make uninstall-all >> $log 2>&1
|
||
|
RESULT=$?
|
||
|
verifica_erro $RESULT ASTERISK DESINSTALAR
|
||
|
fi
|
||
|
|
||
|
#Desabilitando repositorios default do Centos
|
||
|
! [ -z "$(ifconfig | grep '192.168.115.*')" ] && sed -i "/repositorio.simplesip.com.br/d" /etc/hosts && echo "192.168.115.12 repositorio.simplesip.com.br" >> /etc/hosts
|
||
|
|
||
|
ls -1 /etc/yum.repos.d/ | grep -v simplesip | while read REPOSITORIO; do
|
||
|
sed -i "/^enabled=.*/d" /etc/yum.repos.d/$REPOSITORIO
|
||
|
CONT=0
|
||
|
grep -in "^\[.*\]" /etc/yum.repos.d/$REPOSITORIO| cut -d: -f1 | while read LINHA; do
|
||
|
sed -i "$(($LINHA+1+$CONT))ienabled=0" /etc/yum.repos.d/$REPOSITORIO
|
||
|
CONT=$(($CONT+1))
|
||
|
done
|
||
|
done
|
||
|
|
||
|
cd $path_arquivo/
|
||
|
#[ -e centos-6-$(uname -m)-upgrades.tar.gz ] && tar xzf centos-6-$(uname -m)-upgrades.tar.gz
|
||
|
|
||
|
#Ajustando variaveis YUM
|
||
|
[ -e /etc/yum/vars/releasever ] && /bin/rm -rf /etc/yum/vars/releasever
|
||
|
cat /etc/redhat-release | sed 's/[a-zA-Z() ]//g' > /etc/yum/vars/releaseversimplesip
|
||
|
|
||
|
#Configurando repositorio Simples IP
|
||
|
echo "[simplesip]" > /etc/yum.repos.d/simplesip.repo
|
||
|
echo "name=CentOS-\$releaseversimplesip - Simples IP" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "baseurl=http://repositorio.simplesip.com.br/repositorio/\$releaseversimplesip/os/\$basearch/" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "gpgcheck=0" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "enabled=1" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "[simplesip-upgrades]" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "name=CentOS-\$releaseversimplesip - Simples IP Upgrades" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "baseurl=http://repositorio.simplesip.com.br/repositorio/\$releaseversimplesip/os/\$basearch/upgrades/" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "gpgcheck=0" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "enabled=1" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "[simplesip-upgrades-local]" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "name=CentOS-\$releaseversimplesip - Simples IP Upgrades Local" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "baseurl=file://$path_arquivo/centos-6-\$basearch-upgrades/" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "gpgcheck=0" >> /etc/yum.repos.d/simplesip.repo
|
||
|
echo "enabled=0" >> /etc/yum.repos.d/simplesip.repo
|
||
|
|
||
|
mkdir $data
|
||
|
cd $data
|
||
|
yum --disablerepo=\* --enablerepo=simplesip-upgrades-local --nogpgcheck upgrade -y *
|
||
|
RESULT=$?
|
||
|
if [ "$RESULT" != "0" ] ; then
|
||
|
clear
|
||
|
echo "Erro durante a atualizacao dos pacotes - yum"
|
||
|
[ -d /tmp/etc_asterisk-$data ] && /bin/mv -f /tmp/etc_asterisk-$data/* /etc/asterisk
|
||
|
[ -d /tmp/var_lib_asterisk-$data ] && /bin/mv -f /tmp/var_lib_asterisk-$data/$i /var/lib/asterisk
|
||
|
exit $RESULT
|
||
|
fi
|
||
|
sleep 1
|
||
|
yum --disablerepo=\* --enablerepo=simplesip-upgrades-local --nogpgcheck install -y *
|
||
|
RESULT=$?
|
||
|
if [ "$RESULT" != "0" ] ; then
|
||
|
clear
|
||
|
echo "Erro durante a instalacao dos novos pacotes - yum"
|
||
|
[ -d /tmp/etc_asterisk-$data ] && /bin/mv -f /tmp/etc_asterisk-$data/* /etc/asterisk
|
||
|
[ -d /tmp/var_lib_asterisk-$data ] && /bin/mv -f /tmp/var_lib_asterisk-$data/$i /var/lib/asterisk
|
||
|
exit $RESULT
|
||
|
fi
|
||
|
sleep 1
|
||
|
cd ..
|
||
|
/bin/rm -rf $data
|
||
|
|
||
|
[ -d /tmp/etc_asterisk-$data ] && /bin/mv -f /tmp/etc_asterisk-$data /etc/asterisk
|
||
|
[ -d /tmp/var_lib_asterisk-$data ] && /bin/mv -f /tmp/var_lib_asterisk-$data /var/lib/asterisk
|
||
|
|
||
|
/bin/rm -rf /usr/src/instaladores
|
||
|
/bin/rm -rf /usr/src/asterisk*
|
||
|
/bin/rm -rf /usr/src/libpri*
|
||
|
/bin/rm -rf /usr/src/dahdi*
|
||
|
/bin/rm -rf /usr/src/spandsp*
|
||
|
/bin/rm -rf /usr/src/channel_*
|
||
|
/bin/rm -rf /usr/src/usr/src/openr2-*
|
||
|
|
||
|
echo "Reiniciando..."
|
||
|
for i in {5..1};do sleep 1 && echo -n "$i ";done
|
||
|
echo ""
|
||
|
[ -e /sbin/reboot ] && /sbin/reboot
|