Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Резервное копирование 1С на backup сервер с записью на DVD

Ответить
Настройки темы
CMD/BAT - Резервное копирование 1С на backup сервер с записью на DVD

Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток, задача:

Имею несколько серверов с базами 1С,
каждый день средствами 1С происходит резервное копирование баз,
по окончанию скрипт складывает полученный архив на отдельный backup-server (w2k3).
Формат файлов на всех серверах типа:

2009.03.01-buh.zip
2010.03.22-xx_buh.zip
2009.03.01-zarplata.zip
2010.03.25-Meta_server1.rar

Требуется создавать папки с именем вроде 2009.03.01-2009.04.01 и объемом 4,3Gb.
А так же записывать на DVD (заранее вставленном в привод)

Предполагаю:
цикл, создать папку взяв дату из имени первого обрабатываемого файла (2009.03.01-)
цикл обрабатывающий «выхлоп» команды dir и проверяющий сумму объема = созданной папки + следующий файл для перемещения
если суммарный объем больше 4,3 Gb, дописывать в имени папки дату последнего файла (2009.03.01-2009.04.01)
Далее нужна либо консольная утилита для записи DVD либо использовать встроенную способность винды…

Если честно, уперся с реализацией.
Заранее благодарен за любую помощь.

P.S. у меня уже около 4000 файлов общим весом 161Gb
P.S.S. на тему DVD есть ряд мыслей чтобы сервер сам брал себе чистые диски…

Отправлено: 21:42, 26-03-2010

 

Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


Уважаемые, не уж то никто не сталкивался с измерением объема обекта?
Мне только бы объем папки мерить, да файла чисто на объеме спотыкнулся

Последний раз редактировалось Banzaika, 29-03-2010 в 09:43.


Отправлено: 09:32, 29-03-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 144
Благодарности: 16

Профиль | Отправить PM | Цитировать


Может копировать не средствами 1C? а прикрутить какой-нибудь архиватор, умеющий резать архивы на части?

Отправлено: 12:54, 29-03-2010 | #3


Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


1C и использует zip, а полностью папку Meta я жму консольным WinRAR.
Причем сами резервные копии созданные 1С обычно не привышают 150Мб, а вот Meta сжатая раром 1-1,5Гб.

Вы предлагаете добавить в архив без сжатия мои 160Гб бэкапа с начала этого года?
Ну допустим я получу файлы заданного объема, но случись что, как я буду добывать с 40 DVD базы за необходимый период? Ведь архив то будет разбит по томам...

Не, не канает, ладно что не красиво, это просто опасно.

Моя проблема в том что я не могу корректно из команды dir получить объем чего-либо
Может и не диром делать? Тогда чем?

Отправлено: 09:40, 30-03-2010 | #4


Пользователь


Сообщения: 144
Благодарности: 16

Профиль | Отправить PM | Цитировать


Цитата Banzaika:
Может и не диром делать? Тогда чем? »
Попробуйте поискать здесь. Много чего можно найти полезного.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:47, 30-03-2010 | #5


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать


Насколько мной осонана проблема: нужно за 1 запуск батника рассортировать имеющиеся файлы (отсортированные по имени, поскольку в имени файлов заложен правильно выбранный формат даты создания файла и мы можем предположить, что в результате неких операций сама дата модификации файла может пострадать, например передача файла по ftp) по каталогам, не превышающим размер DVD и имеющим в конечном варианте название, состоящие из первых 10 символов (дата) первого файла, перемещенного в этот каталог и через дефис первые 10 символов последнего перемещенного тудаже файла... уфффф... однако.....

умышленно "проигнорировал" пункт записи на DVD - тут Вам гугль в руки - я таким вопросом не владею ни в коей мере, ибо "мне-ента-не-нать" и вообще DVD крайне ненадежный носитель для бэкапов не говоря уже и о полезных данных *kidding*...

получаем следующий скриптик (оговорюсь - могут быть с ним проблемы:
1. не тестил на файлах с точками в имени и вообще с кривыми именами
2. не дай Бог один из архивов окажется более 2ГБ - ну его вроде и в стандартный образ DVD нельзя будет поместить...)
Код: Выделить весь код
@echo off
SetLocal EnableExtensions
SetLocal EnableDelayedExpansion

rem Размер файлов будем округлять до секторов DVD (2KB), 
rem иначе подсчет размера не поместится в 32 бита, 
rem да и точнее так считать - каждый файл занимает целое число секторов
rem Объем DVD диска обычно от 2295072 до 2298496 секторов, выбираем меньший.

Set MaxSize=2295072

for /f "tokens=* delims=" %%F in ('dir /b /a-d /on') do (
if "!DName!"=="" (
set DName=%%~nF
set DName=!DName:~0,10!-
md "!DName!"
)
set /a FSize="(%%~zF+2047)>>11"
set /a Check+=!FSize!
if /i !Check! leq %MaxSize% (
set DSize=!Check!
move "%%F" "!DName!\"
) else (
move "!DName!" "!DName!!PName!"
set DName=%%~nF
set DName=!DName:~0,10!-
md "!DName!"
set Check=!FSize!
move "%%F" "!DName!\"
)
set PName=%%~nF
set PName=!PName:~0,10!
)
move "%DName%" "%DName%%PName%"
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:36, 01-04-2010 | #6


Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


NiOl, Да вы коллега хаЦкер однако

Поняли верно, использую свои же метки для получения нужной информации об объекте (точки, тире, количество подстрок).
(в имени файла и наглядно и просто и надежно...)

ftp точно нафиг, чур меня, винда и проще и гибче, средствами ntfs куда проще разрулить по доступу,
про запись DVD - не моя прихоть, а ОИТ которые занимаются 1С, им надо все писать и складывать в сейф.

По делу:
1. попробую чуть посже, сейчас ну вобще никак, уверен что с именами проблем не возникнет...
2. на данный момент самый толстый файл = 1 742 954 кб
Про стандартный образ DVD правы, хотя консольные утилиты умеют и UDF писать...
Опять же это уже мои проблемы - при создании Meta-xxx.rar (именно они Гб весят) просто надо указать бить на тома при превышении обьема.

Спасибо за объяснения по формату DVD.

Отправлено: 17:57, 02-04-2010 | #7


Аватара для zonderz

Ветеран


Сообщения: 727
Благодарности: 150

Профиль | Отправить PM | Цитировать


Banzaika

лично, я не совсем понял что вы хотите

раскидать 4000 файлов по папкам?

в тотал коммандере за 20 минут вручную
отсортировать файло по имени, далее с помощью выделения смотреть
сколько чего занимает и перемещать

вот это то же непонятно:

если суммарный объем больше 4,3 Gb...
а нафига делать больше если вам на DVD писать?


объясните конкретно на примере

-------
MCP, MCSA, MCSE, разработчик программы CMDTools
http://forum.oszone.net/thread-170783.html


Отправлено: 22:06, 02-04-2010 | #8


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6494
Благодарности: 1466

Профиль | Отправить PM | Цитировать


Цитата Banzaika:
я не могу корректно из команды dir получить объем чего-либо »
Nncron вам в помощь. Прекрасная штука, в него можно засунуть все ваши скрипты, а последней можно дать команду на запись DVD.

Есть ещё на том же сайте программа nnbackup, специально для задач резервного копирования. В тандеме с nncron можно решать задачи практически любой сложности.

А консольные команды поддерживает и CDBurnerXP, и ImgBurn (правда, не нашёл для ImgBurn внятного списка поддерживаемых команд, надо на форум тамошний лезть).

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Последний раз редактировалось DJ Mogarych, 02-04-2010 в 23:45. Причина: нашёл про записывалки


Отправлено: 22:33, 02-04-2010 | #9


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать


Цитата Banzaika:
ftp точно нафиг, чур меня, винда и проще и гибче, средствами ntfs куда проще разрулить по доступу,
про запись DVD - не моя прихоть, а ОИТ которые занимаются 1С, им надо все писать и складывать в сейф. »
Вот тут могу сказать "зря, Батенька, зря!" - вот на мне одна из задач - обеспечить сохранность данных (не всех, но доброй половины ) в случае пожара или любого другого казуса с полной потерей данных в офисе. Для этого приходится менять внешний HDD с бекапами (2 параллельных бэкапа) и уносить его "в ячейку". Сначала я добрососвестно таскал эту дуру через день - сейчас обленился и меняю диски только по пятницам и понедельникам.
Когда же на меня сгрузили обслужимание второго офиса и я там тоже навел порядок с бэкапами, то таксать еще и и данные мне стало совсем невмоготу... тогда, пользуясь тем, что во втором офисе инет вполне нормальный, а бэкапы прибавляются неспешно - менее гига за сутки, то накрутил скрипт, который шлет свежие файлы бэкапа ко мне на ftp...
Есть, правда в этом проблемка, для безопасности ftp вход даже не кажет файлов, которые там находятся, не то, чтобы позволить их выкачать. Таким образом отследить, какие файлы точно уже "там" - невозможно, проходится вести подобие лога, при передаче каких файлов ошибки не возникло. Сейчас ломаю бошку - как это сделать культурнее, а то скрипт древний, пора бы его переписать...

-------
Как сказало Дерево Дровосеку: "я - пень".


Отправлено: 12:49, 05-04-2010 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Резервное копирование 1С на backup сервер с записью на DVD

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Резервное копирование 1С на удаленный сервер linux storm2005 Скриптовые языки администрирования Windows 0 18-01-2010 17:55
Debian/Ubuntu - Резервное копирование. Tankistspb Общий по Linux 2 25-02-2008 11:56
Резервное копирование!! Forest_G Хочу все знать 2 09-06-2006 17:36
Web-сервер и резервное копирование ? m2001 Общий по Linux 13 10-11-2005 17:43
Резервное копирование dimon55 Хочу все знать 1 01-08-2003 23:55




 
Переход