O plano é criar uma cópia de sombra de um volume bastante grande de E / S. São 350 GB, contendo um índice de texto completo baseado em sistema de arquivos organizado em centenas de pastas e centenas de milhares de pequenos arquivos que precisam estar em um estado consistente para uma restauração bem-sucedida.
Atualmente, o indexador está parado, a tarefa de backup é executada e o indexador é reiniciado. Isso faz com que o índice fique indisponível por horas durante o backup. Eu gostaria de fazer backups consistentes via cópia de sombra, idealmente sem precisar parar o indexador.
Então, ativei o Shadow Copy para esse volume e o configurei para fazer um instantâneo uma vez por noite, para um volume diferente.
Agora estou um pouco perdido - como posso acessar a cópia de sombra como um todo, para poder fazer um backup? Eu imagino uma unidade somente leitura que contenha os arquivos como estavam no momento do último instantâneo, mas talvez as coisas funcionem completamente diferentes.
O sistema operacional é o Windows Server 2003 SP2, o software de backup é o CommVault Galaxy 7.0.
EDIT : Observe que, entretanto, foram criadas duas respostas que implementam a funcionalidade necessária na forma de um script:
- VBScript (sozinho)
- PowerShell (de John Homer )
fonte
Respostas:
Então, no espírito de reinventar a roda, apresento a você o excelente roteiro de Tomalak (veja acima), mas completamente reescrito em Powershell !!! A principal razão pela qual fiz isso foi evangelizar os incríveis poderes do PowerShell, mas também porque desprezo o vbscript com todo o meu ser.
É principalmente característica a característica idêntica, mas eu implementei algumas coisas de maneira um pouco diferente por várias razões. A saída de depuração é definitivamente mais detalhada.
Uma coisa muito importante a ser observada é que esta versão detecta a versão e o sistema operacional do SO e chama a versão apropriada do vshadow.exe. Eu incluí um gráfico abaixo para mostrar quais versões do vshadow.exe usar, onde obtê-las e como nomeá-las.
Aqui estão as informações de uso:
Aqui está o script:
Aqui estão as versões vshadow.exe para usar:
fonte
Então ... eu tenho trabalhado em um pouco de VBScript que pode:
Ele se baseia em
vshadow.exe
( documentação ) parte do SDK 7.2 do Volume Shadow Copy Service, conforme disponível na Microsoft. Eu tenho trabalhado com esta versão: " VSHADOW.EXE 2.2 - Cliente de exemplo de cópia de sombra de volume, Copyright (C) 2005 Microsoft Corporation. "Basicamente, é um pequeno invólucro interessante em torno desses quatro comandos vshadow:
Aqui está sua tela de ajuda:
Aqui estão alguns exemplos de saída:
E aqui está o próprio script. O aviso de isenção usual se aplica: O software é fornecido como está, não dou garantias, use por seu próprio risco, se algo quebrar o único culpado é você mesmo. Eu o testei completamente, e funciona bem para mim. Sinta-se livre para me notificar sobre quaisquer erros através dos comentários abaixo.
Espero que isso ajude alguém. Sinta-se livre para usá-lo de acordo com cc-by-sa . Tudo o que peço é que você deixe intacto o link que aponta aqui.
fonte
vssadmin list shadows
para listar todas as cópias de sombra disponíveis. Você obterá uma saída como esta ...Anote o
Shadow Copy Volume
nome da cópia de sombra desejada (mais fácil para a área de transferência).Montar a cópia de sombra
No Windows 2003 ...
Você precisará fazer o download das ferramentas do kit de recursos para 2003, se ainda não o tiver.
Digite o comando ...
... onde
c:\shadow
é o caminho em que você deseja que a cópia de sombra apareça e\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy69
é o nome que você copiou acima. Observe que você deve adicionar uma barra invertida no final do nome da cópia de sombra!No Windows 2008 e versões posteriores ...
Digite o comando ...
... onde
c:\shadow
é o caminho em que você deseja que a cópia de sombra apareça e\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy69
é o nome que você copiou acima. Observe que você deve adicionar uma barra invertida no final do nome da cópia de sombra!XCOPY
) para acessar os arquivosc:\shadow
.fonte
list shadows
?Você está entendendo mal como o VSS funciona com o sistema de arquivos (como ele funciona com bancos de dados é completamente diferente). No sistema de arquivos, o VSS é usado para implementar o recurso "Versões Anteriores", que é usado apenas para capturar instantaneamente alterações em arquivos e pastas em momentos predefinidos no tempo para recuperação por meio da guia Versões Anteriores nos clientes. Essas alterações são mescladas com os dados no volume para criar o conjunto de recuperação. Portanto, depende do volume original ainda estar presente para executar a recuperação, ou seja, inútil para fins de backup e restauração adequados.
Acho que você precisa se afastar de como deseja fazer isso e pensar novamente sobre o que quer fazer.
Na verdade, 350 GB de dados não são muitos, e estou disposto a apostar que a porcentagem que é usada ativamente no dia a dia é bastante baixa. Você já pensou em fazer backups diferenciais noturnos com backups completos apenas nos finais de semana? Ou usando a replicação agendada do DFS para armazenamento alternativo para obter um "instantâneo" (que é então copiado)?
fonte
Espero que isto seja o que você deseja:
diskshadow -s vssbackup.cfg
vssbackup.cfg:
fonte
Usando a API do VSS, é possível tirar um "instantâneo" do volume. Então você teria que montar esse instantâneo para copiar dele. Estou familiarizado com um produto agora morto que usou essa técnica para replicar dados, apesar de os arquivos serem abertos exclusivamente por outros processos no sistema de arquivos ao vivo. Perguntas válidas podem ser levantadas sobre se os arquivos no instantâneo do VSS são autoconsistentes se estiverem sendo gravados por aplicativos que não estão integrados às APIs do VSS. Pode haver outros produtos que oferecem recursos semelhantes.
fonte
Resposta curta: você não pode.
Resposta um pouco mais longa: o serviço de cópia de sombra pode ser usado de maneira programática por meio de sua API para permitir o backup de arquivos abertos, mas o serviço não cria instantâneos completos do sistema, apenas instantâneos parciais.
fonte