InSa ha scritto:
Salve a tutti, ho un file server(ino) con su ovviamente woody, e vorrei fare backup su pendrive. Ecco in pratica cosa vorrei fare io: ------------------------------------ #!/bin/bash mount /mnt/usb tar cvfjW /tmp/myBackup`date +%Y%m%d`.tar.bz2 /dir/da/backuppare/ ora tramite df dovrei vedere se in /mnt/usb c'è ancora spazio, io dalle(poche) conoscenze che ho sono addivato solo aif (df | grep /mnt/ust ha meno spazio di 80 mega) cancella il backup più vecchio su /mnt/usb (qui sopra si poteva anche fare un while, cioè cancella i backup vecchi finchè lo spazio minimo è 80 mega) in ogni caso poi copio il backup in /mnt/usb cp /tmp/myBackup`date +%Y%m%d`.tar.bz2 /mnt/usb umount /mnt/usb ------------------------------------ Qualche (grande) suggerimento? Grazie e ciao InSa
Non so se sia proprio giusto... Sono alle prime armi con gli script di Bash. Chiaramente non ti assicuro niente e non mi assumo responsabilità su eventuali file cancellati erroneamente.
Ciao, Pollo. ------------------------------------------------------------------------- #!/bin/bash FILE_BCK=/tmp/myBackup`date +%Y%m%d`.tar.bz2 tar cvfjW $FILE_BCK /dir/da/backuppare/ DIM_BCK=$(ls -s $FILE_BCK | cut -f1 -d" ") mount /mnt/usb FREE=$(df | grep /mnt/usb | cut -f21 -d" ") while [ "DIM_BCK" -gt "$FREE" ] do NUM_FILE=$(ls /mnt/usb/*.tar.bz2 | wc -l) if [ "$NUM_FILE" -eq "0"] then echo "Non ho spazio a sufficenza: backup impossibile" exit else OLDEST_FILE=$(ls /mnt/usb/*.tar.bz2 | sort | head -n1) rm -f /mnt/usb/$OLDEST_FILE FREE=$(df | grep /mnt/usb | cut -f21 -d" ") fi done cp $FILE_BCK /mnt/usb umount /mnt/usb