#!/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