Ejecute el comando de mi Mac "chsh -s /usr/local/bin/false" y no puedo volver a iniciar sesión en mi cuenta

¡Realmente lo arruiné! Desde que ejecuté mi Mac con el siguiente comando

chsh -s /usr/local/bin/false

Varios minutos después, noté que mi Mac se desconectó por sí solo. Por lo tanto, traté de volver a iniciar sesión haciendo clic en 'cambiar usuario', pero no puedo ver mi cuenta de administración allí.

Supongo que 'falso' no es un shell que permita iniciar sesión, por eso mi cuenta está oculta.

Estoy tratando de cambiar mi shell con Terminal.app en modo de recuperación o modo de usuario único (pero ambos son de solo lectura).

Entonces, en este momento, quiero saber si hay alguna solución que pueda solucionar este problema.

¿Podrías montar tu disco en otra Mac y editarlo de esa manera?
Su comentario se convierte en una pista y se me ocurre una idea simple, recuperar mi Mac de TimeMachine. ¡Muchas gracias!
Agregue la versión de su sistema. Por cierto, no puedo comprender este error: chsh -s /usr/local/bin/falseno hace nada malo en mi Sierra VM: el bash del usuario sigue siendo /bin/bash y es posible reiniciar/iniciar sesión...

Respuestas (2)

OK, una situación fastidiosa, pero probablemente bastante fácil de manejar.

  1. Arranque en modo de usuario único, monte la unidad como lectura y escritura ejecutando /sbin/mount -uw /, elimine el /var/db/.AppleSetupDonearchivo y cree una nueva cuenta de administrador
  2. Use esa cuenta de administrador para volver a cambiar el shell para su usuario.
  3. Cierra la sesión y revisa tu cuenta.
  4. Limpie la cuenta de administrador "temporal" si lo desea.

Nada puede salir mal, excepto quizás FileVault o ninguna copia de seguridad o una contraseña de firmware, por lo que si puede finalizar una copia de seguridad o si ya tiene otra cuenta de administrador, usar eso sería mucho mejor en caso de que el esquema anterior no funcione para usted.

iMac está atascado en un bucle de inicio de sesión

https://support.apple.com/en-us/HT202860

Puede haber una mejor manera de hacerlo de manera segura chshen modo de usuario único, pero sé que funcionará y no he probado la alternativa. Votaré por una buena respuesta que tenga una mejor opción o siéntete libre de editar la mía para mejorarla si sabes que los pasos son seguros.
No pude eliminar ese archivo del modo de usuario único o del modo de recuperación porque están en modo de solo lectura. (Tal vez tengo una comprensión superficial del sistema). Sin embargo, creo que es correcto. Si puedo crear una cuenta de administrador, puedo ejecutar cualquier comando como administrador y solucionar esta situación. No quiero renunciar a arreglar el camino para una mejor comprensión de BSD, pero también necesito recuperarme lo antes posible, me estoy recuperando de la copia de seguridad de TimeMachine. ¡Muchas gracias!
Para la próxima vez, @yumenosuke, /sbin/mount -uw / debe estar impreso en las instrucciones una o dos líneas antes de que se muestre el aviso.
¡Es una buena idea! ¡Lo intentaré la próxima vez! (Espero que no la próxima vez...) ¡Gracias!
Podría ln /usr/local/bin/false a cualquier shell que se suponga que vaya.

intentarsudo cp /bin/bash /usr/local/bin/false

¿Cómo puede el OP ejecutar eso? ¿Cómo pueden iniciar sesión?
@mmmmmm solo cree un nuevo usuario administrador usando las Preferencias del sistema. ¿Quién es OP por cierto?
OP es Publicación original o póster, y ¿cómo íbamos a saber qué necesita para crear un nuevo usuario?
Y si está creando nuevos usuarios, es mucho mejor usar la solución bmike.
Veo. No creo que uno pueda salirse con la suya sin crear un nuevo usuario administrador, porque la ruta del shell está en algún lugar profundo de los archivos opendirectoryd que son binarios. La única otra forma de iniciar sesión es la GUI.
Sí, entiendo que necesita un nuevo usuario administrador, pero sé una cantidad razonable. La pregunta y la respuesta no dicen eso y la mayoría de los usuarios deben tener todos los pasos enumerados.
Vuelva a leer la pregunta. El usuario se desconectó y solo puede iniciar la recuperación o un solo usuario. ¿Qué pasos deben tomar ahora (el comando propuesto por sí solo no funcionará)?