otimizar 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. #!/bin/bash
  2. fun_bar() {
  3. comando[0]="$1"
  4. comando[1]="$2"
  5. (
  6. [[ -e $HOME/fim ]] && rm $HOME/fim
  7. ${comando[0]} -y >/dev/null 2>&1
  8. ${comando[1]} -y >/dev/null 2>&1
  9. touch $HOME/fim
  10. ) >/dev/null 2>&1 &
  11. tput civis
  12. echo -ne " \033[1;33mAGUARDE \033[1;37m- \033[1;33m["
  13. while true; do
  14. for ((i = 0; i < 18; i++)); do
  15. echo -ne "\033[1;31m#"
  16. sleep 0.1s
  17. done
  18. [[ -e $HOME/fim ]] && rm $HOME/fim && break
  19. echo -e "\033[1;33m]"
  20. sleep 1s
  21. tput cuu1
  22. tput dl1
  23. echo -ne " \033[1;33mAGUARDE \033[1;37m- \033[1;33m["
  24. done
  25. echo -e "\033[1;33m]\033[1;37m -\033[1;32m OK !\033[1;37m"
  26. tput cnorm
  27. }
  28. [[ $(grep -wc mlocate /var/lib/dpkg/statoverride) != '0' ]] && sed -i '/mlocate/d' /var/lib/dpkg/statoverride
  29. clear
  30. echo -e "\033[0;34m┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\033[0m"
  31. echo -e "\033[0;34m┃\E[44;1;37m OTIMIZAR SEU SERVIDOR \E[0m\033[0;34m┃"
  32. echo -e "\033[0;34m┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\033[0m\n"
  33. echo -e "\033[1;32m Atualizando pacotes\033[0m"
  34. echo ""
  35. fun_bar 'apt-get update -y' 'apt-get upgrade -y'
  36. echo ""
  37. echo -e "\033[1;32m Corrigindo problemas de dependências"
  38. echo""
  39. fun_bar 'apt-get -f install'
  40. echo""
  41. echo -e "\033[1;32m Removendo pacotes inúteis"
  42. echo ""
  43. fun_bar 'apt-get autoremove -y' 'apt-get autoclean -y'
  44. echo ""
  45. echo -e "\033[1;32m Removendo pacotes com problemas"
  46. echo ""
  47. fun_bar 'apt-get -f remove -y' 'apt-get clean -y'
  48. #Limpar o cache memoria RAM
  49. clear
  50. echo -e "\033[1;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
  51. echo ""
  52. MEM1=$(free | awk '/Mem:/ {print int(100*$3/$2)}')
  53. ram1=$(free -h | grep -i mem | awk {'print $2'})
  54. ram2=$(free -h | grep -i mem | awk {'print $4'})
  55. ram3=$(free -h | grep -i mem | awk {'print $3'})
  56. swap1=$(free -h | grep -i swap | awk {'print $2'})
  57. swap2=$(free -h | grep -i swap | awk {'print $4'})
  58. swap3=$(free -h | grep -i swap | awk {'print $3'})
  59. echo -e "\033[1;31m•\033[1;32mMemoria RAM\033[1;31m•\033[0m \033[1;31m•\033[1;32mSwap\033[1;31m•\033[0m"
  60. echo -e " \033[1;33mTotal: \033[1;37m$ram1 \033[1;33mTotal: \033[1;37m$swap1"
  61. echo -e " \033[1;33mEm Uso: \033[1;37m$ram3 \033[1;33mEm Uso: \033[1;37m$swap3"
  62. echo -e " \033[1;33mLivre: \033[1;37m$ram2 \033[1;33mLivre: \033[1;37m$swap2\033[0m"
  63. echo ""
  64. echo -e "\033[1;37mMemória \033[1;32mRAM \033[1;37mAntes da Otimizacao:\033[1;36m" $MEM1%
  65. echo ""
  66. echo -e "\033[1;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
  67. sleep 2
  68. echo ""
  69. fun_limpram() {
  70. sync
  71. echo 3 >/proc/sys/vm/drop_caches
  72. sync && sysctl -w vm.drop_caches=3
  73. sysctl -w vm.drop_caches=0
  74. swapoff -a
  75. swapon -a
  76. sleep 4
  77. }
  78. function aguarde() {
  79. sleep 1
  80. helice() {
  81. fun_limpram >/dev/null 2>&1 &
  82. tput civis
  83. while [ -d /proc/$! ]; do
  84. for i in / - \\ \|; do
  85. sleep .1
  86. echo -ne "\e[1D$i"
  87. done
  88. done
  89. tput cnorm
  90. }
  91. echo -ne "\033[1;37mLIMPANDO MEMORIA \033[1;32mRAM \033[1;37me \033[1;32mSWAP\033[1;32m.\033[1;33m.\033[1;31m. \033[1;33m"
  92. helice
  93. echo -e "\e[1DOk"
  94. }
  95. aguarde
  96. sleep 1
  97. clear
  98. echo -e "\033[1;32m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
  99. echo ""
  100. MEM2=$(free | awk '/Mem:/ {print int(100*$3/$2)}')
  101. ram1=$(free -h | grep -i mem | awk {'print $2'})
  102. ram2=$(free -h | grep -i mem | awk {'print $4'})
  103. ram3=$(free -h | grep -i mem | awk {'print $3'})
  104. swap1=$(free -h | grep -i swap | awk {'print $2'})
  105. swap2=$(free -h | grep -i swap | awk {'print $4'})
  106. swap3=$(free -h | grep -i swap | awk {'print $3'})
  107. echo -e "\033[1;31m•\033[1;32mMemoria RAM\033[1;31m•\033[0m \033[1;31m•\033[1;32mSwap\033[1;31m•\033[0m"
  108. echo -e " \033[1;33mTotal: \033[1;37m$ram1 \033[1;33mTotal: \033[1;37m$swap1"
  109. echo -e " \033[1;33mEm Uso: \033[1;37m$ram3 \033[1;33mEm Uso: \033[1;37m$swap3"
  110. echo -e " \033[1;33mLivre: \033[1;37m$ram2 \033[1;33mLivre: \033[1;37m$swap2\033[0m"
  111. echo ""
  112. echo -e "\033[1;37mMemória \033[1;32mRAM \033[1;37mapós a Otimizacao:\033[1;36m" $MEM2%
  113. echo ""
  114. echo -e "\033[1;37mEconomia de :\033[1;31m $(expr $MEM1 - $MEM2)%\033[0m"
  115. echo ""
  116. echo -e "\033[1;32m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"