Possible Duplicate:
how can I use bash as my login shell when my sysadmin refuses to let me change it

Say I have rwx permissions to a directory (my home directory). Can I install a shell (e.g. zsh) on some path on under my home directory, and use it?

In other words, can I install a shell bypassing the system administrator?


Yes, just build zsh with configure --prefix=/home/roseck. It should work as long as the /home partition is not mounted with a noexec flag.

A shell is not any more special than any other application.

If you can't build on that machine, you can try building on another machine of the same OS and architecture, preferably the same OS distribution and version and transfer the compiled files accross (beware though that if zsh depends on libraries that are not installed on the target machine, you might have to compile those as well).

  • Thanks @sch. What command do I pass the argument --prefix=/home/roseck to? Is it to configure or to make? So far the steps I have followed are: ./configure, make and then make install fails because it tries to write to /usr/bin/zsh-5.0.0 – Amelio Vazquez-Reina Oct 1 '12 at 15:46
  • You pass the "--prefix=/home/roseck" to the configure command. – Marnix A. van Ammers Nov 26 '14 at 5:19

Yes, however, some of the standard (but not necessarily) system default files will not be present. And you'll have to make sure your $PATH points to your shell.

  • What do you mean? Except for the "yes", none of that is true. You can run the shell even if it's not in $PATH and if you install zsh in your home, then /etc/zprofile becomes /home/xxx/etc/zprofile and all the functions, modules... will be in /home/xxx/share, /home/xxx/lib... – Stéphane Chazelas Sep 12 '12 at 21:39
  • I agree if you change the default options at configuration and compilation time. – mdpc Sep 12 '12 at 21:53

Not the answer you're looking for? Browse other questions tagged or ask your own question.