Бекапимся на яндекс-диск.

1574
Всем привет. Как известно, "бекапа много не бывает" smile На одном из хостов стало маловато места, а диск пустует.Вот и решил порыть инет на тему забекапится на яндекс. В итоге получился небольшой скриптик.

Превращаем данный код в файл.php, заполняем своими данными,закидываем куда душе угодно, идём в настройки крона своего хоста и прописываем там в команде адрес файла(У меня, например так:wget http://domen.ru/yandex_backup.php),устанавливаем периодичность и всё. Теперь, если даже хост ляжет( и не встанет) у меня не "всё пропало" smile

Скрытый текст виден только зарегистрированным пользователям


Спасибо, за внимание. hoho
Доска объявлений.Мультизагрузка фото. 1.10.6. | Кнопка загрузки файлов из панели bbcode в сообщение.Хак.ч.1
Комментарии (14)
Андрей 9 августа 2016 в 20:14 +1
small user social cms
Однозначно плюс! Инструкцию попдробней для таких нубов как я можно сделать? Спасибо заранее =)
Lora 9 августа 2016 в 20:41 +2
small user social cms
Даже не знаю, что ещё написать.Вся инструкция в комментах в файле.Напишите, что конкретно не понятно, объясню.
Zau4man 9 августа 2016 в 20:51 0
small user social cms
Например по $excludefile. Как туда добавить две разные папки...
Lora 9 августа 2016 в 21:15 +2
small user social cms
Самое правильное, создать текстовой файл и прописать в нём все файлы или папки, каждую с новой строки, с абсолютными путями.А в $excludefile прописать путь до этого .txt
Александр 9 августа 2016 в 23:21 +2
small user social cms
респект, тема полезная, вот только как быть с безопасностью? в этом файле все пароли и явки, в том числе и от бэкапа и если его кто то сможет посмотреть, то финита ля...
vikont 9 августа 2016 в 23:40 0
small user social cms
Для того, чтобы открыли файл с Яндекс Диска, надо взломать акка почтового ящика на Яндекс почте!
Сейчас взламывают и не такое! А чтобы ломать конкретный акка надо ЗНАТЬ, что там лежит бекап!
Так что главная гарантия - это никто не должен знать, что именно ты и именно на этот диск отправляешь бекапы! laugh
Fuze 9 августа 2016 в 23:42 +10
small user social cms
Автор безусловно молодец, что поделился тем, что нашел. НО. Было бы отлично, если был бы не просто копипаст с просторов интернета, а вдумчивый код.

Конечно же этот скрипт не привязан к вашему сайту на instantCMS и класть его в директорию сайта категорически нельзя. И уж тем более делать задачу для CRON типа
Код BASH:
  1. wget http://domen.ru/yandex_backup.php
Скрипт можно спрятать подальше от глаз и доступа для apache. А запускать (и создавать команду для CRON) как то так:
Код BASH:
  1. /usr/bin/php -f /path_to/my_scripts/yandex_backup.php
Кроме того, на шаредхостингах в 99% случаев функции system, shell_exec работать не будут, т.к. отключены в целях безопасности. Обычно включенной остается лишь exec функция и то не всегда.
Код желательно переписать и вместо system ("curl.... использовать нативный PHP-шный curl.

mysqldump запускать из под функции exec, предварительно проверив её доступность (if(!function_exists('exec'))).

Поэтому, вы конечно можете использовать рекомендации автора поста, но потом, когда будет тема на форуме "почту взломали инстант виноват" я молчать не буду.
Надеюсь мой максимально развернутый и обоснованный ответ автор не воспримет в штыки joke
Александр 10 августа 2016 в 08:45 0
small user social cms
правильно всё вы описали. да и к автору претензий нет. этот метод, как мне кажется, был хорош только до того момента, пока им пользовался один человек.
Виктор 17 августа 2016 в 23:46 +1
small user social cms
Если кто-нибудь посмотрит файл config.php Вашего сайта, то увидит все данные для доступа к Вашему mysql серверу - всё так не секьюрно :)...
-Заводите диск только для бекапов для одного проекта,
-не используйте одинаковые пароли везде где попало
-вынеси пароль в файл другую папку или в БД засунь, а в этом скрипте считывай (тогда даже если сам файл попадет кому случайно на глаза не будет видно паролей)
-плюс рекомендации от Fuze ниже и не всё так плохо
NoNames34 10 августа 2016 в 11:23 0
no avatar
Автор молодец. сохранил наработку себе в копилку. Попробую реализацию.
А насчет паролей - никто никому не мешает пользоваться золотым правилом "Менять пароли раз в месяц".
Александр 15 августа 2016 в 12:22 0
small user social cms
Ну это как если бы Вашу машину можно было бы завести без ключа, а Вы сказали, да не, всё нормально, я же раз в месяц меняю место на парковке)))
Raiden 18 августа 2016 в 06:36 0
small user social cms
Он ключ предлагает менять раз в месяц, а не место парковки
Lora 10 августа 2016 в 11:56 +1
small user social cms
Возьму во внимание рекомендации, найду время и придумаю что нибудь с безопасностью.А насчёт ф-ций, не понимаю особой разности, что system(), что exec(). Вроде обе используют одну и туже ф-цию, разница только в методе вывода вроде. Строка или массив.Насчёт curl согласен, лучше php-ный.Проверка на определение ф-ции тоже лишней не будет.
Capitan 13 августа 2016 в 16:20 0
small user social cms
Может автор учтет рекомендации и подкорректирует код :)