¿Cómo habilitar el volumen de instantáneas en una unidad específica (D :, E:, ...) y configurar la programación usando Powershell?
Solo necesito algunos consejos sobre cómo comenzar.
powershell
vss
Primoz
fuente
fuente
Respuestas:
Puede crear una instantánea en una unidad específica utilizando un objeto WMI como se explica en el artículo de Microsoft .
Habilitar instantáneas de volumen en una unidad específica (D :, E:, ...) es dos cosas
fuente
Me tomó un poco de tiempo hacer que esto funcionara (después de encontrar el simple error que causaba que fallara), y la función está incompleta. Quiero agregar la capacidad de habilitarlo en una computadora remota, lo que probablemente tendrá que hacerse a través de una tarea que se ejecuta una vez. Si alguien modifica esto y agrega eso, ¡hágamelo saber!
Aunque esto funciona, e imita lo que sucede cuando lo haces a través de la GUI, todavía se muestra como deshabilitado para esa unidad. Pero si lo habilitas, ¡nada cambia! (LOL) Supongo que hay algo que también debe modificarse en el registro.
fuente
Después de un montón de problemas con él, funcionó de manera ligeramente diferente (también parece mostrarse correctamente a través de la GUI).
Gracias a esta página para obtener un poco de ayuda: https://social.technet.microsoft.com/forums/windowsserver/en-US/fb69840d-5f52-4711-8168-2faa23088233/shadow-copy-schedule-per-script
La desventaja de usar schtasks (lo que usa esa página) es que no puedo tener múltiples desencadenantes hasta donde puedo ver.
Además, debido a la forma en que solucioné los problemas de la solución (utilicé un bindiff de xml de trabajo / no funciona), no estoy completamente convencido de que los indicadores que uso sean óptimos.
fuente
Más simple significa usar schtasks que se muestran en la interfaz de usuario, compatible en PowerShell 2. Diseñado para una compilación estándar, puede necesitar jugar con $ volumeinfo [x] al crear $ taskrun para encontrar el volumen apropiado.
Puede configurar los siguientes argumentos adecuadamente:
NOTA: El modificador / TR REQUIERE el espacio al final, si no está allí, reemplaza la barra diagonal inversa final con una comilla doble, lo que hace que la interfaz de usuario de VSS no reconozca la tarea.
fuente
Esto es lo que uso en PowerShell . Es un enlace a mi sitio, pero se ve mucho mejor de lo que se pega aquí.
fuente
La Copia de sombra se habilita creando tareas que llaman a vssadmin.exe.
PowerShell 3.0 tiene cmdlets que le permiten crear tareas, pero dependen de syscalls que no se implementaron hasta Windows 8 / Windows Server 2012. Necesita los siguientes tres de estos cmdlets para hacer esto de la manera PowerShell:
En versiones anteriores de Windows, estará restringido a usar schtasks.exe.
Sin embargo, y aquí es donde esta respuesta difiere de las demás, crear una tarea de Copia de sombra de esta manera no es la forma correcta de hacer las cosas, ya que cualquier cambio que realice no aparecerá en la GUI. Como tal, un usuario no observador puede desconocer que se ha habilitado Shadow Copy, lo que resulta en que habilite una segunda instancia del mismo, o peor, sobrescriba su tarea en silencio (si siguió las convenciones de nomenclatura de Windows (VolumeShadowCopy {$ GUID})).
Lo que debe hacer es crear uno a través de la GUI (preferiblemente en Win7 / Win2008, ya que las versiones más nuevas de Windows usan taskxml 1.2 por defecto en lugar del taskxml 1.1 más compatible), exportar la tarea como XML a través de schtasks, editar programáticamente ese XML , guarde ese XML como UTF16 e impórtelo. Afortunadamente, una vez que pasa la GUI al principio, todo esto se puede hacer en la línea de comandos.
Me gustaría publicar el código, pero lo que escribí es de propiedad y no tengo permiso de mi empleador. Espero que la sugerencia XML, al menos, le ahorre incontables horas. Acabo de implementar la solución XML en cientos de servidores administrados, con gran éxito.
fuente
Gracias a todos, eso contribuyó a este hilo. Fue útil y me ahorró mucho trabajo. El siguiente script de PowerShell se probó en Windows Server 2008 R2.
El siguiente ejemplo crea una Instantánea cada 2h entre lunes a viernes. de 08: 00h-18: 00h en el Volumen C:
Si desea modificar la programación simplemente edite o reemplace los datos XML en línea.
Atención: sin garantía. Sin responsabilidad. Por favor, pruebe en su propio laboratorio antes de usarlo en un entorno de producción.
fuente
Lo mejor que puedo hacer es señalarlo aquí , y señalar específicamente este y este .
Ninguno de los dos aborda exactamente lo que está buscando, pero señalaré que puede crear instantáneas en cualquier momento, ya que VSS es un servicio en segundo plano que se ejecuta hasta que se lo llame.
fuente
Obtuve exactamente lo que necesitaba con el siguiente código, mi requisito era configurar VSS pero también tenía que estar visible en la GUI. La parte clave para hacerlo visible en la GUI es agregar la ID del volumen en el nombre de la tarea programada como lo indicó el usuario 261949 (eso es un poco extraño, sinceramente estaba buscando una clave de registro pero no encontré absolutamente nada ...). Terminé con el siguiente código que se adapta a mis necesidades:
¡Gracias a todos por sus útiles informaciones!
fuente