quiero cambiar el entorno de shell predeterminado
y ejecutar chsh -s /bin/zsh
como usuario root,
sino un mensaje de error apareció: chsh: PAM authentication failed
.
Encuentro este hilo http://ubuntuforums.org/showthread.php?t=1702833
pero la respuesta no resolvió mi problema
Cualquier ayuda sería apreciada
este es el contenido de /etc/pam.d/chsh
#
# The PAM configuration file for the Shadow `chsh' service
#
# This will not allow a user to change their shell unless
# their current one is listed in /etc/shells. This keeps
# accounts with special shells from changing them.
auth required pam_shells.so
# This allows root to change user shell without being
# prompted for a password
auth sufficient pam_rootok.so
# The standard Unix authentication modules, used with
# NIS (man nsswitch) as well as normal /etc/passwd and
# /etc/shadow entries.
@include common-auth
@include common-account
@include common-session
este es el contenido de / etc / shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/tmux
/usr/bin/screen
/bin/zsh
/usr/bin/zsh
Me parece que solía ejecutar chsh -s zsh
esto cambiará la primera línea de /etc/passwd
como
root:x:0:0:root:/root:zsh
y chsh
le pedirá la contraseña en cualquier momento que intente
Acabo de editar el /etc/passwd
archivo manualmente, y todo está bien.
estúpido error y gracias por tus respuestas
Respuestas:
Verifique su archivo / etc / shells y agregue / bin / zsh al archivo si esta línea no existe.
fuente
/etc/passwd
archivo si ingresé el formato correcto del nombre de shell. Thx/etc/passwd
. Gracias @txworking!/etc/passwd
de la cuenta raíz ...Revisa tu
/etc/passwd
. En mi caso, ya había especificado un shell no válidochsh
y eso es lo que estaba causando el problema.Lo cambié de
zsh
caparazón a/bin/zsh
y eso hizo que el problema desapareciera para mí.fuente
Parece que tu camino puede estar equivocado. Para comprobarlo:
Si el resultado es / usr / bin / zch, esto debería hacer el truco:
* editar para error tipográfico.
fuente
Me enfrenté al mismo problema. cada vez que escribí en chsh se usa para solicitar
Pero lo resolví haciendo algunas modificaciones en el
/etc/passwd
archivosimplemente abra su terminal raíz y modifique el
/etc/passwd
archivo, puede usar el editor pico, nano o vi para este trabajo al que voy viluego busque la cuenta de usuario. y cambie los shells a su shell deseado, asegúrese de que el shell deseado esté instalado en sus distribuciones de Linux para que el nuevo usuario vea qué shells están presentes en su Linux simplemente escriba
los enumera allí. Si ha instalado el shell y no puede verlo,
/etc/shell
debe crear un enlace y colocar la ruta del shell, por ejemplo./bin/ksh
en el/etc/shells
archivo manualmente ...por ejemplo, estás en bash y quieres cambiarlo a ksh
solo ve a la cuenta en
/etc/passwd
archivo y en el último campo edita/bin/bash
a/bin/ksh
, o/bin/ksh93
(como en sucat /etc/shells
)simplemente cierre sesión e inicie sesión y estará listo para comenzar
para usuarios de otras distribuciones (digamos) ubuntu
escribir
sudo -H gnome-terminal
(para obtener un terminal raíz)y el proceso es el mismo que el anterior ya que usted también tiene un terminal raíz como un usuario de kali-linux
fuente
Debes ejecutar tu código como sudo:
¡También tuve el mismo problema y funcionó!
fuente