|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Aug 2002
Messaggi: 400
|
Bash scripting...dov'e' l'errore?
Scopo dello script: montare una dir su un server windown remoto e farci su il backup di alcuni files "pacchettandoli" con tar.
Lo script non funziona, da' questo errore: tar: /mnt/backup/Backups200/www.tar: Cannot stat: No such file or directory per ogni directory, anche se la dir viene montata corettamente.... help! Codice:
#!/bin/bash
#Backuppo il backuppabile su Transylvania se possibile
echo "Backup in corso..."
PRIO=18 #Priorita' backup
BACKUPTO="Backups200" #Dir di destinazione
BACKUPFROM=("/var/www" "/var/ftp" "/var/mail" "/home" "/root" "/etc" "/var/log" "/var/lib/mysql" "/var/wwws") #Dirs da backuppare
BACKUPNAMES=("www" "ftp" "mail" "home" "root" "etc" "log" "mysql" "wwws") #Nomi files bz2
MOUNTPOINT="/mnt/backup"
SMBTARGET="//Transylvania/Dati"
SMBUSER="webserver"
SMBPASS="xxx"
#Controllo almeno un po' che i prametri siano ok
if [ ${#BACKUPFROM[*]} != ${#BACKUPNAMES[*]} ]
then
echo "Errore interno dello script. (${#BACKUPFROM[*]} ${#BACKUPNAMES[*]})"
exit 1
fi
echo "Monto la dir x il backup..."
#Smonto la dir se fosse gia' montata
umount $MOUNTPOINT
#Monto la mia dir o esco se qlc nn va
mount -t smbfs -o username=$SMBUSER,password=$SMBPASS $SMBTARGET $MOUNTPOINT || exit 1
#Backuppo
echo "Inizio copia files"
i="0"
while [ $i -lt ${#BACKUPFROM[*]} ]
do
echo Backuppo: ${BACKUPFROM[$i]}
nice -n $PRIO tar -cPfv $MOUNTPOINT/$BACKUPTO/${BACKUPNAMES[$i]}.tar ${BACKUPFROM[$i]}/
i=$[$i+1]
done
echo "Smonto la dir..."
umount $MOUNTPOINT || exit 2
echo "Fatto."
exit 0
__________________
-=( Trust No One )=- |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2002
Città: Empoli (FI)
Messaggi: 688
|
Secondo me il rpblema sta nel fatto che non crei la directory $BACKUPTO
prova a sostituire il contenuto del ciclo con Codice:
i="0"
mkdir -p $MOUNTPOINT/$BACKUPTO/
cd $MOUNTPOINT/$BACKUPTO/
while [ $i -lt ${#BACKUPFROM[*]} ]
do
echo Backuppo: ${BACKUPFROM[$i]}
nice -n $PRIO tar -cPjvf ${BACKUPNAMES[$i]}.tar.bz2 ${BACKUPFROM[$i]}/
i=$[$i+1]
done
Inoltre la cosa che segue l'opzione f deve essere direttamente il file destinazione. Se invece la directori $backupto esiste già nel tuo flesystem questo è solo un vaneggiamento John
__________________
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Aug 2002
Messaggi: 400
|
Grazie per la risposta!
mi ero dimenticato che f dev'essere l'ultima opzione $BACKUPTO esiste gia'. Risolto. P.s. Avevo tolto j e l'estensione bz2 per motivi di rapidità nei test
__________________
-=( Trust No One )=- |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 545
|
Quote:
__________________
Linux Registered User Linux Registered Machine |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Aug 2002
Messaggi: 400
|
Tra l'altro questo script è nato bastardo... la prima volta che l'ho provato mi son dimenticato di essere root e ho wippato /etc
-_-'
__________________
-=( Trust No One )=- |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:04.



















