kalleplom
Registered User
Hi!
Eins vorweg: Ich bin sicher, dass meine Vorgehensweise nicht die intellenteste
ist..
Ich beschreibe also mein Problem und nebenbei frage ich mal, was ihr von der Systematik haltet.. ich bin ja auch nur HTML Programmierer.
Ich hab mir ein bash-backup-script zusammengebastelt, dass allemöglichen Webserverdaten sichern soll. Das htdocs Verzeichnis, die MySQL Datenbanken, apache-config, etc.
System ubuntu 10.4, apache 2.2 mysql 5.1(?)
Hab mir also eine Routine geschrieben, die wie folgt aussieht:
Das macht also anhand der Verzeichnisse im MySQL Datadir dumps von der jeweiligen DB, packt den kram, speichert ihn lokal zwischen und schiebt ihn dann per FTP auf den entsprechenden Server. rsync auf ein ftpfs gemountetes verzeichnis hatte damals auf debian noch funktioniert.. aber das ist ein anderes Problem.
Das eigentliche Problem ist: Die Liste, die per ls -l ausgegeben wird sieht auf der Konsole anders aus, als die, die per cronjob ausgeführt wird.
Wenn ich das Script in putty aufrufe funktioniert es so, wie ich mir das denke.
Die Verzeichnisnamen werden richtig herausgelesen. Der cronjob aber nutzt dann nicht den Verzeichnisnamen sondern das Datum(!). Als würde per cron das ls eine andere Ausgaben mache als ein Direktaufruf.
Als mein Server noch mit debian lief, funktionierte das alles wunderbar.
Nur hier eben nicht mehr.
Könnt ihr mir noch helfen?
grüße
Eins vorweg: Ich bin sicher, dass meine Vorgehensweise nicht die intellenteste
ist..
Ich beschreibe also mein Problem und nebenbei frage ich mal, was ihr von der Systematik haltet.. ich bin ja auch nur HTML Programmierer.
Ich hab mir ein bash-backup-script zusammengebastelt, dass allemöglichen Webserverdaten sichern soll. Das htdocs Verzeichnis, die MySQL Datenbanken, apache-config, etc.
System ubuntu 10.4, apache 2.2 mysql 5.1(?)
Hab mir also eine Routine geschrieben, die wie folgt aussieht:
Code:
echo "Dump: databases"
DIRS=`ls -l /var/lib/mysql | awk '{
if( $1 ~/^drwx/ ){
print $8
}
}'`
for keys in ${DIRS}
do
dt=`date +%Y-%m-%d-%H%M`
`mysqldump ${keys} --quote-names --allow-keywords --complete-insert -u root --password=${mr} | bzip2 > /bak/database/${dt}-${keys}.sql.bz2`
`ncftpput -R -u ${fuser} -p ${fpass} ftpserver.com /bak/database /bak/database/${dt}-${keys}.sql.bz2`
done
Das macht also anhand der Verzeichnisse im MySQL Datadir dumps von der jeweiligen DB, packt den kram, speichert ihn lokal zwischen und schiebt ihn dann per FTP auf den entsprechenden Server. rsync auf ein ftpfs gemountetes verzeichnis hatte damals auf debian noch funktioniert.. aber das ist ein anderes Problem.
Das eigentliche Problem ist: Die Liste, die per ls -l ausgegeben wird sieht auf der Konsole anders aus, als die, die per cronjob ausgeführt wird.
Wenn ich das Script in putty aufrufe funktioniert es so, wie ich mir das denke.
Die Verzeichnisnamen werden richtig herausgelesen. Der cronjob aber nutzt dann nicht den Verzeichnisnamen sondern das Datum(!). Als würde per cron das ls eine andere Ausgaben mache als ein Direktaufruf.
Als mein Server noch mit debian lief, funktionierte das alles wunderbar.
Nur hier eben nicht mehr.
Könnt ihr mir noch helfen?
grüße