Full Backup
Материал из MajorDoMo инфо
Полный бэкап. Можно вставить код в метод или сценарий. Подредактируйте свои пути.
say("Подготовка к полному бэкапу",1); //Прописываем путь для бэкапов $mydatafilename = date("Ymd_His"); $filedate='/samba/Ya_Disk/iDOM_full/'.$mydatafilename; //Временный путь $temppath='/samba/Ya_Disk/iDOM_full/temp/'; shell_exec('sudo cp -aT /var/www/html '.$temppath); shell_exec('sudo rm -rf '.$temppath.'cms/cached/*'); shell_exec('sudo mysqldump --user='. DB_USER .' --password='.DB_PASSWORD.' --databases '. DB_NAME .' > '.$temppath.$mydatafilename.DB_NAME.'.sql'); shell_exec('tar -czvf '.$filedate.'_full.tar.gz '.$temppath); shell_exec('sudo rm -rf '.$temppath.'*'); $filesize = filesize($filedate."_full.tar.gz")/1024/1024; $filesize = round($filesize, 1); //if ( file_exists( $filedate.'_full.tar.gz' )) say("Бэкап выполнен успешно. ". $filesize."Mb", 1); if ( file_exists( $filedate.'_full.tar.gz' )) say("Бэкап выполнен успешно. ".$mydatafilename."_full.tar.gz ". $filesize."Mb", 1); //Отправляем созданный файл на Я.Диск shell_exec('curl -T '.$filedate.'_full.tar.gz https://webdav.yandex.ru/iDOM_full/'.$mydatafilename.'_full.tar.gz --user login@ya.ru:password');
PS Вы наверное обратили внимание, что путь у меня Ya_Disk. Да, у меня консольная софтина Я.Диск для Linux.
PPS Удалил консольный Я.Диск, последней строкой можно прям из кода отправлять на Я.ДИСК в папку iDOM_full . Не забудьте login и password от Яндекс аккаунта поставить свои .
Тут подробнее про отправку файлов на Я.Диск из командной строки