web-dev-qa-db-fra.com

Quelle est la meilleure façon de sauvegarder les fichiers de configuration Apache2, mysql, cvs et webmin?

J'ai Ubuntu 9.10 cloud serveurs en cours d'exécution. J'utiliserai l'outil Webmin d'administration du serveur pour la sauvegarde des ressources telles que les fichiers de configuration Apache, mysql, cvs, le répertoire/var/www et les fichiers de configuration webmin complets. Parfois, ils ne sont pas sauvegardés et je vais les vérifier avec leur date de modification.

Y at-il un meilleur moyen de sauvegarder toutes les ressources ci-dessus sans aucune faille avec un autre outil ou en ligne de commande?

5
user3215

Mon vote ici pour backupninja .

alt text

Je pense que cela devrait gérer tous vos besoins ici.

Cette application est "une grève morte des fleurs florales silencieuses contre la perte de données" , et basée sur rdiff-backup.

Fonctionne silencieusement à l'arrière-plan, comme tout bon ninja devrait le faire. Dispose d'un démon d'installation très utile et facile appelé ninjahelper .

À partir de la page Description:

Backupninja vous permet de coordonner les sauvegardes du système en déposant quelques fichiers de configuration simples dans /etc/backup.d/. La plupart des programmes que vous pouvez utiliser pour effectuer des sauvegardes n'ont pas leur propre format de fichier de configuration. Backupninja fournit un moyen centralisé de configurer et de coordonner de nombreux utilitaires de sauvegarde.

Caractéristiques:

  • facile à lire les fichiers de configuration de style ini.
  • vous pouvez déposer des scripts pour gérer de nouveaux types de sauvegardes.
  • les actions de sauvegarde peuvent être planifiées.
  • vous pouvez choisir quand les emails de rapport d'état vous sont envoyés (toujours, toujours sur avertissement, sur erreur, jamais).
  • l'assistant basé sur la console (ninjahelper) facilite la création de fichiers de configuration des actions de sauvegarde.
  • les mots de passe ne sont jamais envoyés via la ligne de commande aux programmes d'assistance.
  • pour sauvegarder une base de données db ou sql, vous ne pouvez pas simplement copier des fichiers de base de données. backupninja vous aide à exporter les données en toute sécurité dans un format que vous pouvez sauvegarder.
  • fonctionne avec Linux-Vservers.

Les types de sauvegarde incluent:

  • sauvegarde sécurisée, distante, incrémentielle du système de fichiers (via rdiff-backup). les données incrémentielles sont compressées. les autorisations sont conservées même avec un utilisateur de sauvegarde sans privilège.
  • informations de base sur le système et le matériel.
  • sauvegardes distantes cryptées (via duplicité).
  • sauvegarde sécurisée des bases de données MySQL, PostgreSQL, OpenLDAP et Subversion.
  • graver des CD/DVD ou créer des ISO.

... Je pense que cela sera beaucoup plus facile pour commencer que d'écrire un script personnalisé à partir de zéro, bien que vous deviez peut-être en travailler pour obtenir les bases de données MySQL.

(De plus, allez, quel nom génial?)

Capture d'écran de l'écran de configuration "ninjahelper":

alt text

5
emf

Il existe un paquetage appelé etckeeper qui peut conserver de manière transparente vos fichiers de configuration /etc dans le contrôle de version afin que vous puissiez facilement les sauvegarder, les restaurer, etc.

Vous pouvez ensuite créer un script avec n'importe quel système de contrôle de version que vous utilisez pour le sauvegarder où vous le souhaitez afin que vous ayez non seulement des sauvegardes des fichiers, mais également un historique de toutes les modifications qui y ont été apportées.

2
Jorge Castro

Vous pouvez utiliser rsnapshot. J'utilise rsnapshot pour automatiser les sauvegardes à distance d'un serveur de production en suivant ce guide .

1
brianwc

J'ai tendance à écrire un travail cron qui crée un dossier horodaté, j'écris un dump SQL, puis rsync tous les fichiers de configuration ou tout ce que je veux sauvegarder.

Puis chaque semaine, j'ai une autre tâche cron qui scp la présente sur une autre machine. J'ai donc une copie hors ligne au cas où le disque dur tombe en panne.

J'ai encore une autre tâche périodique pour supprimer les sauvegardes de plus de 3 mois.

Vous pouvez écrire stdout dans un fichier journal dans/var/log ou utiliser sendmail pour notifier un compte local en cas d'échec. Ainsi, lorsque vous vous connecterez, vous recevrez une notification. (Vous pouvez également utiliser un script de bot Twitter/messagerie instantanée pour fournir des notifications. J'utilise Prosody et un bot de messagerie instantanée que j'ai écrit [environ 150 lignes de python] pour les notifications relatives au système d'un client).

J'espère que ça t'as aidé!

0
tommed