
Hemos visto cómo Personaliza el mensaje BASH predeterminado en linux.En este tutorial aprenderemos cómo Cambiar el mensaje de Bash para un grupo de usuarios específico En sistemas Linux y tipo Unix.
Antes de configurar mensajes BASH personalizados para grupos de usuarios, es importante comprender las ventajas y desventajas de este enfoque.
Ventajas y desventajas de los caracteres del símbolo del sistema de grupo específico
El uso de caracteres del símbolo del sistema específicos de un grupo en Linux puede resultar ventajoso en algunas situaciones, pero existen algunas advertencias. Aquí están los pros y los contras:
ventaja
1. Más fácil de identificar los roles de los usuarios:
- Al personalizar su símbolo del sistema según la membresía del grupo, puede identificar más fácilmente la función o el entorno en el que está trabajando. Por ejemplo,
developer
El mensaje informa inmediatamente al usuario que el Desarrollador grupo o entorno.
2. Reducir los errores:
- Las indicaciones personalizadas pueden ayudar a reducir los errores, especialmente en entornos donde los usuarios cambian entre múltiples roles o servidores.Por ejemplo, una pista obvia.
admin
Se puede recordar a los usuarios los niveles más altos de permisos y alentarlos a ser cautelosos.
3. Mejorar la experiencia del usuario:
- Para los usuarios que pertenecen a varios grupos, las indicaciones personalizadas pueden indicar de forma clara e intuitiva el grupo actual, lo que hace que la información del terminal sea más rica y humana, mejorando así la experiencia del usuario.
4. Útil en sistemas multiusuario:
- En sistemas con muchos usuarios, este tipo de personalización puede resultar beneficioso para los administradores del sistema al ayudar a identificar rápidamente el tipo de usuario que inició sesión y su nivel de acceso.
defecto
1. Gestionar la complejidad:
- La implementación y gestión de mensajes personalizados puede agregar complejidad, especialmente en sistemas con una gran cantidad de usuarios o grupos. Requiere secuencias de comandos y configuración adicionales.
2. Posibles errores de configuración:
- Estos scripts pueden provocar errores de configuración si se configuran incorrectamente.Por ejemplo, agregar incorrectamente a
.bashrc
Errores de sintaxis que pueden provocar duplicaciones innecesarias o incluso afectar el entorno del usuario.
3. Consideraciones de seguridad:
- Se adjunta automáticamente a los archivos de configuración, p.
.bashrc
Si no se maneja adecuadamente, puede haber riesgos para la seguridad. Es importante asegurarse de que dichos scripts no creen vulnerabilidades de seguridad sin darse cuenta.
4. Dependencia de la membresía en un grupo:
- Este método se basa en la membresía del grupo del usuario, que puede cambiar con el tiempo. Requiere que las membresías de grupos se administren correctamente y estén actualizadas.
5. Dependencia excesiva de las señales visuales:
- Los usuarios pueden confiar demasiado en estas señales visuales y hacer suposiciones incorrectas sobre sus permisos o entorno basándose únicamente en las señales, lo que puede generar errores, especialmente si las señales están configuradas incorrectamente.
Con todo, personalizar los caracteres del símbolo del sistema según la pertenencia a un grupo es útil para mejorar la experiencia del usuario y reducir los errores en entornos multiusuario o multirol. Sin embargo, requiere una implementación y gestión cuidadosas para evitar complejidad, mala configuración y posibles problemas de seguridad.
Continuaremos viendo cómo cambiar los caracteres del símbolo del sistema para un grupo de usuarios específico en sistemas Linux y similares a Unix.
Los siguientes pasos se probaron en un sistema Ubuntu 22.04 LTS. Esperamos que este método también funcione en otras distribuciones de Linux.
Cambiar el mensaje de Bash para un grupo de usuarios específico
Para fines de demostración, crearé un nuevo grupo llamado «Desarrollador» y una persona llamada ‘sentil’.Entonces agregaré ‘sentil’ Llega el usuario «Desarrollador» grupo.
Entonces, cada vez que el usuario «senthil» inicie sesión, su mensaje cambiará automáticamente a ‘Desarrollador-senthil@ubuntu2204:~$’. Veamos cómo hacer esto paso a paso.
Paso 1: crea un grupo en Linux
Crea un grupo:
Ejecute el siguiente comando para crear un nuevo grupo llamado developers
:
$ sudo groupadd developers
Este comando creará un nuevo grupo llamado developers
. Si se le solicita, es posible que se le solicite que ingrese su contraseña.
Paso 2: agregue usuarios y asígnelos a grupos
Crear un nuevo usuario:
Crear un nuevo usuario llamado senthil
usa el comando:
$ sudo adduser senthil
Se le pedirá que establezca una contraseña para el nuevo usuario y complete cierta información de usuario opcional. Llénelos según sea necesario.
Agregar usuario al grupo:
más senthil
llegar developers
Grupo, uso:
$ sudo usermod -aG developers senthil
este -aG
opción para agregar el usuario al grupo manteniendo su membresía existente en el grupo.
Paso 3: configurar mensajes Bash personalizados para grupos de usuarios específicos
Cuando desee cambiar los caracteres del símbolo del sistema para usuarios que son miembros de un grupo específico, tiene dos opciones sobre dónde colocar el script que verifica el grupo de usuarios y cambia el símbolo del sistema. La elección depende de si desea que los cambios se apliquen a un solo usuario o a varios usuarios:
usuario personal .bashrc
documento:
- Si desea que los cambios se apliquen solo a un usuario específico, debe agregar estas líneas a la cuenta de ese usuario.
.bashrc
El archivo se encuentra en su directorio de inicio (~/.bashrc
). - Este enfoque es específico del usuario.Cada usuario al que desee aplicar este cambio deberá agregar este script a su
.bashrc
documento. - Por ejemplo, si sólo quieres
senthil
Hay diferentes pistas cuando él es parte de ello.developers
grupo, simplemente agrega filas asenthil
de.bashrc
documento.
Perfil global /etc/bash.bashrc
:
- Si desea que este cambio se aplique a todos los usuarios del sistema, puede editar el archivo global
/etc/bash.bashrc
documento. - Este método aplicará los cambios al entorno de cada usuario, pero el script solo cambiará las indicaciones para los usuarios del grupo especificado.
- Esta función es útil si hay varios usuarios en un grupo y desea que todos los usuarios tengan el mismo comportamiento sin necesidad de editar cada usuario.
.bashrc
documento.
antes de realizar cualquier cambio localmente ~/.ba
shrc
o globalmente /etc/bash.bashrc
archivos, le recomiendo que haga una copia de seguridad de ellos. Si algo sale mal, puedes restaurar la configuración original.
Usuario de respaldo ~/.bashrc
archivo, ejecute:
$ cp ~/.bashrc ~/.bashrc_backup
Hacer una copia de seguridad de todo el dominio bashrc
archivo, ejecute:
$ sudo cp /etc/bash.bashrc /etc/bash.bashrc_backup
Después de hacer una copia de seguridad del contenido correspondiente bashrc
archivo, ábrelo con tu editor favorito.
Aquí quiero aplicar este método a todos los usuarios del sistema, así que edité el global /etc/bash.bashrc
documento.
$ sudo nano /etc/bash.bashrc
Agregue las siguientes líneas al final:
bashrc_file="/home/$(whoami)/.bashrc" developer_prompt="PS1="developer-\u@\h:\w\$ "" # Function to add or update PS1 in .bashrc add_or_update_ps1() { prompt_line=$1 grep -qF -- "$prompt_line" "$bashrc_file" || echo "$prompt_line" >> "$bashrc_file" } if id -nG "$(whoami)" | grep -qw "developers"; then add_or_update_ps1 "$developer_prompt" fi
Analicemos el código anterior y veamos qué hace cada opción.
Definir variables:
bashrc_file
Guardar la ruta del usuario.bashrc
documento.developer_prompt
Almacene la cadena PS1 a la que pertenece el usuariodevelopers
grupo.
Función add_or_update_ps1
:
- Esta función toma la línea de solicitud como parámetro.
- usa
grep -qF
Compruebe si la línea de solicitud exacta ya existe en.bashrc
. - este
--
Asegúrese de que las cadenas siguientes se traten como literales en lugar de opciones de comando. - si no existe (
||
), se añade la línea de aviso a.bashrc
.
Verifique la membresía del grupo y solicite propinas:
- Este script comprueba si el usuario está en
developers
grupo. - Si el usuario pertenece a
developers
grupo, que llamaadd_or_update_ps1
ydeveloper_prompt
.
En resumen, este script cambia los caracteres del símbolo del sistema que pertenecen a: developers
Adjuntando una definición de alerta personalizada a su grupo .bashrc
documento.se asegura Los recordatorios personalizados solo se agregan una vez para evitar duplicaciones.
de acuerdo a CTRL+O
seguido por CTRL+X
Guarda el archivo y cierra.
Recuerde, después de editar cualquier archivo, los cambios solo tendrán efecto al iniciar una nueva sesión de shell.El usuario puede cerrar sesión y volver a iniciarla, o ejecutar source ~/.bashrc
Aplicar los cambios inmediatamente a la sesión actual.
Aplique los cambios usando el comando:
$ source /etc/bash.bashrc
Paso 4: verificar el mensaje de Bash
Ahora cierre sesión y vuelva a iniciar sesión como usuario «senthil». Abra la terminal y verá que el mensaje del usuario ha cambiado para verse así:
Si su sistema no tiene una GUI, puede ingresar al sistema desde otro sistema a través de SSH para su verificación.
developer-senthil@ubuntu2204:~$

¿mirar? Se ha cambiado el símbolo del mensaje Bash del usuario.
Cambiar el mensaje de Bash según la membresía del grupo Sudo
Puede modificar aún más este script para diferenciar entre diferentes tipos de consumidores.
Por ejemplo, se puede diferenciar entre usuarios habituales y usuarios administrativos, que pertenecen a sudo
Grupos en Linux.Esto implica modificar el símbolo del sistema dependiendo de si el usuario tiene sudo
privilegio.
Agregue las siguientes líneas al dominio global /etc/bash.bashrc
archivos o usuarios individuales .bashrc
documento:
bashrc_file="/home/$(whoami)/.bashrc" sudo_prompt="PS1="sudouser-\u@\h:\w\$ "" normal_prompt="PS1="normaluser-\u@\h:\w\$ "" # Function to add or update PS1 in .bashrc add_or_update_ps1() { prompt_line=$1 grep -qF -- "$prompt_line" "$bashrc_file" || echo "$prompt_line" >> "$bashrc_file" } if id -nG "$(whoami)" | grep -qw "sudo"; then add_or_update_ps1 "$sudo_prompt" else add_or_update_ps1 "$normal_prompt" fi
El script cambiará el mensaje a sudouser-
Para usuarios en sudo
fusión de grupo para normaluser-
Para usuarios que no están en sudo
grupo.
¿Es esta una configuración recomendada?
La recomendación de esta configuración depende del contexto y los requisitos del sistema:
ventaja:
- Identificación clara de roles: similar a las indicaciones específicas de un grupo, esta configuración ayuda a identificar inmediatamente si la sesión de usuario actual tiene privilegios sudo, lo cual es particularmente útil en entornos multiusuario.
- Prevención de errores: recuerda continuamente al usuario sus permisos, lo que potencialmente evita la ejecución accidental de comandos con privilegios elevados.
defecto:
- Complejidad y mantenimiento: Como ocurre con cualquier personalización, aumenta la complejidad de la configuración del sistema y requiere un mantenimiento adecuado.
- Falsa sensación de seguridad: Los usuarios pueden dejarse llevar por una falsa sensación de seguridad o complacencia, creyendo que el cambio rápido refleja únicamente su privilegio. Sin embargo, los permisos reales son más sutiles y dependen del contexto.
- Posibles errores de configuración: Si se implementa incorrectamente, puede generar confusión o mala configuración.
En resumen, personalizar los caracteres del símbolo del sistema para diferenciar entre usuarios normales y usuarios de sudo puede resultar útil en algunos entornos, especialmente donde es importante identificar rápidamente los permisos de los usuarios.
Sin embargo, esto no se recomienda universalmente ya que añade complejidad y depende de las necesidades específicas y las capacidades de gestión del administrador del sistema.
Restaurar el archivo .bashrc a la configuración predeterminada
Si tiene problemas, puede revertir los cambios mediante restauración .bashrc
Archivos en copia de seguridad. Si no realizó una copia de seguridad, puede editar manualmente el archivo nuevamente y eliminar o comentar los scripts personalizados que agregó en los pasos anteriores.
Además, hay una versión preestablecida. .bashrc
El archivo esta en /etc/skel/
Directorio en sistemas Debian y Ubuntu.
$ ls -al /etc/skel/ total 32 drwxr-xr-x 2 root root 4096 Jan 8 18:02 . drwxr-xr-x 138 root root 12288 Jan 8 17:55 .. -rw-r--r-- 1 root root 220 Jan 6 2022 .bash_logout -rw-r--r-- 1 root root 4116 Jan 8 18:00 .bashrc -rw-r--r-- 1 root root 807 Jan 6 2022 .profile
Copiar la versión predeterminada ~/.bashrc
archivo a su versión actual de la siguiente manera:
$ cp /etc/skel/.bashrc ~/
Finalmente, ejecute el siguiente comando para actualizar los cambios.
$ source ~/.bashrc
Para obtener más detalles, consulte los siguientes enlaces:
Cómo restaurar el archivo .bashrc a la configuración predeterminada en Ubuntu
en conclusión
En este tutorial, analizamos cómo configurar un símbolo del sistema bash personalizado para un grupo específico de usuarios, así como las ventajas y desventajas de cambiar los caracteres del símbolo del sistema en Linux a través de un script de muestra.
Aunque modificar los caracteres del mensaje de bash puede ser útil para necesidades específicas en algunos entornos, generalmente no se recomienda para principiantes.
Antes de implementar estos cambios, siempre es una buena práctica probar este enfoque en una máquina virtual y sopesar los beneficios frente a los riesgos y la complejidad potenciales.
Lectura relacionada: