backup скрипт

L
На сайте с 13.01.2011
Offline
125
1102

имеется backup скрипт который только льет на ftp из указанной папки файлы бекапов (isp4 - не вариант запускать еще одно резервное копирование на ftp) - работает без проблем только для одной папки - а точнее файлов из нее.

но поскольку аккаунтов то много решил переделать для папок с аккаунтами - а в них файлы бекапа

например в папке /home/test есть папки бекапов аккаунтов user1 user2 user3 и в них файлы типа admin-1_full-2016-07-26.tar.gz и так далее.


#! /bin/bash

#----------------------Start of Script------------------#

function die () {
echo >&2 "$@"
exit 1
}

# backup directory of user IspManager - files to send to the FTP backup
BACKDIR=/home/test

DATE=`date +'%Y-%m-%d'`

#----------------------FTP Settings--------------------#

# set "FTP=y" if you want to enable FTP backups
FTP=y

FTPHOST[0]="xxxx.your-backup.de"
FTPUSER[0]="xxxx"
FTPPASS[0]="xxxxxxxxxx"
FTPDIR[0]="testbak"

#-------------------Deletion Settings-------------------#

# delete old files?
DELETE=y

# how many days of backups do you want to keep? if set 2 - do last 3 days
DAYS=2


if [ $DELETE = "y" ]; then
OLDDBS=`cd $BACKDIR; find . -name "*.tar.gz" -mtime +$DAYS`
REMOVE=`for file in $OLDDBS; do echo -n -e "delete ${file}\n"; done` # will be used in FTP

#cd $BACKDIR; for file in $OLDDBS; do rm -v ${file}; done
#if [ $DAYS = "1" ]; then
# echo "Yesterday's backup has been deleted."
#else
# echo "The backups from $DAYS days ago and earlier have been deleted."
#fi
fi

if [ $FTP = "y" ]; then
echo "Initiating FTP connection..."

cd $BACKDIR
ATTACH=`for file in *$DATE*.tar.gz; do echo -n -e "put ${file}\n"; done`

for KEY in "${!FTPHOST[@]}"; do
echo -e "\nConnecting to ${FTPHOST[$KEY]} with user ${FTPUSER[$KEY]}..."
ftp -nvp <<EOF
open ${FTPHOST[$KEY]}
user ${FTPUSER[$KEY]} ${FTPPASS[$KEY]}
tick
mkdir ${FTPDIR[$KEY]}
cd ${FTPDIR[$KEY]}
$REMOVE
$ATTACH
quit
EOF
done

echo -e "FTP transfer complete! \n"
fi

echo "Your backup is complete!"

ясно что он с папками не работает и удалять на ftp нечего - потому что папки там не создались

[root@srv test]# ./b.sh

Initiating FTP connection...

Connecting to xxxx.your-storagebox.de with user xxxx...

Trying 78.47.102.84...

Connected to xxxx.your-storagebox.de (78.47.102.84).

220 ProFTPD 1.3.5b Server (Hetzner Backup) [::ffff:78.47.102.84]

Remote system type is UNIX.

Using binary mode to transfer files.

331 Password required for xxxx

230 User xxxx logged in

Tick counter printing on (10240 bytes/tick increment).

257 "/testbak" - Directory successfully created

250 CWD command successful

550 ./user1/admin-1_full-2016-07-01.tar.gz: No such file or directory

550 ./user1/admin-1_full-2016-07-24.tar.gz: No such file or directory

550 ./user1/admin-1_full-2016-07-23.tar.gz: No such file or directory

550 ./user1/admin-1_full-2016-07-17.tar.gz: No such file or directory

550 ./user1/admin-1_full-2016-07-25.tar.gz: No such file or directory

550 ./user1/admin-1_full-2016-07-26.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-01.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-24.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-23.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-17.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-25.tar.gz: No such file or directory

550 ./user2/admin-1_full-2016-07-26.tar.gz: No such file or directory

local: *2016-07-29*.tar.gz: No such file or directory

221 Goodbye.

FTP transfer complete!

задача вывести в переменную список директорий юзеров, создать их на ftp и позаливать файлы. может кто подскажет ?

в баше не особо спец..

Контакты-icq 535609 ()
K
На сайте с 17.02.2006
Offline
106
#1

Примерно так, если я правильно понял задачу:

#!/bin/bash
for i in `ls -l /home/ | awk '{print $3}' | egrep -v "root|apache"`;
do
{
for ii in `ls -l /home/$i/ | awk '{print $9}'`;
do
{
echo "/home/$i/$ii";
#тут на месте echo залив на фтп
}
done;
}
done;
Хостим сайты. Есть VDS с IP.
DV
На сайте с 01.05.2010
Offline
644
#2

Везде башизм!

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий