如果我以 root 身份登录并执行了export MY_VAR=foo
,那么我可以以 ssh 身份登录jason
并echo $MY_VAR
获取foo
吗?
答案1
导出的环境变量位于 shell 的环境中,以及导出它们后启动的子进程的环境中。您稍后启动的 SSH shell 不太可能是现有 root shell 的子进程。因此,echo $MY_VAR
不会foo
因为您export MY_VAR=foo
在不同的 shell 中执行了此操作而导致您被抓获。
不过,用户可以阅读最初的自己的进程的环境变量(root 可以为任何用户执行此操作),因为这些变量在 中可用/proc/<PID>/environ
。但是,shell 启动后导出的变量不会显示在该文件中。