static-httpd

Sitio web estático (HTML + CSS) que sostiene el blog del autor
Log | Files | Refs

index.html (3213B)


      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      5 <meta name="viewport" content="width=device-width, initial-scale=1" />
      6 <title>Del machine-id en relación al clonado de discos</title>
      7 <link rel="icon" type="image/png" href="/favicon.png" />
      8 <link rel="stylesheet" type="text/css" href="../article.css" />
      9 </head>
     10 <body>
     11 <header>
     12 <p class="title">Del <i>machine-id</i> en relación al clonado de discos</p>
     13 <p class="date">22 de marzo de 2021 • fjbalon</p>
     14 </header>
     15 <p>¿Qué es el <emb>machine-id</emb>? Desde las páginas de <a href="https://www.man7.org/linux/man-pages/man5/machine-id.5.html">man</a> se define como un identificador exclusivo de la máquina. «Este debe considerarse confidencial y no debe exponerse en entornos que no sean de confianza» se encuentra escrito en la documentación, lo que de primeras nos presenta algunos problemas que he desarrollado más adelante.</p>
     16 <p>Lo primero que hay que entender es que éste se genera en el momento de la instalación del sistema operativo sobre el hardware concreto. Cuando, como administradores de sistemas nos dedicamos a clonar discos, es común que éstos mantengan el mismo identificador, generado a partir del hardware inicial del primer elemento de la clonación. Esto puede provocar conflicto a posteriori, por ejemplo, cuando generamos una interfaz de red bridge, que generará la MAC a partir del <emb>machine-id</emb>, y podría ocasionar conflicto en la red por simultaneidad.</p>
     17 <p>Lo segundo, quizá, es su uso. El uso que da <emb>systemd</emb> al <emb>machine-id</emb> parece ambiguo, sirviendo a:</p>
     18 <ul>
     19 <li>La creación de identificador de host DHCP (probablemente causando que varias máquinas peleen por la misma dirección IP en el servidor DHCP).</li>
     20 <li>GNOME almacena la configuración del diseño de pantalla firmada por el identificador.</li>
     21 <li>El gestor de arranque EFI de <emb>systemd-boot</emb> almacena los kernels de instalación del sistema operativo en un directorio con el nombre del identificador para evitar colisiones.</li>
     22 </ul>
     23 <p>Aunque probablemente tenga más usos obtusos que no serán conocidos hasta estudiar profundamente el código.</p>
     24 <p>El fichero que almacena dicho <emb>machine-id</emb> es <emb>/etc/machine-id</emb>. Observará que este valor también se almacena en <emb>/var/lib/dbus/machine-id</emb> y que existe un enlace simbólico entre los dos. Cualquier cambio en un archivo, se reflejará en el otro.</p>
     25 <pre><code>cat /etc/machine-id
     26 35f7f8a5f915453782892638656ad9fd
     27 cat /var/lib/dbus/machine-id
     28 35f7f8a5f915453782892638656ad9fd
     29 ls -l /var/lib/dbus/machine-id
     30 lrwxrwxrwx 1 root root 15 nov 11  2021 /var/lib/dbus/machine-id -> /etc/machine-id</code></pre>
     31 <p>Como decíamos, el <emb>machine-id</emb> se genera aleatoriamente en la instalación del sistema utilizando la utilidad <emb>systemd-machine-id-setup</emb>, que llama a su vez a <emb>dbus-uuidgen</emb>. Cambiarlo manualmente es muy sencillo y puede hacerse desde cualquiera de las utilidades citadas:</p>
     32 <pre><code>sudo rm /etc/machine-id
     33 sudo systemd-machine-id-setup
     34 
     35 sudo rm /etc/machine-id
     36 sudo dbus-uuidgen --ensure=/etc/machine-id</code></pre>
     37 </body>
     38 </html>