Un ESXi en modo día de la marmota

2021-02-02T18:05:31+01:00 | 5 minutos de lectura | Actualizado en 2021-02-02T18:05:31+01:00

Un ESXi en modo día de la marmota

Ya se que no es el día de la marmota.
Pero ¿A quién le apetece reinstalar cada 60 días?

Un ESXi en modo día de la marmota

Es sencillo, pero no tanto.

Antes de seguir, ya lo he comentado pero lo repito.

Si os registráis en la web de Vmware, justo donde se descarga la ISO de ESXi, al darnos de alta obtendremos una licencia de tipo perpetuo y con las funcionalidades de la versión “free”.
Este procedimiento lo utilizo para cuando tengo que entregar una instalación a un cliente, que mi trabajo no consuma los 60 días de prueba que tiene por derecho, y en caso de fallo de su licencia, lo necesitará.
Ni es un procedimiento soportado ni es un procedimiento “legal”, pero que en ciertas ocasiones nos permitirá hacer cosas que de otra manera no podríamos. Si no sabes a que me refiero, esto no es para ti.

Y por su puesto, como siempre, disclaimer, pliego de descargo o como lo queramos llamar.

Aviso: Este procedimiento lo libero con fines pedagógicos y de prueba. No es legítimo en entornos de producción.
Aviso: Este procedimiento funciona para un ESXi Server independiente entre las versiones 3.5 y 7.0.
Aviso: El procedimiento no es operativo en servidores conectados a un vCenter Server.
Aviso: Usar con precaución y bajo vuestra propia responsabilidad.

Base de trabajo, la consola ssh

Lo primero que necesitamos es habilitar la consola ssh:
primera captura

Y por supuesto, accedemos. Por ssh.
segunda captura

Los ficheros que nos interesan son /etc/vmware/vmware.lic y /etc/vmware/license.cfg.

/etc/vmware/.#license.cfg Contiene la clave privada base para la generación de nuevas claves.
/etc/vmware/license.cfg Contiene la clave firmada a fecha de la activación del periodo de gracia. En principio, la fecha de la instalación.

tercera captura

¿Qué hay que hacer?
Pues tan simple como eliminar un fichero y sustituirlo por el otro, y luego reiniciar los agentes.

rm -r /etc/vmware/license.cfg
cp /etc/vmware/.#license.cfg /etc/vmware/license.cfg
/etc/init.d/vpxa restart

Como podéis apreciar, en busybox no está permitido el renombrado directo ni la sobreescritura.
cuarta captura

Tras reiniciar los agentes, podemos ir a host, sección manage y pestaña licensing, con una nueva fecha de expiración.
quinta captura

En la pestaña principal, también podemos verlo, y lo mejor de todo, no hemos alterado el uptime para nada.
sexta captura

Una mejora. Mantener el reinicio de la licencia sin perderlo en caso de reinicio o caída

Lo que vengo a decir es que hay que hacerlo cada sesenta días a mano, y automatizarlo con cron no es la panacea, pero es viable.
Así que el primer paso es que lo pongamos, en un datastore accesible, un script y sus debidos permisos.

#!/bin/sh
## Eliminar licencia
rm -r /etc/vmware/license.cfg
## Cambiar a una nueva licencia de 60 días
cp /etc/vmware/.#license.cfg /etc/vmware/license.cfg
## reinicio de servicios
/etc/init.d/vpxa restart

Algo como esto:
séptima captura

Para modificar el fichero cron, necesitaremos tirar de la documentación, pero como es inexacta para mi gusto, todo lo que podáis leer tanto en la documentación como aquí lo voy a mejorar un poco.

Lo primero, para obtener la información de los procesos, no tendremos ps como tal si no que es el binario de busybox el que lo emula por lo tanto hay que ser creativo.

Necesitaremos la línea de comandos que invoca el proceso, el tipo y que no se coma los valores. Para ello, ps -ctv es la vía a diferencia de lo que propone la documentación.

¿Que más hace falta? pues filtrar. Tenemos un montón de filtros y un montón de datos.

  • Lo primero será seleccionar los registros que apunten a crond con lo que podemos usar grep o egrep. Si no hay varios, mala historia, mejor reiniciar.
  • Lo siguiente será extraer tan solo el primero de los procesos. Para ello usaremos head como head -1.
  • Y por último, el filtro potente de verdad, awk, que nos saque el primer campo, con '{print $1}'.
  • y para rizar el rizo y meterlo en un oneliner…
kill $(ps -ctv | egrep "crond" | head -1 | awk '{print $1}')

Vale, ya hemos matado el demonio, y hay que tocar el ficero localizado en /var/spool/cron/crontabs/root

/bin/echo "0 22 1 * * /vmfs/volumes/SSD-LOCAL/evaluacion.sh" >> /var/spool/cron/crontabs/root

Se ejecuta a las 10 de la noche de cada día 1 de cada mes

Solo queda rearrancar con /usr/lib/vmware/busybox/bin/busybox crond que el propietario es busybox.

octava captura

No queremos que cada reinicio, deseado o no, implique tener que hacer de nuevo el cambio, así que sería razonable introducir el script como proceso parte del proceso de arranque.
Esto se realiza desde /etc/rc.local.d/local.sh y queda tal que así, que dejo a propósito para que se pueda copiar y pegar.

#!/bin/sh

# local configuration options

# Note: modify at your own risk! If you do/use anything in this
# script that is not part of a stable API (relying on files to be in
# specific places, specific tools, specific output, etc) there is a
# possibility you will end up with a broken system after patching or
# upgrading. Changes are not supported unless under direction of
# VMware support.
kill $(ps -ctv | egrep "crond" | head -1 | awk '{print $1}')
/bin/echo "0 22 1 * * /vmfs/volumes/SSD-LOCAL/evaluacion.sh" >> /var/spool/cron/crontabs/root
/usr/lib/vmware/busybox/bin/busybox crond

Así reescribe el fichero root cuando reiniciemos la máquina.

Espero que haya sido de utilidad.

Una bonita postdata

He visto por ahí, en otros manuales, que más simple que buscar un proceso es localizar su pid en el sistema de ficheros. Quedaría algo parecido a:

kill $(cat /var/run/crond.pid)

YoVirtualizador en formato podcast. Ahora también en Sospechosos Habituales: https://feedpress.me/sospechososhabituales
Y sin más, os dejo los enlaces:

Web: https://www.yovirtualizador.com
Grupo de telegram: https://t.me/grupovirtualizador
Podcast: https://www.ivoox.com/podcast-yovirtualizador_fg_f1563806_filtro_1.xml
Canal de youtube: https://www.youtube.com/channel/UC0R70cABSsmC6TFyXth0qPg
Enlace de afiliados de amazon: https://amzn.to/3gX3HmK
Enlace de referidos de la Asociación Podcast: https://www.asociacionpodcast.es/registrarse/socio/?coupon=SB6A70

© 2019 - 2025 YoVirtualizador

Tu podcast y blog de confianza

Política de comentarios

En YoVirtualizador, todos los comentarios serán bienvenidos pero moderados.

Los grupos de telegram y redes sociales tienen moderación activa. Consulta con sus administradores.

Respetos guardan respetos.

El contenido irrelevante u ofensivo será eliminado.

Acerca de YoVirtualizador

YoVirtualizador es la marca de varios proyectos

Podcast de informática profesional. Canal de Youtube sobre el blog, el podcast y de temática profesional. Blog de contenido diverso, con temática BOFH y técnica.

Gracias por la lectura.

Galletas

Política de cookies

Lo de las galletas en 2025

En YoVirtualizador no usamos cookies para nada, pero los servicios de discus y analytics recopilan datos en servidores ajenos a YoVirtualizador sin que yo pueda hacer nada. Si no quieres galletas, usa un navegador que no ejecute javascript.

Este aviso es sólo porque algún político tenía que justificar su existencia, y ahora además hay que redactar.

Legislación aplicable:

  • Reglamento (UE) 2016/679 del Parlamento Europeo y del Consejo, de 27 de abril de 2016, General de Protección de Datos (RGPD) (Aplicable desde mayo de 2018),“Establece la definición y los requisitos del consentimiento (libre, informado, específico e inequívoco) y los derechos del interesado. Es la norma principal sobre datos personales.”
  • Artículo 22 de la Ley 34/2002, de 11 de julio, de servicios de la sociedad de la información y de comercio electrónico (LSSI). Es la norma específica española sobre cookies. Establece la obligación de informar y obtener el consentimiento para el uso de dispositivos de almacenamiento y recuperación de datos (cookies) que no sean estrictamente necesarios.
  • Ley Orgánica 3/2018, de 5 de diciembre, de Protección de Datos y garantía de los derechos digitales (LOPDGDD) (Aplicable desde diciembre de 2018),Es la ley española que desarrolla y adapta el RGPD al ordenamiento jurídico español. Complementa la LSSI en lo relativo a la protección de datos personales.

Definición y función de las cookies

¿Qué son las cookies? Una cookie es un fichero que se descarga en su ordenador al acceder a determinadas páginas web. Las cookies permiten a una página web, entre otras cosas, almacenar y recuperar información sobre los hábitos de navegación de un usuario o de su equipo y, dependiendo de la información que contengan y de la forma en que utilice su equipo, pueden utilizarse para reconocer al usuario.
¿Qué tipos de cookies utiliza esta página web? Cookies propias: Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio gestionado por el propio editor y desde el que se presta el servicio solicitado por el usuario. Cookies de terceros Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio que no es gestionado por el editor, sino por otra entidad que trata los datos obtenidos través de las cookies. Cookies persistentes Son un tipo de cookies en el que los datos siguen almacenados en el terminal y pueden ser accedidos y tratados durante un periodo definido por el responsable de la cookie, y que puede ir de unos minutos a varios años. Cookies de análisis Son aquéllas que bien tratadas por nosotros o por terceros, nos permiten cuantificar el número de usuarios y así realizar la medición y análisis estadístico de la utilización que hacen los usuarios del servicio ofertado. Para ello se analiza su navegación en nuestra página web con el fin de mejorar la oferta informativa, productos o servicios que le ofrecemos. Cookies publicitarias Son aquéllas que permiten la gestión, de la forma más eficaz posible, de los espacios publicitarios que, en su caso, el editor haya incluido en una página web, aplicación o plataforma desde la que presta el servicio solicitado en base a criterios como el contenido editado o la frecuencia en la que se muestran los anuncios.

Asimismo es posible que al visitar alguna pagina web o al abrir algún email donde se publique algún anuncio o alguna promoción sobre nuestros productos o servicios se instale en tu navegador alguna cookie que nos sirve para mostrarte posteriormente publicidad relacionada con la búsqueda que hayas realizado, desarrollar un control de nuestros anuncios en relación, por ejemplo, con el numero de veces que son vistos, donde aparecen, a que hora se ven, etc

Ayuda con las galletas

Como algún político tenía que justificar su existencia, yo te cuento como lo vamos a hacer.

Revocación y eliminación de cookies (IA generativa dixit)

Usted puede permitir, bloquear o eliminar las cookies instaladas en su equipo mediante la configuración de las opciones del navegador instalado en su ordenador, en caso que no permita la instalación de cookies en su navegador es posible que no pueda acceder a alguna de las secciones de nuestra web.

A continuación puede encontrar como acceder a la configuración de las cookies en los principales navegadores:

  • Internet Explorer: Menú Herramientas -> Opciones de Internet -> Privacidad -> Configuración. También puede consultar el soporte de Microsoft o la Ayuda del navegador.
  • Firefox: Menú Herramientas -> Opciones -> Privacidad -> Historial -> Configuración Personalizada. También puede consultar el soporte de Mozilla o la Ayuda del navegador.
  • Chrome: Menú Configuración -> Mostrar opciones avanzadas -> Privacidad -> Configuración de contenido. También puede consultar el soporte de Google o la Ayuda del navegador.
  • Safari: Menú Preferencias -> Seguridad. También puede consultar el soporte de Apple o la Ayuda del navegador.