Detener la sincronización de tiempo/fechas entre Host y Guest en Virtual Box
Ésta es otra de esas entradas que surgieron a partir de una necesidad sencilla pero para la cual no hay mucha documentación y la que hay no es del todo clara. El problema en cuestión surge al intentar cambiar la fecha del sistema en nuestro SO huésped (virtualizado) y quedar frustrados tras varios intentos porque la fecha cambia después de unos segundos, esto se debe a que un servicio en concreto se encarga de hacerlo, éste servicio es parte de las "Guest Additions", suele ser de mucha ayuda, sin embargo en ocasiones conviene cambiar la fecha de nuestro sistema ya sea para registrar programas, alterar fechas de creación de documento, seguido de una larga lista de etcéteras.
Para el caso de los huéspedes (Guests) Windows se llama "VboxService.exe" y se encuentra ubicado en la carpeta "System32" y para los huéspedes Linux "vboxadd-timesync" y se encuentra instalado en "/etc/init.d".
Asumiré que tienen instaladas las "Guest Aditions" en sus huéspedes y que se trata de un huésped corriendo Windows, ya que creo que es lo más común, lo primero que tendremos que hacer es detener el servicio y desregistrarlo para luego crear nuevamente nuestro servicio pasándole un parámetro concreto, para detener el servicio basta con enviar al huésped un "Ctrl + Alt + Supr" lo que se hace con la tecla "Host" que tengan configurada (por defecto es Ctrl derecho) y "Supr", una vez que aparezca el administrador de tareas de Windows, buscamos el proceso y lo terminamos:
Aceptamos la molesta advertencia de terminar un proceso en Windows y continuamos, una vez detenido, será necesario desregistrar el servicio lo cual hacemos desde una terminal MS-DOS mediante el comando "VboxService -u" con esto queda eliminado de los servicios de Windows, ahora hay que levantar nuevamente el servicio pero pasándole el parámetro "--disable-timesync" ya aprovechando nuestra terminal ejecutamos:
sc create VirtualTimex binpath= "C:\Windows\System32\VboxService.exe --disable-timesync" type= own start= auto
Otra alternativa que se me ocurrió fue levantar el servicio como aplicación de inicio mediante "regedit" sin embargo encontré el inconveniente de que a pesar de pasarle el parámetro "-f" aparecía una molesta ventana con la información del servicio.
Me podría pasar mucho tiempo explicando el comando sc, sin embargo por ahora es lo que menos tengo, disculpen las molestias ya será para otra ocasión, lo que si les puedo decir es que puede resultar muy interesante su uso para aquellos que intenten registrar un servicio incluso de manera remota, jajajajaja muchas ideas malignas vienen a mi mente...
Si a alguien le interesa el uso de este comando la documentación esta en el sitio oficial de Mocosoft jaja.
SaluDoS!!!
Y funciona?¿?¿ No se pierde la calidad de las caracteriticas de los Guest Additions?¿??¿
ResponderEliminarSí, funciona a la perfección porque yo mismo lo he usado para poder tener el control del tiempo de mis máquinas virtuales, la calidad de las Guest Addions no se ve afectada porque el único servicio que detienes es el que se encarga de mantener sincronizado el reloj del anfitrión con la máquina virtual, los demás servicios de y componentes de las Guest Addions no se ven afectados por este cambio.
ResponderEliminarfunciona sin problemas.. gracias
ResponderEliminarmuchas gracias, me paso que no podía cambiar la fecha para hacer unas pruebas, mate ese servicio y pude hacer el cambio. Gracias
ResponderEliminarmas facil en bat
ResponderEliminarEcho stop servicio
VboxService -u
Echo star servicio sin sincronizacion
VboxService --disable-timesync
Echo Creata servicio sin sincronizacion
sc create VirtualTimex binpath= "C:\Windows\System32\VboxService.exe --disable-timesync" type= own start= auto
Echo fin
pause
Una pregunta, alguno de ustedes intentó reiniciar el guest para comprobar que la sincronización aún siguiera detenida?
ResponderEliminarAún reiniciando el "Guest" la sincronización prevalece el cambio si lo hiciste de manera correcta, en caso de que por alguna extraña razón no se grabará el cambio, siempre existe la forma posibilidad de volverlo a dejar como estaba mediante un bat como comentaron antes y hacer que se ejecute al inicio.
EliminarSaluDoS!!!
muy interesante !!! espero que sirva a mis propósitos, gracias por la información
ResponderEliminarFunciona, lo probe en un guest winserver12, reinicie y sigio desincronizado.........gracias
ResponderEliminarExcelente!!! Gracias por compartir!
ResponderEliminarMe ha funcionado, muchas gracias!!!
ResponderEliminarno podia me salia ERROR 5, pero me hice el bat del comentario y lo ejecute como administrador y funciono
ResponderEliminarmuy bueno, fácil de entender muchas gracias
ResponderEliminarNo funciona cuando reinicias la maquina virtual ¿verdad?
ResponderEliminaren efecto el problema es al reiniciar el equipo, por eso lo puedes editar para que se ejecute al inicio.
Eliminarexelente, esto me ha funcionado como esperaba
ResponderEliminarMe funciono. Mil Gracias
ResponderEliminar