Eigene Confixx Erweiterung für User

coolsoft

Registered User
Ich habe ein tägliches Backup aller User (www & mySQL) über die Cron eingerichtet. Funktioniert auch tadellos.

Mein Plan ist es nun jedem User zu ermöglichen sein Backup als .tar.gz über Confixx zu downloaden. Hat jemand eine Idee oder Howto wo ich nachlesen kann wie man am besten eine eigene Erweiterung einbaut?:confused:

Der Server steht bei Server4You mit der Confixx RPM Version:
confixx-premium-1.0.3-1.intergenia
Soviel ich weis ist das die von server4you umgebaute Version von Confixx 3.1

Danke im Voraus für eine Hilfe...
 
Ja ok, die Version ist ja im Prinzip egal...
Ich brauch eine Anleitung wie ich zu einer eigenen Erweiterung komme ;-)
 
warum schreibstr du nicht ein kleines cgi script und legst das jedem user in sein webdir

du musst doch nur z.b /var/www/web21/html mit zip oder so packen lassen und dann saugt sich das der kunde per ftp

zip -r html.zip /var/www/web21/html ist doch ausreichend würde ich meinen
 
Weil dann würde bei einem 7 Tage Backup der Webspace des Users ganz schön eingeschränkt. Das Backup soll natürlich nicht zum quota beitragen. Ausserdem macht es für die Sicherheit wenig Sinn das Backup auf der gleichen Partition im gleichen Verzeichnis an zu legen. EIn Backup on demand dauert bei einem Webspace von meheren GB zu lange über ein cgi. Das Backup Script habe ich ja schon in der cron und das funktioniert auch problemlos. Die Frage ist nur wie ich über das User-Confixx an die Backupdaten komme die ja bereits existieren.
 
Hilft dir das wirklich weiter wenn du das weist :D

-5 5 * * * /sbin/own/backup.sh >/dev/null 2>&1 # Taeglich 5 Minuten nach 5 Uhr ausfuehren

Oder soll ich hier mein Backupscript posten? :rolleyes:
 
Momentan sieht das Backupscript so aus, fehlt noch dass jede User DB auch einzeln gesichert wird und nicht komplett...

Code:
#!/bin/bash
################################################
# Backupscript by Alexander Sell alex@inetw.de #
# Version 1.0 04.04.2006                       #
################################################

MYUSER=backupUser
MYPASS=backupUserPasswort

export LANG="de_DE"

# Wochentag und aktuelles Datum  abfragen
 WOTAG=`date +%a` # Wochentag mit den ersten 2 Buchstaben
 WOTAG1=`date +%A` # Wochentag als ganzes Wort
 UHRZEIT=`date +%H%M` # Uhrzeit: Stunde+Minute
 DATUM=`date +%Y.%m.%d` # Datum: Jahr.Monat.Tag
 NUMWOTAG=`date +%u` # Mo=1 bis So=7

 WWW_BACKUPDIR="/backup/$NUMWOTAG-$WOTAG/www"  #local
 mySQL_BACKUPDIR="/backup/$NUMWOTAG-$WOTAG/mySQL"  #local

#########################
# Verzeichnisse anlegen #
#########################
 mkdir -p $WWW_BACKUPDIR
 mkdir -p $mySQL_BACKUPDIR

######################################################
# gemeinsames MySql Dump aller Datenbanken erstellen #
######################################################
if ( test -d /$mySQL_BACKUPDIR ) then
  cd $mySQL_BACKUPDIR
#  mysqldump -AaCceQ -u$MYUSER -p$MYPASS -r alle_Datenbanken.db
  mysqldump -AaCceQ -u$MYUSER -p$MYPASS | bzip2 -c > alle_Datenbanken.bz2
else
  echo "mySQL Backup-Verzeichnis existiert nicht"
fi

#################################################################
# einzelnes Backup aller WWW-Benutzer Verzeichnisse             #
# NICHT als tar.bz2 da sonst zuviel Resourcen verbraucht werden #
#################################################################

# Komprimieren der www-Verzeichnisse
# Jedes Benutzerverzeichnis von /srv/www in ein eigenes tar.gz Archiv
# Speicherort: /backup/$WOTAG/www/$user.tar.gz

cd /srv/www
for i in * ;
  do
   if [[ $i == web* ]]; then
     tar czf $WWW_BACKUPDIR/${i}.tar.gz "$i";
     # Besitzer web[X]:ftponly
     chown $i:ftponly $WWW_BACKUPDIR/${i}.tar.gz
     # Nur Besitzer darf lesen
     chmod 400 $WWW_BACKUPDIR/${i}.tar.gz
     #echo $WWW_BACKUPDIR/$i;
   fi
done
 
das sind ja schon 3 wünsche auf einmal :-)

1. das backup soll kein usertraffik verbrauchen
2. das backup soll nicht auf der gleichen partition liegen wie die webseite
3. das backup sollte aus files in bestimmter maximalgröße gesplitet werden


zu 1 wenn das script von dir als ISP als leistung angeboten wird, dann evt einen anderen ansatz suchen. anderer Dienst auf dem server den der kunde aufsuchen kann

zu 2, du brauchst einen 2. server oder ein script das die Datei des Kunden vom Backup server leecht. denn meist hat man zu einem backupserver keinen direkten zugriff nur RZ intern

zu 3 wenn die datein sehr groß werden muss halt mit einem split parameter gepackt werden, das gibt dein script doch her

ich dumpe die sql daten nicht, ich archiviere alles unterhalb von /var/lib/mysql/ und lasse mir jedes verzeichniss als einzelnes tar.gz ablegen

lässt sich simpel zurück spielen ohne mysql software. natürlich ist das alles adminarbeit. der kunde muss nur mailen das er ein backup braucht dann lege ich dem kunden ein tar.gz in sein Files verzeichniss oder überspiele ihm seinen content direkt.
ansonnsten ist jeder kunde für sein backup selber verantwortlich, die backup funktion funktioniert ja im confixx recht gut und das kostet natürlich traffic beim saugen.
 
3 Wünsche?
Usertraffic kann der User gerne verbrauchen, aber die Backups sollen nicht im gleichen Verzeichnis und auf der selben Partition sein wie der Webspace. Ist sonst wenig sinnvoll.
Und gesplittet soll doch nach der Grpße auch nichts werden.
Ich denke d hast etwas völlig falsch verstanden.

Sicher steht ein FTP Backupserver zur verfügung. Aber wesentlich kleiner als benötigt, also wenig sinnvoll!

Das mit dem Backup aus /var/lib/mysql hört sich gut an. Funktioniert das dann auch problemlos wenn man alle 3 Dateien .MYD .MYI .frm einer Datenbank zurück überträgt?

Der Gund weshalb ds in Confixx eingebunden werden soll ist der weil der Kunde das selbst machen soll und nicht den System Administrator damit belästigen sich um Kunden-Backups zu kümmern... :eek:
 
jo das funzt mit allen 3 dateien ohne probleme. Natürlich chown ond chmod danach setzen.

Ich dumpe auch, aber für die Kunden und nicht für mich als admin.
 
Back
Top