Comfiguración para añadir usuarios

Juntos, el comando /usr/sbin/useradd y el directorio /etc/skel (ambos son fáciles de configurar y usar) facilitan un modo de asegurar que los nuevos usuarios se añaden en tu sistema LFS con las mismas configuraciones iniciales para cosas como PATH, procesos del teclado y variables de entorno. El uso de estas dos herramientas hace mas facil asegurar el estado inicial de cada nuevo usuario.

El directorio /etc/skel almacena copias de varios ficheros de inicialización y otros ficheros que deben copiarse a los directorios personales de los nuevos usuarios cuando el programa /usr/sbin/useradd añade el nuevo usuario.

Useradd

El programa useradd utiliza una colección de valores por defecto guardados en /etc/default/useradd, si existe. Si el fichero no existe utiliza algunos valores internos. Puedes ver los valores por defecto ejecutando /usr/sbin/useradd -D.

Para cambiar estos valores a algo nuevo, crea un fichero /etc/default/useradd con los mismos valores de la salida de /usr/sbin/useradd -D. Este es un ejemplo.

# Inicio de /etc/default/useradd

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=
SKEL=/etc/skel

# Fin de /etc/default/useradd

La única cosa que falta en el fichero es el intérprete de comandos por defecto. Añadela ejecutando:

/usr/sbin/useradd -D -s/bin/bash

Esto establecerá la línea SHELL= a SHELL=/bin/bash.

Useradd tiene muchos parámetros que pueden establecerse en el fichero /etc/default/useradd.

Para mas información mira man useradd.

/etc/skel

Para empezar crea un directorio /etc/skel y asegurate de que es escribible solo por el administrador del sistema, normalmente root. Crear el directorio como root es la mejor forma.

El modo de todos los ficheros que pongas en /etc/skel a partir de esta parte del libro debe ser el de escribible solo por el propietario. También, puesto que no estamos hablando de qué tipo de información sensible puede añadir eventualmente un usuario en sus copias de estos ficheros, deberías hacerlas ilegibles para el "grupo" y para "otros".

También puedes poner otros ficheros en /etc/skel que pueden necesitar diferentes permisos.

Decide qué ficheros de inicialización deberían facilitarse en cada (o casi) directorio personal de un nuevo usuario. Las decisiones que tomes afectarán a lo que hagas en las tres siguientes secciones, /etc/inputrc, la sección Los ficheros de inicio de Bash y /etc/vimrc, ~/.vimrc. Algunos o todos estos ficheros serán útiles para root, cualquier usuario ya existente y los nuevos usuarios.

Los ficheros de estas secciones que puede que quieras colocar en /etc/skel incluyen .inputrc, .bash_profile, .bashrc, .bash_logout, .dircolors, y .vimrc. Si no estás seguro de cuales de ellos deberías colocar, avanza a las siguientes secciones, lee cada sección y cada referencia indicada, y entonces toma tu decisión.

Ejecutarás un grupo de comandos ligeramente modificado para los ficheros que se ubiquen en /etc/skel. Cada sección te recordará esto. En resumen, los comandos del libro han sido escritos para ficheros que no se añaden a /etc/skel y envian el resultado al directorio personal del usuario. Si el fichero va a estar en /etc/skel, cambia los comandos del libro para que en su lugar envien la salida aquí y entonces copia los ficheros de /etc/skel a sus directorios apropiados, como /etc, ~ o el directorio personal de cualquier otro usuario que ya exista en el sistema.

Cuando añadas un usuario

Cuando añadas un nuevo usuario con useradd utiliza el parámetro -m, que le indica a useradd que cree el directorio personal del usuario y copie los ficheros de /etc/skel (puede omitirse) al directorio personal del nuevo usuario. Por ejemplo:

useradd -m -s/bin/bash jwrober