From 30f04daf0be34e520a9180d34684fce273bb7b6d Mon Sep 17 00:00:00 2001 From: susautw <32788391+susautw@users.noreply.github.com> Date: Mon, 29 Mar 2021 00:46:52 +0800 Subject: [PATCH] BugFix: Remove unnecessary "export" exports PRE_NAMESPACE_PWD and PRE_NAMESPACE_PATH variables to environment variables cause the PWD/PATH will set to PRE_NAMESPACE_PWD/PRE_NAMESPACE_PATH every time while you start a bash. (the unset does not work cause it can only unset local variables) solution: removes "export" words at the start of the definition of PRE_NAMESPACE_PWD and PRE_NAMESPACE_PATH --- start-systemd-namespace | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/start-systemd-namespace b/start-systemd-namespace index 6218ef7..0a030bf 100755 --- a/start-systemd-namespace +++ b/start-systemd-namespace @@ -3,13 +3,13 @@ SYSTEMD_EXE="/lib/systemd/systemd --unit=basic.target" SYSTEMD_PID="$(ps -eo pid=,args= | awk '$2" "$3=="'"$SYSTEMD_EXE"'" {print $1}')" if [ "$LOGNAME" != "root" ] && ( [ -z "$SYSTEMD_PID" ] || [ "$SYSTEMD_PID" != "1" ] ); then + PRE_NAMESPACE_PATH="$PATH" + PRE_NAMESPACE_PWD="$(pwd)" export | sed -e 's/^declare -x //;/^IFS=".*[^"]$/{N;s/\n//}' | \ grep -E -v "^(BASH|BASH_ENV|DIRSTACK|EUID|GROUPS|HOME|HOSTNAME|\ IFS|LANG|LOGNAME|MACHTYPE|MAIL|NAME|OLDPWD|OPTERR|\ OSTYPE|PATH|PIPESTATUS|POSIXLY_CORRECT|PPID|PS1|PS4|\ SHELL|SHELLOPTS|SHLVL|SYSTEMD_PID|UID|USER|_)(=|\$)" > "$HOME/.systemd-env" - export PRE_NAMESPACE_PATH="$PATH" - export PRE_NAMESPACE_PWD="$(pwd)" exec sudo /usr/sbin/enter-systemd-namespace "$BASH_EXECUTION_STRING" fi if [ -n "$PRE_NAMESPACE_PATH" ]; then