Bonsoir à toutes et tous,
Le contexte :
Nous sommes en PHP Version 7.1.14 sur un serveur GATOR
- J'ai besoin de créer un fichier .tar.gz de l'un de nos sites afin de pouvoir récupérer automatiquement le fichier créé sur notre NAS...
- Notre hébergeur (GATOR) nous bloque par une erreur time out gateway au bout de 4 minutes...
- J'ai donc créé une tâche CRON afin de le lancer directement...
- Le fichier généré a une taille de plus de 4 go et atteint de ce fait la limite de traitement autorisée par GATOR
or notre site nom compressé fait 16 go
Mon souci :
J'ai besoin de fragmenter la sauvegarde afin d'avoir plusieurs fichiers au lieu d'un seul "gros"
Pour cela j'ai créé un script php (voir ci-dessous) avec la ligne suivante que je lance via une tâche cron ...
$cmd_public = "tar -czf /home3/roiarthur/backup/site_test/site_prod_public-".$timestamp.".tar.gz /home3/roiarthur/public_html --exclude=/home3/roiarthur/public_html/internal-data";
C'est OK sauf que ... l'exclusion du répertoire /internal_data n'est pas exécutée...
J'ai regardé dans l'aide php et j'ai même testé les scripts ONLINE (pas d'erreurs détectées)
pouvez vous m'expliquer mon erreur ?
1 2 3 4 5 6 7 8
| <?php
$timestamp = time();
$cmd_suppr = "rm -fd /home3/roiarthur/backup/site_test/*.tar.gz";
$cmd_public = "tar -czf /home3/roiarthur/backup/site_test/site_prod_public-".$timestamp.".tar.gz /home3/roiarthur/public_html --exclude=/home3/roiarthur/public_html/internal-data";
system ($cmd_suppr." && ".$cmd_public)
?> |
J'ai également essayé ces syntaxes sans aucune amélioration
$cmd_public = "tar -czvf /home3/roiarthur/backup/site_test/site_prod_public-".$timestamp.".tar.gz --exclude '/home3/roiarthur/public_html/internal-data' /home3/roiarthur/public_html";
et
$cmd_public = "tar --exclude '/home3/roiarthur/public_html/internal-data -czvf /home3/roiarthur/backup/site_test/site_prod_public-".$timestamp.".tar.gz /home3/roiarthur/public_html";
Voilà, c'est sûrement évident pour les pros mais j'avoue humblement que je ne trouve pas la solution.
Désolé si cette demande vous parait naïve mais mon niveau en php est triple buse .... 
Merci d'avance pour vos réponses
Bonne soirée à vous tous
Amicalement,
Pierre
Partager