bash-скрипт удаляет .htaccess

dotern
На сайте с 21.09.2016
Offline
123
1150

Использую bash-скрипт для создания локальной резервной копии, но заметил, что в архиве сайта отсутствует файл .htaccess, почему так происходит?

Сам скрипт ниже:

#!/bin/bash

#
#ver 1.0
#2013-09-09
#
#Переменные Базы данных
DBHOST="localhost" #Адрес MySQL сервера
DBUSER="bd_user" #Имя пользователя базы данных
DBPASS="dBpAsS" #Пароль пользователя базы данных
DBNAME="db_name" #Имя базы данных
DBARC=$DBNAME.sql.gz #Имя архива базы данных
#
#Переменные WEBDAV
WEBDAVURL="https://webdav.yandex.ru/backup/" #Адрес Яндекс.Диск. Папка должна существовать!
WEBDAVUSER="my-mail-login@yandex.ru" #Имя пользователя от Яндекс.Диска (Яндекс.Почты)
WEBDAVPASS="MyPasWordAtYandexMail" #Пароль от Яндекс.Диска
#
#Переменные сайта
SCRIPTDIR="/home/serveruser/backup/" #Абсолютный путь откуда запускается скрипт и где храняться архивы
SCRDIR="/home/serveruser/web/mydomain.com/public_html/" #Абсолютный путь к сайту от корня диска
SCREXCLUDE="webstat" #Что не попадет в архив
SCRARC="public_html.tar.gz" #Имя архива файлов сайта
#
#Переменные Резерных копий
ARCNAME="mydomain.com"=$(date '+%F(%H:%M)')".tar" #Имя архивной копии сайта
ARCMAX="30" #Количество файлов в локальном хранилище
#
#Переходим в корневую директорию вебсервера
cd $SCRDIR
#
#Создаем файловый архив со сжатием, учитываем исключения
tar cfz $SCRIPTDIR$SCRARC --exclude=$SCREXCLUDE *
#
#Возвращаемся в папку со скриптом, где лежат все архивы
cd $SCRIPTDIR
#
#Архивируем базу данных со сжатием
mysqldump -h$DBHOST -u$DBUSER -p$DBPASS $DBNAME | gzip > $DBARC
#
#Объединяем файловый архив и дамп базы данных, теперь уже без сжатия
tar cf $SCRIPTDIR$ARCNAME $SCRARC $DBARC
#
#Отправляем результат в Яндекс.Диск
curl --user $WEBDAVUSER:$WEBDAVPASS -T $ARCNAME $WEBDAVURL
#
#Убираем промежуточные архивы
rm *.gz
#
#Удаляем старые копии сайта, оставляем несколько свежих копий
ls -t *.tar | tail -n+$ARCMAX | xargs rm -f
Оптимизайка
На сайте с 11.03.2012
Offline
396
#1

It's because the files started with "." are hidden, so tar cfz xxx * will not work.

Replace it with tar cfz xxx $SRCDIR

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
dotern
На сайте с 21.09.2016
Offline
123
#2

Оптимизайка, спасибо, но не понял, на что именно нужно поменять?

tar cfz $SCRIPTDIR$SCRARC --exclude=$SCREXCLUDE *

Как правильно эту строку записать?

Оптимизайка
На сайте с 11.03.2012
Offline
396
#3

Replace * with $SRCDIR

dotern
На сайте с 21.09.2016
Offline
123
#4

Теперь понятно, а то я начал удалять * и архив не создается. Сейчас попробую.

---------- Добавлено 18.03.2017 в 20:15 ----------

Спасибо еще раз, теперь скрытый файл присутствует.

Но внутри теперь все эти папки: /var/www/user/data/www/domain.ru/

Хоть и мелочь, но возможно есть решение?

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