[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3-backup/var/www/se3/sauvegarde/ -> modif_host.php (source)

   1  <?php
   2  
   3  
   4     /**
   5     
   6     * Permet configurer la sauvegarde (Backuppc)
   7     * @Version $Id: modif_host.php 4600 2009-10-22 08:40:36Z gnumdk $ 
   8     
   9     * @Projet LCS / SambaEdu 
  10     
  11     * @auteurs Philippe Chadefaux
  12  
  13     * @Licence Distribue selon les termes de la licence GPL
  14     
  15     * @note 
  16     
  17     */
  18  
  19     /**
  20  
  21     * @Repertoire: sauvegarde
  22     * file: modif_host.php
  23  
  24    */    
  25  
  26  
  27  include  "entete.inc.php";
  28  require ("config.inc.php");
  29  require  ("ldap.inc.php");
  30  require  ("ihm.inc.php");
  31  include ("fonction_backup.inc.php");
  32  include ("fonctions_rsyncdconf.inc.php");
  33  
  34  require_once ("lang.inc.php");
  35  
  36  bindtextdomain('sauvegarde',"/var/www/se3/locale");
  37  textdomain ('sauvegarde');
  38  
  39  
  40  
  41  $Share=$_GET['Share'];
  42  $BackupFilesExclude=$_GET['BackupFilesExclude'];
  43  
  44  
  45  // Verifie les droits
  46  if (is_admin("system_is_admin",$login)=="Y") {
  47      $HostServer=$_GET['HostServer'];
  48  
  49  if ($Share != "") {
  50          $Share = stripslashes($Share);
  51  }
  52  if ($BackupFilesExclude != "") {
  53          $BackupFilesExclude = stripslashes($BackupFilesExclude);
  54  }
  55          
  56  /****************************************************************************************/
  57  // Relit le fichier pour avoir les variables
  58  
  59  if ($pass == "") {
  60    $XferMethod = variables(XferMethod,$HostServer);
  61    $dhcp = GetDhcp($HostServer);
  62    $TypeServer = GetTypeServer($HostServer);
  63    if ($TypeServer =="") { $TypeServer="Autre"; }
  64    if ($XferMethod == "smb") {
  65      $Compte = variables(SmbShareUserName,$HostServer);
  66      $PassWord = variables(SmbSharePasswd,$HostServer);
  67      $Share = variables(SmbShareName,$HostServer);
  68    }    
  69    if ($XferMethod == "rsyncd") {
  70    #    $Share = variables(RsyncShareName,$HostServer);
  71  
  72        $Share = variables(Repertoire,$HostServer);
  73      $Compte = variables(RsyncdUserName,$HostServer);
  74      $PassWord = variables(RsyncdPasswd,$HostServer);
  75    }    
  76    if ($XferMethod == "rsync") {
  77        $Share = variables(RsyncShareName,$HostServer);
  78  
  79    }    
  80    $BackupFilesExclude = variables(BackupFilesExclude,$HostServer);
  81    $FullPeriod = variables(FullPeriod,$HostServer);
  82    $IncrPeriod = variables(IncrPeriod,$HostServer);
  83    $FullKeepCnt = variables(FullKeepCnt,$HostServer);
  84    $FullKeepCntMin = variables(FullKeepCntMin,$HostServer);
  85    $IncrKeepCnt = variables(IncrKeepCnt,$HostServer);
  86    $IncrKeepCntMin = variables(IncrKeepCntMin,$HostServer);
  87    $FullAgeMax = variables(FullAgeMax,$HostServer);
  88    $IncrAgeMax = variables(IncrAgeMax,$HostServer);
  89    $EMailAdminUserName = variables(EMailAdminUserName,$HostServer);
  90    $hourBegin = variables(hourBegin,$HostServer);
  91    $hourEnd = variables(hourEnd,$HostServer);
  92    $weekDays = variables(weekDays,$HostServer);
  93    $ArchiveDest = variables(ArchiveDest,$HostServer);
  94    $ArchiveSplit = variables(ArchiveSplit,$HostServer);
  95    
  96  
  97  // On traite si on doit afficher d'office la conf particuli&#232;re
  98    if (($FullPeriod != "") or ($IncrPeriod != "") or ($FullKeepCnt != "") or ($FullKeepCntMin != "") or ($IncrKeepCnt != "") or ($IncrKeepCntMin != "") or ($FullAgeMax != "") or ($IncrAgeMax != "") or ($EMailAdminUserName != "")) {
  99      $defo_conf = "Y";
 100    }    
 101  
 102  } // Fin du premier passage        
 103  
 104  /**********************************************************************/
 105  echo "<P><h1>".gettext("Sauvegarde de la machine")." $HostServer</h1></P>";
 106  echo "<br><br>";
 107  
 108  echo "<form method=\"get\" action=\"modif_host_suite.php\" >\n";
 109  
 110  echo "<input type=\"hidden\" name=\"HostServer\" value=\"$HostServer\" />";
 111  echo "<input type=\"hidden\" name=\"pass\" value=\"1\" />";
 112  echo "<input type=\"hidden\" name=\"TypeServer\" value=\"$TypeServer\" />";
 113  
 114  echo "<table align=center width=\"70%\" border=1 cellspacing=\"0\" cellpadding=\"0\">
 115        <tr><td colspan=\"2\" class='menuheader' height=\"30\" align=\"center\">".gettext("Machine &#224; sauvegarder")."</td></tr>\n";
 116            
 117  echo "<tr><td width=\"40%\">".gettext("Type de machine :")."</td>";
 118  echo "<td>$TypeServer</td></tr>";
 119  
 120  // Indique ici les choix impos&#233;s ou conseill&#233;s
 121      if (($TypeServer=="WinXP") and ($XferMethod=="")) {$XferMethod="smb";}
 122      if (($TypeServer=="WinXP") and ($Share=="")) {$Share="'C$'";}
 123       if ((TypeMachine()=="Se3") and ($TypeServer=="Local"))     { 
 124          $dhcp = "0";
 125          $XferMethod = "rsyncd";
 126          $Model = "Se3";
 127          $pass="0";
 128      }
 129      
 130      if ($TypeServer=="Archive") {
 131          $XferMethod = "archive";
 132      }    
 133      if ($TypeServer=="") { 
 134          $HostServer = "";
 135          $XferMethod = "";
 136      }
 137  
 138      if ($TypeServer=="Archive") {
 139  //      echo "<tr><td>Nom de l'archive</td><td><input type=text name=\"HostServer\" value=\"$HostServer\"></td></tr>";
 140        echo "</table>\n";
 141        echo "<br><br>";
 142  
 143        echo "<table align=center width=\"70%\" border=1 cellspacing=\"0\" cellpadding=\"0\">";
 144        echo "<tr><td colspan=\"2\" class='menuheader' height=\"30\"  align=\"center\">".gettext("Support d'archivage")."</td></tr>\n";
 145        echo "<tr><td>".gettext("Destination de l'archive")."</td><td><input type=\"text\" name=\"ArchiveDest\" value=\"$ArchiveDest\">&nbsp;<u onmouseover=\"return escape".gettext("('Indiquer le support sur lequel archiver. /tmp pour le mettre dans le r&#233;pertoire tmp.")."<br><br>".gettext("Pour archiver sur une bande indiquer /dev/st0 (&#224; v&#233;rifier en fonction de votre machine).')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr>\n";
 146        echo "<tr><td>".gettext("Taille de l'archive")."</td><td><input type=\"text\" name=\"ArchiveSplit\" value=\"$ArchiveSplit\">&nbsp;<u onmouseover=\"return escape".gettext("('Indiquer la taille de l\'archive. Par exemple pour archiver sur un CD, en utilisant un graveur, indiquer 650. l\'archive sera alors coup&#233;e en plusieurs fichiers de 650.<br><br>Si vous laissez vide, aucune taille limite ne sera donn&#233;e (0 pas d&#233;faut).')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr>\n";
 147        echo "</table><br><br>";
 148        echo "<input type=\"hidden\" name=\"XferMethod\" value=\"archive\" />";
 149        echo "<input type=\"hidden\" name=\"dhcp\" value=\"1\" />";
 150      } else {
 151                
 152         echo "<tr><td>".gettext("Nom DNS")."</td><td><select name=\"dhcp\">";
 153         echo "<option value=\"0\""; if ($dhcp=="0") echo " selected"; echo ">".gettext("Trouvable par son nom (Ip fixe)")."</option>";
 154         echo "<option value=\"1\""; if ($dhcp=="1") echo " selected"; echo ">".gettext("Non trouvable par son nom (Pas d'ip fixe)")."</option>";
 155         echo "</select>&nbsp;<u onmouseover=\"return escape".gettext("('Si votre machine n\'est pas dans un serveur de nom, vous devez indiquer Pas d\'ip fixe. Ce cas est le plus fr&#233;quent dans un &#233;tablissement scolaire.<br>Ne pas oublier dans la configuration g&#233;n&#233;rale d\'indiquer la plage d\'adresses pour la recherche des machines.<br>Ce cas concerne toutes les machines clientes<br>Si votre machine est trouvable par son nom, indiquer Ip fixe.<br><br>Comment savoir si une machine est visible par le serveur de sauvegarde ?<br>Essayer depuis celui-ci de le pinguer avec le nom que vous avez indiqu&#233;.<br>Les machines windows sont recherch&#233;es avec leur nom netbios.<br><br>Attention : les firewall sur les machines &#224; sauvegarder, peuvent bloquer la recherche de la machine.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr>\n";
 156         echo "</table>\n";
 157  
 158         echo "<br><br>";
 159  
 160  
 161         echo "<table align=center width=\"70%\" border=1 cellspacing=\"0\" cellpadding=\"0\">";
 162         echo "<tr><td colspan=\"2\" class='menuheader' height=\"30\" align=\"center\">".gettext("Type de Sauvegarde")."</td></tr>\n";
 163         echo "<tr>
 164               <td width=\"50%\">".gettext("Type de sauvegarde :")."</td>
 165               <td><select name=\"XferMethod\" ONCHANGE=\"this.form.submit();\">
 166               <option value=\"\">".gettext("S&#233;lectionner")."</option>
 167               <option";
 168        if ($XferMethod=="smb") { echo " selected"; }
 169             echo ">smb</option><option";
 170      if ($XferMethod=="rsync") { echo " selected"; }
 171              echo ">rsync</option><option";
 172        if ($XferMethod=="rsyncd") { echo " selected"; }
 173              echo ">rsyncd</option></select>\n";
 174           echo "&nbsp;<u onmouseover=\"return escape".gettext("('S&#233;lectionner le type de protocole &#224; utiliser pour faire les sauvegardes.<br><br> - smb : &#224; utiliser pour sauvegarder les machines windows. Vous devez fournir un compte et un mot de passe pour se connecter. Il faut donner les droits n&#233;cessaires afin de pouvoir faire les sauvegardes.<br><br> - rsync : est utilis&#233; pour faire une sauvegarde sur une machine distante, via un tunnel crypt&#233; SSH. Vous devez fournir la cl&#233; que vous avez g&#233;n&#233;r&#233; sur le serveur de sauvegarde &#224; la machine &#224; sauvegarder afin de pouvoir vous y connecter. Voir la documentation.<br><br> - rsyncd : Vous devez mettre en place rsyncd sur la machine que vous souhaitez sauvegarder. Vous devrez indiquer compte plus mot de passe. Voir la documentation.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;";
 175              echo "<tr><td>";
 176        if(($XferMethod=="smb") or ($XferMethod=="rsyncd")) {
 177              if ($XferMethod == "rsyncd") { 
 178                  //On teste si rsyncd.conf et backuppc ont bien le meme compte
 179              //    $Compte=variable ("auth users");
 180              //    $PassWord=rsyncd_pass();                
 181              }
 182              echo "<TR><td>".gettext("Compte de connexion")."</td><td><input type=text name=\"Compte\" value=\"$Compte\"></td></tr>";
 183              echo "<tr><td>".gettext("Mot de passe")."</td><td><input type=text name=\"PassWord\" value=\"$PassWord\"></td></tr>";
 184        }
 185  
 186  
 187      echo "</table>\n";
 188        echo "<br><br>\n";
 189  
 190  if ($TypeServer!="") {
 191         echo "<table align=center width=\"70%\" border=1 cellspacing=\"0\" cellpadding=\"0\">";
 192         echo "<tr><td colspan=\"2\" class='menuheader' height=\"30\" align=\"center\">".gettext("R&#233;pertoires &#224; Sauvegarder")."</td></tr>\n";
 193  }
 194  
 195  if ($Model=="Se3") {
 196      echo "<tr><td>";
 197            echo "ACL ".gettext("des r&#233;pertoires")." /var/se3 ".gettext("et")." /home </td><td align=\"center\"><input type=\"checkbox\" name=\"AclName\" checked disabled>";
 198      echo "&nbsp;<u onmouseover=\"return escape".gettext("('Les ACL de /var/se3 sont sauvegard&#233;es automatiquement toutes les nuits, dans /var/se3/save, les ACL de home, n\'ont pas besoin de l\'&#234;tre car reconstruite automatiquement.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;\n";
 199      echo "</td></tr>";
 200            echo "<tr><td>";
 201            echo gettext("Annuaire LDAP")."</td><td align=\"center\"><input type=\"checkbox\" name=\"LdapName\" checked disabled>";
 202          echo "&nbsp;<u onmouseover=\"return escape".gettext("('L\'annuaire LDAP est sauvegard&#233; automatiquement toutes les nuits dans /var/se3, en sauvegardant ce r&#233;pertoire vous les sauvegardez donc aussi.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;\n";
 203      echo "</td></tr>";
 204            echo "<tr><td>";
 205            echo gettext("Base")." MySQL</td><td align=\"center\"><input type=\"checkbox\" name=\"MysqlName\"";
 206          $sql="SELECT value FROM params WHERE name='mysql_all_save';";
 207          $result=mysql_query($sql);
 208          $row = mysql_fetch_row($result);
 209          mysql_close ();
 210          echo $row[0];
 211            if($row[0]=="on") {echo " checked"; }
 212            echo ">";
 213        echo "&nbsp;<u onmouseover=\"return escape".gettext("('Une partie des bases MySQL (se3db et mysql) sont sauvegard&#233;es automatiquement. En cliquant sur sauvegarder les bases MySQL, vous allez sauvegarder les autres (Inventory ...).')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;\n";
 214      echo "</td></tr>";
 215       }
 216       if($TypeServer!="") {
 217               echo "<tr><td width=\"40%\">".gettext(" R&#233;pertoires &#224; sauvegarder :")."</td>";
 218               echo "<td><input type=\"text\" name=\"Share\" value=\"$Share\" size=\"35\">&nbsp;<u onmouseover=\"return escape".gettext("('Indiquer les r&#233;pertoires &#224; sauvegarder. Vous devez mettre des ; entre chaque r&#233;pertoire.<br>Par exemple /etc;/var/se3;/home<br><br>Pour les machines Windows indiquer C$;D$.<br>Attention : les fichiers syst&#232;mes en utilisation, ne peuvent pas &#234;tre sauvegard&#233;s.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr>\n";
 219           echo "<tr><td>".gettext("Exclusions :")." </td><td><input type=\"text\" name=\"BackupFilesExclude\" size=\"35\" value=\"$BackupFilesExclude\">&nbsp;<u onmouseover=\"return escape".gettext("('Indiquer ici les exclusions. Celle-ci se font par rapport aux r&#233;pertoires &#224; sauvegarder.<br><br>Par exemple, si vous avez d&#233;cid&#233; de sauvegarder le r&#233;pertoire /etc et que vous ne souhaitez pas sauvegarder le sous r&#233;pertoire ssh indiquer ici \'ssh\' sans indiquer le r&#233;pertoire parent.<br><br>Pour les machines Windows, si vous avez indiqu&#233; C$ et que vous ne souhaitez pas sauvegarder le r&#233;pertoire windows, indiquer ce r&#233;pertoire dans cet espace.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr>";
 220       }
 221       echo "</table>";
 222       echo "<br><br>";
 223  
 224       echo "<table align=center width=\"70%\" border=1 cellspacing=\"0\" cellpadding=\"0\">";
 225       echo "<tr><td colspan=\"2\" class='menuheader' height=\"30\" align=\"center\">".gettext("Configuration par d&#233;faut")."</td></tr>\n";
 226       if ($defo_conf == "Y") {
 227          echo "<tr><td align=\"center\" colspan=\"2\"><font color=\"orange\">".gettext("Vous aviez une configuration sp&#233;cifique pour cette machine.<br> Pour revenir &#224; la configuration par defaut, cliquer sur Oui,<br> pour la modifier cliquer sur Non.")."</font></td></tr>\n";
 228       }
 229       echo "<tr><td>".gettext("Souhaitez vous utiliser la configuration par d&#233;faut ?")." </td>\n";
 230       if ($defo=="") { $defo="Y"; }
 231       echo "<td align=\"center\">Oui : <input type=radio name=\"defo\" value=\"Y\"";
 232       if ($defo=="Y") { echo " checked"; }
 233       echo ">".gettext(" Non :")."<input type=radio name=\"defo\" value=\"N\"";
 234       if ($defo=="N") { echo " checked"; }
 235       echo ">&nbsp;<u onmouseover=\"return escape".gettext("('Si vous souhaitez une configuration particuli&#232;re par machine, par rapport &#224; la configuration g&#233;n&#233;rale qui s\'applique &#224; toutes les machines.<br> Cela n\'a un sens que si vous sauvegardez plusieurs machines.')")."\"><img name=\"action_image2\"  src=\"../elements/images/system-help.png\"></u>&nbsp;</td></tr></table>\n";
 236       echo "<br><br>";
 237   } // fin du cas archive
 238  
 239       echo "<center><input name=\"formsauv\" type=\"submit\"  value=\"".gettext("Valider")."\"></center>
 240         </form>\n";
 241  
 242  require ("pdp.inc.php");
 243  
 244  }
 245  ?>


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1