Hacer cambios en Thinux

![Imagen](/s/image/making-changes-in-thinux/making-changes-in-thinux.webp)

Nuestras gamas de productos Neo y Micro vienen con nuestro sistema operativo Thinux Embedded Linux preinstalado.

Thinux está basado en Ubuntu Linux. En el momento de escribir esto, está basado en Ubuntu 20.04.4 LTS en el Micro 5 y Ubuntu 22.04.1 en el Micro 6. Sin embargo, Thinux difiere de Ubuntu de algunas maneras importantes. En primer lugar, incluimos controladores específicos para nuestro hardware que no están disponibles en los repositorios upstream. También incluimos servicios del sistema que protegen el hardware de daños. Esto puede parecer inusual para las personas acostumbradas a PCs con BIOS. Los procesadores Intel y AMD tienen protección térmica integrada: reducen su velocidad de reloj y apagan algunos núcleos cuando se acercan al sobrecalentamiento. En el peor de los casos, el procesador y la BIOS apagan abruptamente el ordenador para evitar daños. Los procesadores ARM todavía no proporcionan este nivel de protección. El gestor de arranque U-Boot utilizado en sistemas ARM no permanece en memoria después de transferir el control a Linux, por lo que no protege los componentes de hardware de daños térmicos u otros daños en segundo plano.

Por esta razón, cuando los clientes nos piden que desactivemos o reemplacemos Thinux en nuestros productos basados en ARM, les informamos que esto anulará la garantía de su hardware. Esta política es similar a la política de los fabricantes de teléfonos Android para desbloquear los gestores de arranque. Para obtener la contraseña de root del sistema, debe llamarnos o escribirnos. Si su dispositivo está basado en ARM, debemos marcarlo como fuera de garantía antes de darle la contraseña.

La principal diferencia entre Thinux y Ubuntu es que Thinux monta su sistema de archivos raíz en modo de solo lectura. Por lo tanto, no puede usar apt y otros comandos para hacer cambios en el sistema operativo. Si tiene la contraseña de root, puede hacer cambios en /etc y /var. Los procesos que se ejecutan con privilegios de root también hacen cambios en /etc y /var, incluso cuando el usuario no tiene la contraseña de root. Thinux almacena estos cambios en la partición /overlay, no en la partición /. Puede leer más sobre el sistema de archivos overlay en kernel.org.

Para hacer cambios en /, primero debe volver a montar el sistema de archivos / en modo lectura-escritura. Ejecute los siguientes comandos en un terminal:

su - # introduzca la contraseña de root cuando se le solicite
umount -l /etc
umount -l /var
mount -o rw,remount /

Ahora puede hacer cambios en /. Cuando haya terminado, reinicie el sistema para devolver el sistema de archivos raíz al modo de solo lectura (ro).

Si ya no desea utilizar la función de raíz de solo lectura de Thinux, puede desactivarla permanentemente haciendo los siguientes cambios en /etc/fstab. Primero, desmonte /etc de forma diferida como se muestra en el bloque de código anterior. Un archivo /etc/fstab típico se ve así:

proc                 /proc       proc    defaults                                           0    0
LABEL=thinux         /           ext4    defaults,ro,noatime                                0    1
LABEL=data           /overlay    data    defaults,noatime                                   0    2
mount_over           /etc        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
mount_over           /var        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
mount_over           /home       over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
mount_over           /tmp        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
/overlay/swapfile    swap        swap    pri=-1,x-systemd.requires-mounts-for=/overlay      0    0

Cámbielo para que se vea así:

proc                 /proc       proc    defaults                                           0    0
LABEL=thinux         /           ext4    defaults,rw,noatime                                0    1
LABEL=data           /overlay    data    defaults,noatime                                   0    2
#mount_over          /etc        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
#mount_over          /var        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
mount_over           /home       over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
mount_over           /tmp        over    defaults,x-systemd.requires-mounts-for=/overlay    0    0
/overlay/swapfile    swap        swap    pri=-1,x-systemd.requires-mounts-for=/overlay      0    0

Utilizamos un sistema de archivos raíz de solo lectura por las siguientes razones. Más del 99% de nuestros clientes no necesitan instalar software nuevo en sus ordenadores. Utilizan sus ordenadores como clientes ligeros u ordenadores en la nube, y hacen la mayor parte de su trabajo en el cliente RDP o el navegador web. El software preinstalado, como LibreOffice, es suficiente para su trabajo. En lugar de actualizar paquetes individuales con apt, actualizamos todo el sistema de archivos raíz a la vez, como una única imagen binaria. Otros sistemas operativos embebidos, como Android e iOS, se actualizan de manera similar (aunque tienen aplicaciones y Thinux no). Esto nos permite probar cada actualización a fondo en nuestro propio hardware antes de lanzarla, y asegurar que todos los cambios y aplicaciones actualizadas en la actualización funcionen bien juntas. También evita que el ordenador de un usuario quede inutilizable cuando se interrumpe una actualización de apt o dpkg, ya que nuestro sistema de actualización maneja los apagados abruptos de forma segura.