﻿<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>michael's lair &#187; VSS</title>
	<atom:link href="http://gotch.techfaq.ru/archives/tag/vss/feed" rel="self" type="application/rss+xml" />
	<link>http://gotch.techfaq.ru</link>
	<description>Внеочередной блог</description>
	<lastBuildDate>Fri, 16 Jul 2010 12:24:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Копируем открытые файлы при помощи Volume Shadow Copy Service.</title>
		<link>http://gotch.techfaq.ru/archives/59</link>
		<comments>http://gotch.techfaq.ru/archives/59#comments</comments>
		<pubDate>Sat, 29 Nov 2008 13:18:42 +0000</pubDate>
		<dc:creator>gotch</dc:creator>
				<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[VSS]]></category>

		<guid isPermaLink="false">http://gotch.techfaq.ru/?p=59</guid>
		<description><![CDATA[Я думаю, все администраторы сталкиваются с задачей резервного копирования файловых серверов. Если вы не резервируете ваши серверы – срочно подумайте о смене профессии. Кто-то использует для этого специализированный софт от Symantec, HP и других производителей, но иногда дополнительный софт либо нет возможности приобрести, либо приобретение нецелесообразно. Тогда на помощь приходят многочисленные утилиты копирования файлов – [...]]]></description>
			<content:encoded><![CDATA[<p>Я думаю, все администраторы сталкиваются с задачей резервного копирования файловых серверов.<br />
Если вы не резервируете ваши серверы – срочно подумайте о смене профессии. <img src='http://gotch.techfaq.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
Кто-то использует для этого специализированный софт от Symantec, HP и других производителей, но иногда дополнительный софт либо нет возможности приобрести, либо приобретение нецелесообразно.</p>
<p>Тогда на помощь приходят многочисленные утилиты копирования файлов – robocopy, SyncToy, Rsync, но существует определенное ограничение – они не могут копировать заблокированные и открытые на запись файлы (например, файлы личных папок PST, или файловые базы 1С).</p>
<p>Начиная с Windows XP и Server 2003, в клиентские и серверные ОС входит технология Shadow Copy , позволяющая делать «мгновенный снимок» тома. Эта технология автоматически задействуется когда, например, утилита ntbackup создает архив system state, или создается снимок для общей папки (Volume Shadow Copy for Shared Folders).</p>
<p>Есть возможность создавать снимки вручную при помощи vssadmin.exe, однако содержимое такого снимка можно просмотреть только при помощи клиента для “Volume Shadow Copy for shared folders”.</p>
<p>Для целей резервного копирования гораздо интереснее утилиты командной строки, входящие в пакет Volume Shadow Copy Service SDK, который можно скачать <a href="http://www.microsoft.com/downloads/details.aspx?familyid=0b4f56e4-0ccc-4626-826a-ed2c4c95c871">здесь</a>.</p>
<p>Из всего пакета нас в первую очередь интересует утилита vshadow.exe. Она позволяет</p>
<p>- создавать и удалять снимок тома<br />
- просматривать списки созданных снимков<br />
- монтировать снимок<br />
- экспортировать, импортировать снимки и восстанавливать состояние тома</p>
<p>Существует две версии vshadow с различным функционалом.</p>
<p>Для Windows 2003, Windows 2008 и Vista необходимо использовать эту версию:<br />
&laquo;C:\Program Files\Microsoft\VSSSDK72\TestApps\vshadow\bin\release-server\vshadow.exe&raquo;</p>
<p>Для XP используется<br />
&laquo;C:\Program Files\Microsoft\VSSSDK72\TestApps\vshadow\bin\release-xp\vshadow.exe&raquo;</p>
<p>Версия для XP, в первую очередь, отличается от «серверной» тем, что не может создавать «хранимые» (persistent) snapshot’ы, то есть по окончанию процесса резервирования snapshot удаляется. Это ограничение накладывает реализация VSS в XP.</p>
<p>Утилиту можно копировать на серверы, не устанавливая SDK.</p>
<p>В комплект SDK входит целый набор скриптов, выполняющих различные действия. Но они достаточно сложны для понимания, поэтому предлагаю рассмотреть максимально простой скрипт, который сделает резервную копию открытых файлов через VSS.</p>
<pre>vshadow.exe –p –script=vars.cmd d:
call vars.cmd
xcopy x:\some_locked_file.pst c:\backup\
vshadow –ds=%SHADOW_ID_1%</pre>
<p>По шагам:</p>
<p><strong><span style="color: #333399;">1. Создаем хранимый snapshot тома</span></strong></p>
<pre>vshadow.exe –p –script=vars.cmd d:</pre>
<p><strong>-p </strong>хранимый snapshot</p>
<p><strong>-script=vars.cmd</strong> командный файл, в который vshadow сохранит название снапшота</p>
<div><span>vshadow записывает в файл, указанный в параметре -script следующее:</span></div>
<pre><span>@echo.
</span><span>@echo [This script is generated by VSHADOW.EXE for the shadow set
</span><span><span>@echo </span>{6b228a73-f8bf-4254-90e7-0d58219bc554}]
@echo.
SET SHADOW_SET_ID={6b228a73-f8bf-4254-90e7-0d58219bc554}
SET SHADOW_ID_1={8d14c5fe-87c1-4dac-8459-9a46b2874ef1}
SET SHADOW_DEVICE_1=\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy16</span></pre>
<p><strong>D:</strong> том, для которого создается snapshot</p>
<p><strong><span style="color: #333399;">2. Подключаем snapshot как диск</span></strong></p>
<pre>call vars.cmd
vshadow.exe -el=%SHADOW_ID_1%,X:</pre>
<p><strong>call vars.cmd</strong> – загружаем переменные окружения с именем снапшота<span><br />
</span><strong>vshadow.exe -el=%SHADOW_ID_1%, X:</strong> &#8211; подключаем созданный snapshot как логический диск X:</p>
<p><strong><span style="color: #333399;">3. Копируем файлы</span></strong></p>
<pre>xcopy x:\some_locked_file.pst c:\backup\</pre>
<p><strong><span style="color: #333399;">4. Удаляем snapshot</span></strong></p>
<pre>vshadow –ds=%SHADOW_ID_1%</pre>
<p>Это все, господа. <img src='http://gotch.techfaq.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Ранее блокированый файл успешно скопировался.</p>
<p>Что почитать:</p>
<p>1) Volume Shadow Copy Service SDK. 7.2 Download <a href="http://www.microsoft.com/downloads/details.aspx?familyid=0b4f56e4-0ccc-4626-826a-ed2c4c95c871">http://www.microsoft.com/downloads/details.aspx?familyid=0b4f56e4-0ccc-4626-826a-ed2c4c95c871</a></p>
<p>2) <a href="http://blogs.msdn.com/adioltean/archive/2004/12/30/344476.aspx">http://blogs.msdn.com/adioltean/archive/2004/12/30/344476.aspx</a><br />
<a href="http://blogs.msdn.com/adioltean/archive/2005/01/05/346793.aspx">http://blogs.msdn.com/adioltean/archive/2005/01/05/346793.aspx</a><br />
<a href="http://blogs.msdn.com/adioltean/archive/2005/01/20/357836.aspx">http://blogs.msdn.com/adioltean/archive/2005/01/20/357836.aspx</a><br />
<a href="http://blogs.msdn.com/adioltean/archive/2006/09/18/761515.aspx">http://blogs.msdn.com/adioltean/archive/2006/09/18/761515.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://gotch.techfaq.ru/archives/59/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
