Issue:
The “factory set” default login shell for Mac OS X (Panther+) is bash. Some (misguided!) users may wish to use other shells (e.g., tcsh is popular).
Solution:
In older versions of OS X (e.g., Panther, Tiger), changing default shells would have been accomplished using the application utility Netinfo Manager (see box below). However, this utility no longer exists in Leopard or Snow Leopard.
Instead, open the Users & Groups (Lion) or Accounts (Leopard, Snow Leopard) preferences in System Preferences. Unlock the preferences by clicking on the lock icon in the lower left corner of the preferences panel and entering an administrator-level password. Then right-click (or control-click) on a user name and select the Advanced Options menu. Select the desired login shell from the pull-down menu, and click on "OK". Log out and back in to put the change into effect. A. Lorber pointed out to me that in order to change the default login shell, your chosen shell must also be listed in the file /etc/shells, which OS X consults to determine what is a valid shell. By default, /etc/shells contains the following entries:
/bin/bash/bin/csh/bin/ksh/bin/sh/bin/tcsh/bin/zsh
If you want to use a different shell from these as your default login shell, then you must edit /etc/shells to include the full path to the installation of the shell on your computer (e.g., /opt/local/bin/bash). Editing /etc/shells requires an administrator-level password.
OS Version Compatibility: Lion, Snow Leopard, Leopard, Tiger
Update Status: 09 January 2012
|