Systemd cambiará el funcionamiento de su directorio de inicio de Linux

El equipo detrás de systemd quiere que adopte una nueva forma de administrar los directorios de inicio. Llamarlo «nueva forma» es ponerlo a la ligera: este es un verdadero cambio de paradigma para Linux. Aquí está todo lo que necesita saber sobre systemd-homed, que probablemente llegará a una distribución de Linux cerca de usted.

No es ajeno a la controversia

Cuando systemd se introdujo en 2010, la comunidad de Linux se dividió en tres campos. Algunos pensaron que era una mejora, y otros pensaron que era un diseño defectuoso que no se adhirió a la filosofía Unix. Y a algunos no les importaba de una forma u otra.

La reacción de los opositores fue fuerte, acalorada y, en algunos casos, casi fanática. Lennart Poettering, ingeniero de software en sombrero rojo y co-desarrollador de systemd, incluso recibió amenazas de muerte.

En YouTube se publicaron canciones que abogaban por la violencia contra Poettering, y aparecieron sitios web que intentaban obligar a los usuarios de Linux a boicotear systemd. Su co-desarrollador, Kay Sievers, también recibió críticas y abusos, pero Poettering ciertamente se llevó la peor parte.

Sin embargo, en ocho meses, Fedora estaba usando systemd. A finales de 2013, Arco, Debian, Manjaroy Ubuntu todos se habían trasladado a systemd. Por supuesto, la gloria del código abierto es que si no te gusta algo, puedes bifurcar el código fuente y hacer tus propias cosas con él. Nuevas distribuciones, como Devuan, que era una bifurcación de Debian, se crearon únicamente para evitar el uso de systemd.

Su directorio $ HOME

En la estructura de directorios de Linux, todo lo que haces reside en el directorio «/ home». Sus archivos de datos, imágenes, música y todo el árbol del directorio personal se almacenan dentro de este directorio que lleva el nombre de su cuenta de usuario.

La configuración de sus aplicaciones se almacena en su carpeta de inicio en «directorios de puntos» ocultos. Si el primer carácter del nombre de un archivo o directorio es un punto (.), Está oculto. Debido a que estas configuraciones se almacenan localmente y no en un registro central, y debido a que una copia de seguridad de su directorio personal incluye estos archivos y carpetas ocultos, también se respaldan todas sus configuraciones.

Cuando restaura una copia de seguridad y enciende una aplicación, como LibreOffice o Thunderbird, busca su directorio oculto. También encuentra las preferencias de su documento, la configuración de la barra de herramientas y cualquier otra personalización. Thunderbird encuentra la información de su cuenta de correo electrónico y su correo electrónico. No tiene que pasar por el dolor de configurar lentamente cada aplicación.

  Cómo actualizar a Linux Mint 19.3

Puede usar ls con la opción -a (todo) para ver los archivos y directorios ocultos. Primero, escriba lo siguiente:

ls

Esto le muestra los archivos y directorios habituales. A continuación, escriba lo siguiente:

ls -a

Ahora, puede ver los archivos y directorios ocultos.

Está en una ventana de terminal.

Debido a que es la parte más valiosa de una instalación, es común que el directorio «/ home» se monte en su propia partición o en un disco duro separado. De esta manera, si algo catastrófico le sucede al sistema operativo o la partición en la que se encuentra, puede reinstalar su distribución de Linux o cambiar a una nueva. Luego, puede simplemente volver a montar su partición de inicio existente en «/ home».

Datos sobre usted

Su directorio personal no solo almacena sus datos; también almacena información sobre usted. incluyendo algunos atributos de su identidad digital. Por ejemplo, su directorio «.ssh» almacena información sobre las conexiones remotas que ha realizado con otras computadoras y las claves SSH que ha generado.

Otros atributos del sistema, como el nombre de usuario, la contraseña y la identificación de usuario única de su cuenta, se almacenan en otro lugar en archivos como «/ etc / passwd» y «/ etc / shadow». Cualquiera puede leer algunos de estos, pero otros solo pueden ser leídos por personas que tengan privilegios de root.

Así es como se ve el contenido del archivo «/ etc / passwd»:

cat /etc/passwd

cat / etc / passwd en una ventana de terminal.

Los cambios systemd-homed

La intención de los cambios de systemd-homed es proporcionar un directorio de inicio completamente portátil con sus datos y su identidad digital de Linux almacenados en él. Su UID y todos los demás mecanismos de identificación y autenticación se almacenarán solo dentro de su directorio personal.

Debido a su diseño de “todos los huevos en una canasta”, los directorios de inicio están encriptados. Se descifran automáticamente cada vez que inicia sesión y se vuelven a cifrar cada vez que cierra la sesión. El método preferido es utilizar el Configuración de clave unificada de Linux (LUKS) cifrado de disco. Sin embargo, hay otros esquemas disponibles, como fscrypt.

UN Notación de objetos JavaScript El registro de usuario (JSON) almacena toda su información de identidad en un directorio llamado «~ / .identity». Está firmado criptográficamente con una clave que está fuera de su control.

  Cómo instalar el tema Qogir GTK en Linux

El directorio de inicio de cada persona está montado en un dispositivo de bucle invertido, similar a la forma en que se monta una aplicación instantánea. Esto es así para que el árbol de directorios dentro del directorio de inicio aparezca como una parte integrada del árbol de directorios del sistema operativo. El punto de montaje predeterminado es “/home/$USER.homedir” (“$ USER” se reemplaza por el nombre de la cuenta de la persona).

¿Cuales son los beneficios?

Debido a que su directorio de inicio se convierte en una encapsulación segura de todos sus datos, incluso podría tener su directorio de inicio en un dispositivo extraíble. Por ejemplo, puede usar una unidad USB para moverla entre su trabajo y las máquinas domésticas, o cualquier otra computadora instalada en el sistema.

Esto es lo que Poettering quiere decir con «un directorio personal completamente portátil». Dijo que incluso si no desea mover su directorio personal en un dispositivo portátil, esto facilitará las actualizaciones y migraciones y aumentará la seguridad.

Elimina lo que él llama «bases de datos complementarias», que contienen fragmentos de información importante sobre usted que Poettering cree que debería centralizarse. Los archivos “/ etc / passwd” y “/ etc / shadow” contienen información de autenticación y contraseñas hash. Sin embargo, también contienen información como su shell predeterminado, el Supervisor Operativo Integral de General Electric (GECOS) campo.

Poettering dijo esto metadatos deben racionalizarse y almacenarse en grupos significativos dentro del registro JSON de cada persona en su directorio de inicio.

Administrar su nuevo $ HOME

El servicio systemd-homed se controla a través del nuevo homectl herramienta de línea de comandos.

Hay opciones para crear usuarios y directorios de inicio y establecer límites de almacenamiento para cada usuario. También puede establecer la contraseña, bloquear a alguien de su cuenta o eliminar una cuenta por completo. Los usuarios pueden ser inspeccionados y sus registros de usuario JSON también pueden leerse.

Las zonas horarias y otra información basada en la ubicación también se pueden configurar para cada usuario. Puede especificar el shell predeterminado e incluso establecer variables de entorno para que estén en un estado determinado cada vez que alguien inicie sesión.

Si busca en el directorio «/ home», verá entradas administradas por systemd-homed que se parecen a lo siguiente, con «.homedir» anexado al nombre de usuario:

/home/dave.homedir

Recuerde, esto es solo un punto de montaje. La ubicación del directorio de inicio cifrado real está en otro lugar.

Limitaciones y problemas

systemd-homed es solo para uso en las cuentas de usuario de humanos. No puede manejar cuentas de usuario con un UID de menos de 1,000. En otras palabras, root, daemon, bin, etc., no se pueden administrar con el nuevo esquema. Siempre habrá una necesidad de las formas estándar de administrar usuarios. Por lo tanto, systemd-homed no es una solución global.

  4 mejores reproductores de video para Linux

Hay un conocido 22 capturas que necesita ser resuelto. Como mencionamos anteriormente, el directorio de inicio de una persona se descifra cada vez que inicia sesión. Pero si alguien accede de forma remota a la computadora a través de SSH, no se puede hacer referencia a las claves SSH en el directorio de inicio porque el directorio de inicio todavía está encriptado hasta ese momento. persona inicia sesión. Por supuesto, se necesitan las claves SSH para autenticarse antes de poder iniciar sesión.

Este fue un problema reconocido por el equipo de systemd-homed, pero no pudimos encontrar ninguna referencia sobre una solución para esto. Estamos seguros de que encontrarán una solución; sería una caída espectacular si no lo hicieran.

Digamos que alguien transporta su directorio personal a una nueva máquina. Si otra persona ya está utilizando el UID en la nueva máquina, se le asignará un nuevo UID automáticamente. Por supuesto, todos sus archivos deberán tener su propiedad reasignada al nuevo UID.

Actualmente, esto se maneja mediante una aplicación automática y recursiva de el comando chown -R. Esto probablemente se manejará de manera diferente en el futuro cuando se desarrolle un esquema más elegante. Este enfoque de mano dura no tiene en cuenta los demonios y procesos que se ejecutan como otros usuarios.

¿Cuándo está sucediendo esto?

Esto está sucediendo ahora. Los cambios de código fueron enviado el 20 de enero de 2020, y se incluyeron en la compilación 245 de systemd, que se envió con Ubuntu 20.04 en abril de 2020.

Para comprobar qué versión tiene, escriba lo siguiente:

systemd --version

systemd --version en una ventana de terminal.

Sin embargo, el comando homectl aún no está presente. Ubuntu 20.04 usa un directorio tradicional / home y no usa systemd-homed.

Por supuesto, depende de las distribuciones individuales decidir cuándo incluirán y admitirán systemd-homed y homectl.

Por lo tanto, no es necesario que nadie entre en modo horquillas y antorchas encendidas. Debido a que se mantendrán los métodos estándar para administrar usuarios y directorios de inicio, todos tendremos opciones.