From abc25cb88570bf54d3bb518b5083402894cca061 Mon Sep 17 00:00:00 2001 From: Kevin Tian Date: Wed, 26 Jan 2011 16:28:45 +0800 Subject: base-files: remove ending colon from default $PATH for root user now the PATH for root user defined in a problematic way PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin: from eglibc: /* Two adjacent colons, or a colon at the beginning or the end of `PATH' means to search the current directory. */ that means current directory is always searched as the last path, which could generate undesired behavior. One example is found in LTP cron_deny01 test, which always complains "sh: cron_deny01 not found" cron_deny01 is a shell script which setups the initial test preparation and then invokes itself for real test under a different user: su $TEST_USER1 -c "$0" 'su' doesn't inherit PATH into the sub-shell, and thus $0 has to be an absolute path to have right script found. ltp appends the path of cron_deny01 to $PATH before running the test: export PATH="${PATH}:${LTPROOT}/testcases/bin" In ideal way "${LTPROOT}/testcases/bin/cron_deny01" is found and becomes $0, which works well. However due to the ending colon in original PATH: PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin::${LTPROOT}/testcases/bin $0 becomes 'cron_deny01' w/o leading path which makes sub-shell under 'su' failed to locate cron_deny01. remove ending colon then fixes this problem. Signed-off-by: Kevin Tian --- meta/recipes-core/base-files/base-files/profile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'meta/recipes-core/base-files/base-files') diff --git a/meta/recipes-core/base-files/base-files/profile b/meta/recipes-core/base-files/base-files/profile index aa1c20fdb8..e9408d17d7 100644 --- a/meta/recipes-core/base-files/base-files/profile +++ b/meta/recipes-core/base-files/base-files/profile @@ -12,7 +12,7 @@ if [ ! -e /etc/localtime ]; then fi if [ "$HOME" = "/home/root" ]; then - PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin: + PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin fi if [ "$PS1" ]; then # works for bash and ash (no other shells known to be in use here) -- cgit 1.2.3-korg