Mostra la pàginaRevisions anteriorsQuè hi enllaçaExporta a PDFTorna dalt Aquesta pàgina és només de lectura. Podeu veure'n el codi font, però no podeu canviar-la. Consulteu el vostre administrador si penseu que això és degut a algun error. = backup 10 minutos al día == explicación Mira en los directorioes asignados si ha habído cambios desde la última vez, si hay algún cambio, hace el backup completo, lo encripta y lo envía a un SFTP Si no hay cambios, envía al SFTP un archivo SINCAMBIOS vacío. == código <code bash> #!/bin/bash # # FUNCIONES # function calcula_checksum() { # calcula el SHA1 de los ficheros contenidos en el directorio pasado por parámetroe TMP=$(find "$DIR_ORIGEN/$1" -type f -print0 | xargs -0 sha1sum | sort | cut -d " " -f 1 | sha1sum) CHEKSUM_ACT=$(echo $TMP | cut -d " " -f1) unset TMP } # # VARIABLES # FICHERO="diezminutos_com" DIR_ORIGEN="/home/diezminutos" CHEKSUM_ACT="" CAMBIOS="NO" FECHA=`eval date +%y%m%d` # calcula SHA1 directorios declare -a DIRECTORIOS=("app.10minutos" "appb.10minutos" "public" "beta" "system") for directorio in "${DIRECTORIOS[@]}"; do ## leer checksum anterior, si existe CHEKSUM_ANT="" if [ -e "$DIR_ORIGEN/$directorio.checksum" ]; then CHEKSUM_ANT=$(cat "$DIR_ORIGEN/$directorio.checksum") fi calcula_checksum $directorio if [ "$CHEKSUM_ANT" != "$CHEKSUM_ACT" ]; then CAMBIOS="SI" echo -e "$CHEKSUM_ACT" > $DIR_ORIGEN/$directorio.checksum fi done if [ "$CAMBIOS" == "SI" ]; then # compresi�~C ## construir a partir de $DIRECTORIOS la cadena para pasarle a TAR los directorios de los que ## tiene que hacer la copia ## concatenar cadenas? tar zvcpf ~/$FICHERO.tar.gz ~/app.10minutos ~/appb.10minutos ~/public ~/beta ~/system ~/*.sh # CRC32 crc32 $FICHERO.tar.gz > $FECHA.crc CRC=`cat $FECHA.crc` touch $FECHA-$FICHERO.$CRC #encriptaci�~C gpg --trust-model always -r "Miguel Angel Torres Egea (backups)" --encrypt ~/$FICHERO.tar.gz # borrado fichero original rm -f ~/$FICHERO.tar.gz rm -f $FECHA.crc # renombrado mv $FICHERO.tar.gz.gpg $FECHA-$FICHERO.tar.gz.gpg # copia scp -i ~/.ssh/backups\@seedbox.torresegea.es $FECHA-$FICHERO.* backups@seedbox.torresegea.es:~/10minutosaldia.com # borrado fichero encriptado rm -f $FECHA-$FICHERO.tar.gz.gpg rm -f $FECHA-$FICHERO.$CRC else touch $DIR_ORIGEN/$FECHA-SINCAMBIOS.TXT scp -i ~/.ssh/backups\@seedbox.torresegea.es $FECHA-SINCAMBIOS.* backups@seedbox.torresegea.es:~/10minutosaldia.com rm -f $DIR_ORIGEN/$FECHA-SINCAMBIOS.TXT fi </code> linux/scripts/10minutos.txt Darrera modificació: 10/10/2016 15:13per mate