[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
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è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 à 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és ou conseillé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\"> <u onmouseover=\"return escape".gettext("('Indiquer le support sur lequel archiver. /tmp pour le mettre dans le répertoire tmp.")."<br><br>".gettext("Pour archiver sur une bande indiquer /dev/st0 (à vérifier en fonction de votre machine).')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> </td></tr>\n"; 146 echo "<tr><td>".gettext("Taille de l'archive")."</td><td><input type=\"text\" name=\"ArchiveSplit\" value=\"$ArchiveSplit\"> <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ée en plusieurs fichiers de 650.<br><br>Si vous laissez vide, aucune taille limite ne sera donnée (0 pas défaut).')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> </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> <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équent dans un établissement scolaire.<br>Ne pas oublier dans la configuration géné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é.<br>Les machines windows sont recherchées avec leur nom netbios.<br><br>Attention : les firewall sur les machines à sauvegarder, peuvent bloquer la recherche de la machine.')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> </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é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 " <u onmouseover=\"return escape".gettext("('Sélectionner le type de protocole à utiliser pour faire les sauvegardes.<br><br> - smb : à 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écessaires afin de pouvoir faire les sauvegardes.<br><br> - rsync : est utilisé pour faire une sauvegarde sur une machine distante, via un tunnel crypté SSH. Vous devez fournir la clé que vous avez généré sur le serveur de sauvegarde à la machine à 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> "; 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épertoires à Sauvegarder")."</td></tr>\n"; 193 } 194 195 if ($Model=="Se3") { 196 echo "<tr><td>"; 197 echo "ACL ".gettext("des répertoires")." /var/se3 ".gettext("et")." /home </td><td align=\"center\"><input type=\"checkbox\" name=\"AclName\" checked disabled>"; 198 echo " <u onmouseover=\"return escape".gettext("('Les ACL de /var/se3 sont sauvegardées automatiquement toutes les nuits, dans /var/se3/save, les ACL de home, n\'ont pas besoin de l\'être car reconstruite automatiquement.')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> \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 " <u onmouseover=\"return escape".gettext("('L\'annuaire LDAP est sauvegardé automatiquement toutes les nuits dans /var/se3, en sauvegardant ce répertoire vous les sauvegardez donc aussi.')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> \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 " <u onmouseover=\"return escape".gettext("('Une partie des bases MySQL (se3db et mysql) sont sauvegardé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> \n"; 214 echo "</td></tr>"; 215 } 216 if($TypeServer!="") { 217 echo "<tr><td width=\"40%\">".gettext(" Répertoires à sauvegarder :")."</td>"; 218 echo "<td><input type=\"text\" name=\"Share\" value=\"$Share\" size=\"35\"> <u onmouseover=\"return escape".gettext("('Indiquer les répertoires à sauvegarder. Vous devez mettre des ; entre chaque répertoire.<br>Par exemple /etc;/var/se3;/home<br><br>Pour les machines Windows indiquer C$;D$.<br>Attention : les fichiers systèmes en utilisation, ne peuvent pas être sauvegardés.')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> </td></tr>\n"; 219 echo "<tr><td>".gettext("Exclusions :")." </td><td><input type=\"text\" name=\"BackupFilesExclude\" size=\"35\" value=\"$BackupFilesExclude\"> <u onmouseover=\"return escape".gettext("('Indiquer ici les exclusions. Celle-ci se font par rapport aux répertoires à sauvegarder.<br><br>Par exemple, si vous avez décidé de sauvegarder le répertoire /etc et que vous ne souhaitez pas sauvegarder le sous répertoire ssh indiquer ici \'ssh\' sans indiquer le répertoire parent.<br><br>Pour les machines Windows, si vous avez indiqué C$ et que vous ne souhaitez pas sauvegarder le répertoire windows, indiquer ce répertoire dans cet espace.')")."\"><img name=\"action_image2\" src=\"../elements/images/system-help.png\"></u> </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é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écifique pour cette machine.<br> Pour revenir à 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é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 "> <u onmouseover=\"return escape".gettext("('Si vous souhaitez une configuration particulière par machine, par rapport à la configuration générale qui s\'applique à 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> </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 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |