Setting TCSH in FreeBSD

January 16, 2018 1.2k views
Getting Started FreeBSD

This page https://www.digitalocean.com/community/tutorials/how-to-get-started-with-freebsd-10-1 suggests that on login, I'll be presented with the tcsh prompt. However, the droplet is defaulting to csh.

I can locate tcsh under /bin/tcsh but using setenv in my local .cshrc file doesn't cause this shell to be used on next login.

How and where can I set tcsh as my default please?

4 Answers

You are actually using tcsh, it is the improved version of csh:

shasum /bin/tcsh /bin/csh
74d4129fb4604baf8f272e9d4a4f1be80c89be5b /bin/tcsh
74d4129fb4604baf8f272e9d4a4f1be80c89be5b /bin/csh

if that is the case, why does Env report the shell as sh and why isn't the prompt a > ?

Use vipw to edit /etc/master.passwd and select the shell you want

Alternative includes: https://www.freebsd.org/doc/handbook/shells.html

  • Editing master.passwd to use tcsh doesn't change to tcsh on next login:

    freebsd:*:1001:1001::0:0:FreeBSD:/usr/home/freebsd:/bin/tcsh

What, exactly, has been configured in a non-default fashion (compared to a standard physical install) in a Digital Ocean FreeBSD droplet image, if anything?

Have another answer? Share your knowledge.