[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Shell confusion

Garry T. Williams wrote:
On Thursday 12 March 2009 21:25:27 Dave Bolt IT Solutions wrote:
When I start a terminal as dave I get a prompt [dave Test-Host ~]$
When I do su amandabackup I get a prompt bash-3.2$

Check the manual page for su(1).

If you had entered `su - amandabackup', that user's login scripts would have been run.

In general, using su without its `-' parameter is a bad idea[*] especially when switching to the root login.

Interesting thought, I generally warn people that "-" or "-l" will do a login, and they will wind up running in the other user's home directory. Definitely not what people want many times, such as running "make install" after building a package, or the like.

For instance
  sudo su root -c "make install"
runs the install rules in the current directory, probably just what you wanted.
  sudo su - -c "make install"
runs the install part of whatever Makefile is in root's home directory. Almost certainly not what you intended!

[*] Unless, of course, you know why you want to do that.

Bill Davidsen <davidsen tmr com>
  "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]