vnc 세션 내에서 시작된 xterm bash 프로세스의 환경 변수를 확인하고 있습니다.
env를 실행하여 bash 세션 자체의 환경 변수를 확인하거나 cat /proc/pid/environ | strings
su 또는 ssh를 수행할 때 일반적으로 설정하는 모든 환경 변수, 즉 /etc/profile 및 .bashrc의 환경 변수를 표시합니다. 하지만 cat /proc/pid/environ | strings
퍼티 세션에서 이를 수행하면 완전히 다른 변수가 표시됩니다.
해당 특정 변수만 설정하는 이유는 차치하고, 동일한 프로세스 환경이 다른 세션(예: 이중 슬릿 실험)에서 조사하면 왜 다른 결과가 나오는지 알고 싶습니다. 나는 proc이 실제 파일 시스템이 아니라는 것을 알고 있습니다. 그러나 쿼리하면 정확히 무슨 일이 발생합니까? proc은 원격 프로세스 환경을 검사하는 안정적인 방법이 아닙니까?
나는 이 질문을 휴대폰에 썼다. 따라서 표시할 샘플 출력이 없습니다. 하지만 제 질문을 이해해 주시길 바랍니다.
답변1
이것이 제가 테스트를 위해 한 일입니다:
$export test=one
$vim test1
pid = 1200, 프로세스를 중지하려면 CTRL-Z를 사용하세요.
$cat /proc/1200/environ | strings
test=one
이제 두 번째 프로세스에 대해
$test=two
$vim test2
pid = 1201, 프로세스를 중지하려면 CTRL-Z를 사용하세요.
$cat /proc/1201/environ | strings
test=two
사용자가 프로그램을 실행하기 전에 환경 속성을 변경했을 수 있습니다.