Table of Contents
3 formas de cambiar el shell predeterminado de un usuario en Linux
En este artículo, describiremos cómo cambiar el shell de un usuario en Linux. El shell es un programa que acepta e interpreta comandos; hay varios shells como bash, sh, ksh, zsh, fish y muchos otros shells menos conocidos disponibles en Linux.
Bash. (/bin/bash. es un shell popular en la mayoría, si no en todos los sistemas Linux, y normalmente es el shell predeterminado para las cuentas de usuario.
Lea también. 5 shells de código abierto más utilizados para Linux
Hay varias razones para cambiar el shell de un usuario en Linux, incluidas las siguientes:
- Para bloquear o deshabilitar los inicios de sesión normales de los usuarios en Linux utilizando un shell nologin.
- Use un script o programa de envoltura de shell para iniciar sesión en los comandos de usuario antes de que se envíen a un shell para su ejecución. Aquí, especifica el contenedor de shell como shell de inicio de sesión de un usuario.
- Para satisfacer las demandas de un usuario (quiere usar un shell específico), especialmente aquellos con derechos administrativos.
Al crear cuentas de usuario con las utilidades useradd o adduser, la marca–shell se puede usar para especificar el nombre del shell de inicio de sesión de un usuario que no sea el especificado en los archivos de configuración respectivos.
Se puede acceder a un shell de inicio de sesión desde una interfaz basada en texto o mediante SSH desde una máquina Linux remota. Sin embargo, si inicia sesión a través de una interfaz gráfica de usuario (GUI), puede acceder al shell desde emuladores de terminal como xterm. konsole. y muchos más.
Primero enumeremos todos los shells disponibles en su sistema Linux, escriba.
# cat/etc/shells. bin/sh/bin/bash/sbin/nologin/bin/tcsh/bin/csh/bin/dash
Antes de continuar, tenga en cuenta que:
- Un usuario puede cambiar su propio shell a cualquier cosa: que, sin embargo, debe estar en la lista /etc/shells.
- Solo root puede ejecutar un shell que no esté incluido en el archivo /etc/shells.
- Si una cuenta tiene un shell de inicio de sesión restringido, entonces solo root puede cambiar el shell de ese usuario.
Ahora analicemos tres formas diferentes de cambiar el shell de usuario de Linux.
1. Utilidad usermod
usermod es una utilidad para modificar los detalles de la cuenta de un usuario, almacenada en el archivo /etc/passwd. y la opción-s o–shell se usa para cambiar la información del usuario. shell de inicio de sesión.
En este ejemplo, primero verificaremos la información de la cuenta del usuario tecmint para ver su shell de inicio de sesión predeterminado y luego cambiaremos su shell de inicio de sesión de /bin/sh. a /bin/bash. como sigue.
# grep tecmint/etc/passwd # usermod–shell/bin/bash tecmint. # grep tecmint/etc/passwd
Cambiar el Shell de usuario usando Usermod
2. Utilidad chsh
chsh. es una utilidad de línea de comandos para cambiar un shell de inicio de sesión con la opción-s o –shell. como esta.
# grep tecmint/etc/passwd # chsh–shell/bin/sh tecmint. # grep tecmint/etc/passwd
Cambiar el shell de usuario usando chsh
Los dos métodos anteriores modifican el shell especificado en el archivo /etc/passwd. que puede editar manualmente como en el tercer método a continuación.
3. Cambiar el shell de usuario en el archivo/etc/passwd
En este método, simplemente abra el archivo /etc/passwd. usando cualquiera de sus editores de texto de línea de comandos favoritos y cambie el shell de un usuario específico .
# vi/etc/passwd
Cambiar el shell de usuario en el archivo Passwd
Cuando termine de editar, guarde y cierre el archivo.
No olvide leer estos temas relacionados:
- Comprender los archivos de inicialización del shell y perfiles de usuario en Linux
- Comprender los consejos de creación de scripts de shell básico y de shell de Linux-Parte I
- Cómo escribir y usar funciones y bibliotecas de shell personalizadas
- Comprender diferentes clasificaciones de comandos de shell y su uso
En este En este artículo, describimos varias formas de cambiar el shell de un usuario en Linux. Para compartir cualquier pensamiento con nosotros, use la sección de comentarios a continuación.