SQL-Server 2008 R2: “El valor de la línea de comandos INSTALLSHAREDWOWDIR no es válido. Compruebe que la ruta de acceso especificada es válida y diferente de la ruta de acceso de INSTALLSHAREDDIR”

Pues llevo unas horas pegándome con este problema. Ayer un compañero se puso a instalar un SQL-Server 2008 y se le ocurrió poner la misma ruta para los recursos compartidos de la versión de x86 y para la de 64 bits. Cuando llegué hoy a restaurar la base de datos que tenía que ir en ese equipo me encontré con que no podía restaurarla.

Decidí que lo mejor sería desinstalar el motor de base de datos y volver a instalarlo, pero me saltó el error del título: “El valor de la línea de comandos INSTALLSHAREDWOWDIR no es válido. Compruebe que la ruta de acceso especificada es válida y diferente de la ruta de acceso de INSTALLSHAREDDIR. Como el tiempo apretaba y no acababa de encontrar en google ninguna solución para cambiar esas rutas pensé que la solución rápida sería instalar otra instancia con otro nombre y usar esa, dejando la primera mal instalada apagada, pero me encontré con que el instalador tampoco me permitía cambiar la ruta duplicada al iniciar una nueva instalación.

Busqué en Google pero no había casi pistas, de hecho el ejemplo que encontraba no solía ser para esto problema sino para otro en el que uno de los directorios está definido y el otro no, que no era el caso. La cosa era que si el programa de instalación estaba abriendo ya con una ruta cargada esa ruta tenía que estar definida en algún sitio. Fiándome de un foro busqué un fichero que se llamase config.ini o ConfigurationFile.ini sin suerte. Al final encontré esta entrada en otro blog donde alguien había tenido ese problema cuando intentó actualizar de un 2008 a un 2014.

La cosa es que la ruta está guardada en el registro del sistema, en concreto en la clave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-518\Components\0D1F366D0FE0E404F8C15EE4F1C15094 para INSTALLSHAREDDIR y en la clave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\ Components\C90BFAC020D87EA46811C836AD3C507F para INSTALLSHAREDWOWDIR. Decidí modificar todos los valores y cambiarlos por la ruta por defecto que suele usar SQL-Server para no tener ya más quebraderos de cabeza. Tras el cambio no tuve ni que reiniciar, volví a abrir el programa de instalación y me permitió desinstalar y volver a instalar correctamente.

Diferencia entre TLS y SSL

Me pregunta un cliente, que estaba configurando un cliente de correo, la diferencia entre TLS y SSL. Supongo que más gente tendará interés así que lo cuento por aquí:

Tanto TLS como SSL son protocolos de cifrado de datos que se aplican en la capa de transporte en internet (protocolos TCP/IP).

Photo by Markus Spiske on Pexels.com

SSL son las siglas de Secure Socket Layer, apareció originalmente en 1995 y tuvo varias revisiones (2.0 y 3.0) que corregían diversos problemas de seguridad. La versión 2.0 fue considerada obsoleta en 2011, mientras que la versión 3.0 fue marcada como tal en junio de 2015 tras encontrarse vulnerabilidades graves que facilitaban ataques man-in-the-middle.

TLS, abreviatura de Transport Layer Security, fue publicado originalmente en 1999 y también ha tenido varias revisiones, siendo la última de agosto de 2018, que nos trajo la versión 1.3 del protocolo. Las versiones 1.0 y 1.1 se consideran obsoletas, mientras que la versión 1.2 del protocolo (de 2008) todavía se permite bajo ciertas condiciones.

Entonces ¿Qué debo usar? Pues hoy por hoy lo recomendable es TLS 1.3, es la versión más actualizada y más segura. En algunos casos todavía encontraremos algunos servidores que utilizan TLS 1.2 por cuestiones de compatibilidad con alguna aplicación antigua. Cualquier versión anterior a la 1.2 debería ser considerada insegura y obsoleta.

Exodus Privacy: Controla quién te rastrea desde las apps de tu móvil Android

Hay un dicho: en internet si algo es gratis tú no eres el cliente sino el producto. Aunque no es así el 100% de las veces sí que es habitual que las empresas que nos proveen un servicio “gratis” realmente se estén lucrando comerciando con nuestros datos, ya sea a un nivel individualizado o usándolos de forma anonimizada en la elaboración de estadísticas y estudios. ¿Podemos saber quién está rastreándonos desde un app que tengamos instalada en nuestro teléfono? Podemos. Hablemos de Exodus Privacy.

Exodus Privacy es una ONG francesa cuyo objetivo es hacer a los usuarios conscientes del rastreo al que pueden ser sometidos a través de las apps de sus teléfonos móviles. Para ello se sirven tanto de canales de comunicación en redes sociales a través de los cuales hacer didáctica como de una herramienta de análisis, una herramienta que nos informa sobre que rastreadores trae incorporada una aplicación.

Captura ejemplo del app de Exodus Privacy

Disponemos de dicha herramienta en dos formatos: app y web. A la versión web podemos acceder a través de este enlace, en ella veremos un cuadro de texto donde podemos buscar apps por el nombre, o incluso pegar la url de un app del Google Play Store si queremos algo muy concreto, para obtener un informe sobre qué permisos solicita y qué rastreadores incorpora. La otra opción pasa por instalar la propia app de Exodus en nuestro teléfono, ya sea a través de la propia Play Store o de F.Droid. En su web además disponemos de otras cosas como un blog corporativo, informes sobre los distintos rastreadores que han detectado o explicaciones de los conceptos sobre los que hablan.

Abrir la carpeta inicio de Windows en Widows 10

Otro pequeño truquito: en las versiones antiguas de Windows la carpeta Inicio, donde podemos meter los programas y scripts que queremos que se ejecuten al arrancar el sistema operativo, estaba muy accesible: en el menú de Windows aparecía ya una sección “Inicio” y bastaba con un click derecho para navegar hasta ella. Pero en algún momento algún ingeniro a sueldo de Bill Gates decidió que tendría que estar más a desmano, porque patatas traigo. ¿Cómo encontrar la carpeta con facilidad en Windows 10?

Por defecto la carpeta de inicio común estaría en la ruta “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp” y la de usuario en “C:\Users\Username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup“, pero es bastante complejo acordarse de toda esta ruta de memoria, tranquilidad que existe un atajo.

Pulsando la tecla de windows y a la vez la tecla R se abrirá el menú para ejecutar un comando, en ese ventana debemos ejecutar la orden shell:startup si queremos abrir la carpeta de inicio del usuario o shell:common startup si queremos abrir la carpeta de inicio común.

Windows 10: Quitar de la barra de tareas el widget con la información meteorológica

La última actualización de Windows 10 ha activado un widget que nos muestra en la barra de tareas la información meteorológica y que, al pasar sobre él, nos despliega un menú con noticias con una selección basada en las preferencias que puedan inferirse de lo que hayamos visitado con nuestra cuenta de Microsoft conectada. Dicho widget resulta incómodo a mucha gente y ya son varios los que han llamado a mi trabajo preguntando cómo se desactiva, algo que realmente solo requiere de un par de clicks si se sabe a ciencia cierta dónde buscarlo.

Lo primero que tenemos que hacer es click derecho sobre la barra de tareas, acción que mostrará un menú en el que debemos situarnos sobre la opción Noticias e Intereses. Al posarnos en esa sección desplegará otro menú con tres opciones: “Mostrar Icono y texto“, “Mostrar solo el icono” y “Desconectar“. Por defecto estará marcada la primera, ahí ya podemos optar por “Desconectar” si no queremos ver nada o por la opción de “Mostrar solo el icono” si queremos verlo más reducido. Si queréis tenerlo visible pero lo que os molesta es que se abra automáticamente al situar el ratón encima basta con que desmarquéis la opción “Abrir al mantener el puntero“. Adjunto una imagen para que veáis de qué menú os hablo:

Configurar “impresión silenciosa” (silent print) en Chrome

El otro día veíamos la misma casuística con Firefox: trabajar con un app web que requiera imprimir algo de manera repetida y requieres cierta agilidad, por ejemplo tickets de compra o recibos. Si pulsamos imprimir el navegador abre una pantalla para seleccionar la impresora, haciéndonos perder unos segundos en tener que dar un nuevo click para confirmar la impresión. Vamos a ver cómo configurarlo ahora en Chrome, que será algo distinto.

Bueno, recordemos los pasos previos: tener la impresora deseada configurada como predeterminada y además haber definido las preferencias de impresión (cabecera, pie, márgenes, etc) a nuestro gusto. En el caso de Chrome me he encontrado con que la configuración que se usaba en versiones antiguas desde las flags ya no aparece, pero todavía tenemos la opción de abrir Chrome en modo kiosk. Esta es una modalidad que abre directamente una aplicación en ventana completa, que además es imposible de minimizar, pensado para puestos de trabajo como pueden ser puntos de venta. En este modo podemos usar la impresión directa. Añado que el modo kiosk está también disponible en Firefox:

  • Creamos un acceso directo a Chrome apuntando a la ruta donde esté instalado el ejecutable.
  • En las propiedades del acceso directo, en destino, añadimos después de la ruta al ejecutable la siguiente línea cambiando la URL del final por la que queremos usar: –kiosk –kiosk-printing “http://rutaalawebquequremosabrir
  • Esto abrirá Chrome en el modo de ventana completa y con la impresión silenciosa por defecto.

¿Cómo ver la cabecera de un correo con GMail?

Si tienes una cuenta de Gmail y sus su cliente web para ver los correos es posible que alguna vez te hayas preguntado si se puede ver la cabecera de los mismos. Sí, es posible.

Si entras en el correo del que quieres ver la cabecera comprobarás que a la derecha, al lado del botón de Responder hay un icono con tres puntos (en la imagen está ya marcado).

Al pulsarlo se desplegará un menú en el que debemos seleccionar la opción Mostrar Original. Al hacerlo nos llevará a una pantalla donde veremos todo el código del email, con su cabecera incluída:

Ahí podemos ya copiar la cabecera del correo para lo que la necesitemos.

Configurar “impresión silenciosa” (silent print) en Firefox

Imagina que trabajas con una aplicación web desde la que tienes que imprimir algo de manera repetida y requieres cierta agilidad, por ejemplo tickets de compra o recibos. Si pulsas imprimir el navegador abrirá una pantalla para seleccionar la impresora, haciéndote perder unos segundos en tener que dar un nuevo click para confirmar la impresión. ¿Se puede configurar el navegador para que esta impresión sea silenciosa? ¿Para que directamente mande el documento a la impresora predeterminada sin preguntar? Se puede. Veamos como hacerlo con Firefox.

Bueno, como pasos previos tendríamos que tener la impresora deseada configurada como predeterminada y además deberíamos ya haber definido las preferencias de impresión (cabecera, pie, márgenes, etc) a nuestro gusto. Suponiendo que eso esté listo pasamos a configurar Firefox por pasos.

  • Escribimos about:config en la barra del navegador. Nos llevará a una pantalla de confirmación donde aceptaremos sin miedo y esta nos redirigirá al buscador de características.
  • Buscamos la característica print.always_print_silent escribiéndolo tal cual. Ahora hay dos opciones:
  • Si existe hacemos doble click o click en el botón de alternar que aparecerá a la derecha y la dejamos con el valor true.
  • Si no existe ya nos saldrá una barra con la opción de añadir esta nueva característica pulsando el botón con el símbolo + situado a la derecha. Debemos definirla como boolean. Una vez definida le damos el valor true.

Tras eso reiniciamos el navegador y podemos comprobar que si mandamos una página a la impresora ya no nos pide seleccionar qué máquina queremos usar, la envía directamente a la predeterminada.

Usar Powershell para cambiar configuración de red entre pública y privada

Cuando hice el curso de fundamentos de Powershell hace un año me quedó algún artículo pendiente de escribir, por ejemplo esta entrada ¿cómo puedo cambiar la configuración de red entre pública y privada? El funcionamiento del cortafuegos será distinto si usamos una configuración u otra.

Lo primero es ver qué comando podemos usar para ver la configuración de nuestra conexión. Este sería Get-NetConnectionProfile. Nos devolverá una serie de datos, entre los que aparece una línea que pone Network Category. Ahí nos dirá si la conexión es pública o privada. También nos dará el nombre, Name, del adaptador de red, dato que necesitaremos para conectarlo.

¿Cómo lo cambiamos? Pues de la siguiente forma:

  • Para ponerlo como privado: Set-NetConnectionProfile -Name “ElNombreDeNuestraRed” -NetworkCategory Private
  • Para ponerlo como público: Set-NetConnectionProfile -Name “ElNombreDeNuestraRed” -NetworkCategory Public

¿Qué es la paridad en una configuración de RAID?

Bueno, mi última entrada había sido explicar qué es un RAID y raíz de eso me han preguntado otra cosa ¿Qué es la paridad?

Bueno, la información de paridad es un tipo de redundancia que nos permite recuperar los datos al vuelo en caso de que falle algún disco. Esto también lo permite una copia en espejo (RAID 1), pero con una diferencia: En el artículo anterior veíaimos que en un RAID 1 tenemos todo un disco ocupado con los datos redundantes, en cambio en un RAID 5 decíamos que solo ocupábamos el equivalente a un disco para almacenar la paridad, si tenemos cuatro discos aprovechamos el espacio de 3 ¿Qué brujería es esta? Pues una brujería matemática.

La información de paridad es una informacion calculada operando con el resto de datos de la misma división. De esta forma si se rompe un disco podemos recuperarlos comparando los datos que tenemos con los de paridad. Por poner un ejemplo simplificado, pensemos en álgebra sencilla. Imagina que calculásemos la paridad sumando los valores de los sectores de una misma división: El valor del sector 1 sería 1, del sector 2 sería 2, del sector 3 sería 3 y la paridad sería su suma ( 1+2+3=6 ). Si se rompiese el disco que conteía el sector 2 tendríamos esto en nuestros discos: 1+X+3=6. Podemos resolver la ecuación para saber que X era 2 antes de tener que cambiar el disco. Aunque el cálculo de paridad es realmente más complejo, esencialmente sería algo así.

Los sistemas de paridad simple más sencillos suelen usar la operación XOR para hacer estos cálculos a nivel de bit. Los sistemas más complejos, por ejemplo la doble paridad del RAID 6, utilizan operaciones más complicadas como un código Reed-Solomon u operaciones sobre un campo de Galois concreto. El requerir operaciones más complejas para calcular la paridad provoca que la velocidad de escritura sea menor, a cambio de conseguir una mayor tolerancia a fallos ya que podrían fallar hasta dos discos sin que perdamos datos.