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