chsh siempre solicita una contraseña y obtiene `PAM: error de autenticación`

16

Hoy intenté cambiar a otro caparazón.

Primero probé pescado y solía chsh -s fishcambiar el pescado al predeterminado. Después de un tiempo descubrí que no puede usar ~/.bashrc(&& necesita ser reemplazado por y).

Debido a que prefiero reutilizar ~/.bashrc, encontré zshque parece más fácil y seguí esta documentación para cambiar zsh.

Mientras corría sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)", de repente me pidió que entrara Password:. Ingresé la contraseña de root pero la obtuve PAM: Authentication failure.

Luego lo intenté chsh -s bashy chsh -s zsh, siempre me pidió una contraseña y la arrojé PAM: Authentication failure(no la contraseña del sistema). No puedo entender esto.

Mitril
fuente
Comprueba si tienes un alias o algo con sudo en tu .bashrc / .zshrc / .etcrc
Lucas Serafim

Respuestas:

30

Gracias a esta pregunta sobre la falla del servidor , solucioné esto al:

Cambio /etc/pam.d/chsh:de:

auth       required   pam_shells.so

a

auth       sufficient   pam_shells.so

Entonces ya no pide una contraseña. Pero creo que es mejor restaurar la configuración de chsh después de cambiar el shell.

Mitril
fuente
usando sed: sudo sed s / required /
enough
Desafortunadamente no funcionó. Pero comenté esa línea, cambié el caparazón y eliminé el comentario nuevamente. Así que tu pista fue la correcta para mí.
Markus Zeller
4
  1. Use which zshpara encontrar su zshubicación.

    $ which zsh
    /usr/bin/zsh
    
  2. Añadir /usr/bin/zsha/etc/shells

  3. Compruebe /etc/passwdque su configuración es/usr/bin/zsh

  4. correr chsh -s /usr/bin/zsh

Xu Radman
fuente
Esto solo funciona para el usuario normal, pero no para root. ¿Es una característica de seguridad?
Timo