- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
имеется 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 и позаливать файлы. может кто подскажет ?
в баше не особо спец..
Примерно так, если я правильно понял задачу:
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;
Везде башизм!