Date: Sat, 28 Feb 2004 13:30:56 -0500 From: Scott W <wegster@mindcore.net> To: Peter Risdon <peter@circlesquared.com> Cc: freebsd-questions@freebsd.org Subject: Re: Search Path in bash2 Message-ID: <4040DE60.7050906@mindcore.net> In-Reply-To: <403FB11C.8060308@circlesquared.com> References: <200402271741.i1RHfuB7095761@dc.cis.okstate.edu> <403FB11C.8060308@circlesquared.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Peter Risdon wrote: > Martin McCormick wrote: > >> I am trying to modify the execution path on a FreeBSD system >> for all the bash2 users on that system. The man page says that >> >> >>> default path is system-dependent, and is set by the >>> administrator who installs bash. A common value is >>> ``/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:.''. >>> >> >> >> How do I set, or in this case, reset it? >> > The man page also says: > > When bash is invoked as an interactive login shell, or as a non-inter- > active shell with the --login option, it first reads and > executes com- > mands from the file /etc/profile, if that file exists. After > reading > that file, it looks for ~/.bash_profile, ~/.bash_login, and > ~/.profile, > in that order, and reads and executes commands from the first > one that > exists and is readable. The --noprofile option may be used > when the > shell is started to inhibit this behavior. > > But so far as I have seen, at least on FreeBSD, /etc/profile does not > generally contain path info. This is normally set in ~/.profile and > the default contains something like this: > > # remove /usr/games and /usr/X11R6/bin if you want > PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/ > > bin:$HOME/bin; export PATH > > So my guess is that to conform closely to this way of doing things, > add the path to each user's ~/.profile and also to > /usr/share/skel/dot.profile so it is there immediately for new users. > > Alternatively, unless someone contradicts this, the man page seems to > suggest you could add a path to /etc/profile and it would then be > system-wide. I have never done this myself, though, so can't vouch for > it whereas I have edited ~/.profile frequently. > > HTH. > > PWR. > > > > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to > "freebsd-questions-unsubscribe@freebsd.org" > You can add any environment vars you'd like to /etc/profile- this is still the preferred method for some cases...for example, if you're the sysadmin for a project group that all needs additional software that may have been installed in the /usr/local/<somewhere>/bin tree, instead of binaries in /usr/local/bin. So if it's assumed that all users will need a given PATH, add it to /etc/profile. If it's a per user addition, add it in ~/.bash_profile.. There are a mixture of other ways to do this, with the 'new thing' being application dependent env vars (LD_LIBRARY_PATH, PATH, etc)- in Linux, this is generally done via /etc/profile.d/<appname>.sh, but is not generally used for correcting user-owned variables. So in other words, /etc/profile is fine ;-) Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4040DE60.7050906>