home *** CD-ROM | disk | FTP | other *** search
/ ftp.ac-grenoble.fr / 2015.02.ftp.ac-grenoble.fr.tar / ftp.ac-grenoble.fr / pub / slis / updates_4.0_rsync / slis_update-common-post < prev    next >
Text File  |  2007-06-05  |  7KB  |  187 lines

  1. #!/bin/bash
  2. # This script is part of the SLIS Project initiated by the CARMI-Internet
  3. # (AcadΘmie de Grenoble - France 38).
  4. # Ce script fait partie du projet SLIS dΘmarrΘ par le CARMI-Internet
  5. # (AcadΘmie de Grenoble - France 38).
  6. #
  7. # SLIS : Serveur de communications Linux pour l'Internet Scolaire.
  8. # Copyright (C) 1998-2003 Bruno Bzeznik
  9. #
  10. #    This program is free software; you can redistribute it and/or modify
  11. #    it under the terms of the GNU General Public License as published by
  12. #    the Free Software Foundation; either version 2 of the License, or
  13. #    (at your option) any later version.
  14. #
  15. #    This program is distributed in the hope that it will be useful,
  16. #    but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18. #    GNU General Public License for more details.
  19. #    You should have received a copy of the GNU General Public License
  20. #    along with this program (For example ./COPYING);
  21. #    if not, write to the Free Software Foundation, Inc., 675 Mass Ave,
  22. #    Cambridge, MA 02139, USA.
  23. #
  24. # Please send all comments and bug reports by electronic mail to:
  25. #   Bruno Bzeznik <Bruno@ac-grenoble.fr>
  26. # or to <slis@ac-grenoble.fr>
  27. #
  28. # Envoyez vos suggestions et reports de bugs par e-mail α
  29. #   Bruno Bzeznik <Bruno@ac-grenoble.fr>
  30. # ou α <slis@ac-grenoble.fr>
  31. #
  32. # Contact: Olivier.LeCam@crdp.ac-versailles.fr
  33. #
  34. # Comments:
  35. # Downloaded via rsync and executed by SLIS during
  36. # the 'slis_update' process
  37. # Started after the version updates
  38. #
  39. # Updates:
  40. # olecam: Jan 9, 2006: script ported to SLIS v4
  41.  
  42. #
  43. # VARIABLES 
  44. #
  45. LOGTAG="slis_update-common-post[$$]"
  46. VERSION=`cat /etc/version_slis_num`
  47. SLIS_LIB="/usr/sbin/slis-sys.inc.bash"
  48. LOCKFILE="/var/lock/slis/slis_update-common-post"
  49. SCRIPT_STATUS_MSG="Script 'common-post'"
  50.  
  51. . $SLIS_LIB 2>/dev/null
  52. load_config 2>/dev/null
  53.  
  54. #
  55. # Locking
  56. #
  57. if [ -e $LOCKFILE ]
  58. then
  59.       logger -t "$LOGTAG" "Lock found. Update already started."
  60.       exit
  61. fi
  62. touch $LOCKFILE
  63. sleep 1
  64.  
  65. logger -t "$LOGTAG" "$SCRIPT_STATUS_MSG: started."
  66. ##############################
  67.  
  68. ############################################################################
  69. ### Update BASES SQUIDGUARD - Every day
  70. # ATTENTION: Let this update always at the very end of the update script.
  71. # Please, mirror:
  72. # ftp://ftp.univ-tlse1.fr/pub/reseau/cache/squidguard_contrib
  73. # into your rsync module and maintain academie.tar.gz
  74. ############################################################################
  75.  
  76. if [ -e /usr/local/squid/squidGuard/db ]
  77. then
  78.   logger -t "$LOGTAG" "UPDATE URL BLACKLISTS: start"
  79.  
  80. # olecam, 15/09/2004: Non implΘmentΘ sur les SLIS versaillais 
  81. #  
  82. #  # Test if we have enough memory and cpu to make the .db files
  83. #  declare -i MEM=`free -m|grep "Mem:"|awk '{print $2}'`
  84. #  declare -i BOGOMIPS=`grep bogomips /proc/cpuinfo |awk '{print $3}'|cut -d. -f1`
  85. #  if [ $MEM -lt 127 -o $BOGOMIPS -lt 1500 ]
  86. #  then
  87. #    LOWRESSOURCES=1
  88. #    logger -t "$LOGTAG" "Low ressources detected, will use the precompiled version of the adult blacklist..."
  89. #  else
  90. #    LOWRESSOURCES=0
  91. #  fi
  92. LOWRESSOURCES=0
  93.  
  94.   # Check the version of the files to download
  95.   if [ "`cat /etc/version_slis_num`" != "3.1" ]
  96.   then
  97.     VER=2.x_3.0
  98.   else
  99.     VER=3.1
  100.   fi
  101.  
  102.   # Download the bases
  103.   cd /usr/local/squid/squidGuard/db
  104.   if [ "$LOWRESSOURCES" = "1" ]
  105.   then
  106.     rm -f adult.tar.gz
  107.     rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/adult-precompiled-$VER.tar.bz2 .
  108.   else
  109.  rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/adult.tar.gz .
  110.   fi
  111.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/warez.tar.gz .
  112.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/forums.tar.gz .
  113.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/publicite.tar.gz .
  114.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/academie.tar.gz .
  115.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/tricheur.tar.gz .
  116.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/agressif.tar.gz .
  117.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/drogue.tar.gz .
  118.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/redirector.tar.gz .
  119.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/strict_redirector.tar.gz .
  120.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/radio.tar.gz .
  121.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/mobile-phone.tar.gz .
  122.   rsync rsync://$RSYNC_HOST/$RSYNC_MODULE/webmail.tar.gz .
  123.   logger -t "$LOGTAG" "Blacklists installation. PLEASE WAIT..."
  124.  
  125.   # Extract the bases
  126.   if [ "$LOWRESSOURCES" = "1" ]
  127.   then
  128.     rm -f adult/domains
  129.     rm -f adult/urls
  130.     tar jxf adult-precompiled-$VER.tar.bz2
  131.   else
  132.     tar zxf adult.tar.gz
  133.   fi
  134.   tar zxf warez.tar.gz
  135.   tar zxf forums.tar.gz
  136.   tar zxf publicite.tar.gz
  137.   tar zxf academie.tar.gz
  138.   tar zxf tricheur.tar.gz
  139.   tar zxf agressif.tar.gz
  140.   tar zxf drogue.tar.gz
  141.   tar zxf redirector.tar.gz
  142.   tar zxf strict_redirector.tar.gz
  143.   tar zxf radio.tar.gz
  144.   tar zxf mobile-phone.tar.gz
  145.   tar zxf webmail.tar.gz
  146.   /usr/local/sbin/permslis
  147.  
  148.   # Make the .db files
  149.   if [ "$LOWRESSOURCES" = "0" ]
  150.   then
  151.     /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/adult/domains
  152.     /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/adult/urls
  153.   fi
  154.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/warez/domains
  155.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/warez/urls
  156.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/forums/domains
  157.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/forums/urls
  158.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/publicite/domains
  159.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/publicite/urls
  160.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/academie/domains
  161.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/academie/urls
  162.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/agressif/domains
  163.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/agressif/urls
  164.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/drogue/domains
  165.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/drogue/urls
  166.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/tricheur/domains
  167.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/tricheur/urls
  168.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/redirector/domains
  169.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/redirector/urls
  170.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/strict_redirector/domains
  171.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/strict_redirector/urls
  172.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/radio/domains
  173.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/mobile-phone/domains
  174.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/mobile-phone/urls
  175.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/webmail/domains
  176.   /usr/local/squid/bin/squidGuard -C /usr/local/squid/squidGuard/db/webmail/urls
  177.   logger -t "$LOGTAG" "Restarting proxy."
  178.   killall -HUP squid
  179.   logger -t "$LOGTAG" "UPDATE URL BLACKLISTS: end"
  180. fi
  181. ###
  182.  
  183. ##############################
  184. logger -t "$LOGTAG" "$SCRIPT_STATUS_MSG: successed."
  185.  
  186. rm -f $LOCKFILE
  187.