8 votos

El control de versión de configuración de Windows

¿Cómo puedo poner mi Windows configuración personal bajo control de versiones?

Resumen (para detalles y ejemplos):

  • Configuración Personal (por ejemplo el escritorio preferencias), no de configuración del sistema (por ejemplo, los conductores); debe trabajar sin derechos de administrador
  • Control de versión, no copias de seguridad o imágenes de disco

Aquí hay un par de cosas que quiero ser capaz de hacer:

  • Confirmar el estado actual de mi configuración de un repositorio, preferiblemente con un poco de granularidad (si he hecho dos cambios, me gustaría ser capaz de cometer uno sin cometer el otro).
  • Escribir una entrada en el archivo changelog cuando me comprometo, y ver la lista de entradas de changelog para cada archivo de configuración.
  • Ver las diferencias entre el estado actual y una versión en el repositorio.
  • La hora de salida de mi repositorio en un nuevo equipo de Windows y reproducir la configuración de mi (al menos si la nueva máquina tiene la misma versión de Windows).

<added1> No voy a tratar de dar una completamente definición precisa de "configuración"; estoy tratando de cubrir todos los tipos de preferencias personales (por ejemplo, nada configurable en el panel de control sin derechos de administrador, de los accesos directos en mi usuario específico de "los Programas" en el menú, ...). No quiero incluir en mis documentos o aplicaciones instaladas. </added1>

<added2> Tenga en cuenta que estoy dirigidos a mi configuración personal, no de la configuración del sistema (que sería útil también, pero no es el propósito de esta pregunta). Por ejemplo, espero una solución para que funcione sin derechos de administrador. </added1>

Lo que yo hago en unix es poner (selección de) mi punto archivos bajo control de versiones. En Windows, supongo que debo confirmar el registro y algunos archivos (que?) bajo Application Data. Me gustaría algo mejor que poner todo el archivo de registro bajo el control de versiones (que no es suficiente granularidad, y me temo problemas de bloqueo). <added1> lo Ideal sería el uso de envoltorios o secuencias de comandos con algunos software de control de versiones (Bazar, CVS, Darcs, Git, Mercurial, Subversion, ...), pero eso no es un requisito absoluto. </added1>

Yo actualmente se necesita para que funcione con Windows 2000 y Windows XP. Puesto que esto es para un trabajo de la máquina, simuladores de pago no (open source sería lo ideal). Me siento más cómodo con la línea de comandos que con GUIs.

<added1> Aquí se muestra un ejemplo de flujo de trabajo:

  • Un día decidí que no quiero que mi fondo de escritorio es de color rosa. Así que hacer el cambio a través de la interfaz gráfica de usuario. Esto modifica una línea en un archivo de configuración de la clave en el registro. Yo, a continuación, confirme el cambio, para hacer un seguimiento de la misma.
  • Después me pregunto por qué mi fondo de escritorio es de color rosa. Así que la búsqueda de "color de escritorio" en el changelog.
  • Un día tengo que utilizar una máquina nueva. Así que la hora de salida de mi repositorio de configuración, y voilà, rosa de escritorio.

Aquí hay algunas cosas que no estoy tratando de hacer:

  • No estoy tratando de hacer copias de seguridad. Quiero ser capaz de rastrear los cambios (por la semántica, o al menos de la sintaxis, no sólo por la fecha), y para compartir información entre máquinas (un repositorio, múltiples salidas).

  • No estoy tratando de replicar una instalación de Windows. No quiero llevar más de hardware dependencias, las aplicaciones instaladas o documentos.

</added1>

9voto

Louis Puntos 121

Hasta donde yo sé, configuración de Windows es demasiado dispersa de forma fiable de copia de seguridad, entre demasiados archivos y lugares en el registro.

Es imposible copia de seguridad del registro en una máquina y restaurarla en otro (o incluso en el mismo), ya que hay demasiadas teclas son demasiado específicas para la máquina y debido a que algunas teclas están protegidos por las Ventanas.

Restauración del sistema tiene como objetivo mantener el estado de la máquina, pero su propósito es poco confiable, ya que va a decidir que las copias de seguridad que desea eliminar para ahorrar espacio, y tiene otras cuestiones negativas como que no están disponibles en Windows 2000.

La única solución universal que puedo ver es a la imagen del disco del sistema en su totalidad y restaurarla cuando sea necesario, el uso de un disco de imágenes de productos.

Hay varias creación de imágenes de disco de productos de muy buena calidad, lo que puedo recomendar si usted encuentra que esta solución te interesa. Varios de ellos mantener un repositorio de imágenes con carácter descriptivo. Aunque los mejores son los comerciales, el freeware son todavía muy bueno.

Creación de imágenes de disco funciona mejor cuando la unidad del sistema no contiene datos de usuario.

8voto

Pavel Nikolov Puntos 3595

No sería sencillo, pero se puede usar de Sysinternals Process Monitor para determinar qué archivos de registro y configuración se ha cambiado. Luego, puede agregar las modificaciones del registro y los archivos actualizados en un programa más grande que va a hacer los cambios para usted. Usted probablemente podría utilizar el Poder de Shell o algo así AutoIt. A continuación, compruebe la resultante de la secuencia de comandos en la vcs. Yo uso un método similar para la automatización de entornos extraños en los scripts de inicio de sesión y personalizado de administración de Directiva de Grupo de plantillas.

2voto

Bill Robinson Puntos 21

Viniendo desde el lado del servidor de la valla, donde se debe esperar a ser muy paranoico acerca de los cambios de configuración y de dónde venían, puedo decir que realmente no existe. Global config-el seguimiento es un proceso completamente manual para la mayor parte. Es posible monitor (pero no evitar) registro específico de las áreas para los cambios, pero no sé de ninguna gratis/hoteles de paquetes de software que permiten que los y varios muy costosos (es una forma mucho más complejo problema de archivo de seguimiento-información y, a continuación, distinción de dos archivos de texto; por lo tanto, caro).

Esto conduce a Unix administradores de batty. Kyle Brandt, sysadmin para StackOverflow Inc, se quejaban de que este tipo de cosa de un par de semanas atrás, fue puesta en escena un nuevo lote de máquinas de Windows para StackExchange. Linux/Windows crossover SysAdmins todos commiserated con él. Simplemente no hay equivalente en Windows de poner /etc bajo el VCS. Hay algunos feo kludges hay, como imágenes de disco/toma de instantáneas o sólo forzando cambios de configuración a través de Políticas de Grupo (y el seguimiento de los cambios a la Gpo manualmente), pero nada casi igual de elegante.

Lo siento.

2voto

Tim Monahan Puntos 399

Personalmente creo que el seguimiento de los cambios en el registro de windows con Regshot. Tomar una instantánea antes de la modificación, a continuación, un segundo después de lo que es. También puede obtener un buen informe HTML de los cambios. Por supuesto, usted tiene que asegurarse de que sólo unos pocos cambios se realizan entre las instantáneas si usted quiere averiguar lo que cada cambio. Regshot es un programa de código abierto.

Si usted está buscando para el archivo de los cambios en el sistema de seguimiento/copia de seguridad de lo más cercano que existe probablemente sería DocShield. Usted puede rastrear cualquier carpeta con él a pesar de que los datos de la aplicación es probablemente su mejor opcion para sus preferencias personales de los cambios de la mayoría de los usuarios de windows perfiles consciente de software. DocShield es gratuito para los usuarios domésticos. Puede imitar lo que se hace mediante el uso de xcopy /d:{m-d-y} de las carpetas que usted necesita y, a continuación, zip/7z la salida.

A continuación, agregue la salida de las dos copias de seguridad a cualquier repositorio de control de versiones con tus observaciones.

1voto

beno Puntos 1148

No tengo un OS solución para usted, pero no es un pagados posibilidad. Lo que podría hacer, es una copia de seguridad de la unidad utilizando DriveImage XML

La copia de seguridad en formato XML. A continuación, puede guardar este archivo xml (diffs también son posibles) para su Versión favorita del Sistema de Control.

Como HarryMC ha dicho, realmente no se puede utilizar esta imagen para hacer cambios a un nuevo sistema, pero definitivamente puedes usar la imagen en un nuevo sistema con exactamente el mismo hardware.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: