Change default shell

From Alpine Linux
Revision as of 13:04, 12 December 2022 by Psykose (talk | contribs) (recommend shadow over libuser, document free-editing process)
Note: By default Alpine Linux uses the busybox variant of the ash shell, but many users may prefer bash, zsh, fish, or another shell.

By hand

Edit /etc/passwd manually. An example line is:

user:x:1000:1000:user,,,:/home/user:/bin/ash

Change /bin/ash to point to the path of a shell from /etc/shells.

Using shadow

Download the required package:

# apk add shadow

And use chsh:

# chsh username

Now enter the path for the shell you want to use (e.g /bin/bash) and press enter to confirm this change. The shell should exist in /etc/shells.

Note: You may need to log out or reboot for this change to take effect, ash is part of busybox so you can revert back to ash (/bin/ash) at anytime with the same steps.