xterm을 실행하기 위해 로그인 쉘을 사용하고 있습니까?

xterm을 실행하기 위해 로그인 쉘을 사용하고 있습니까?

기본적으로 xterm대화형 셸을 시작합니다 . 하지만 대화형으로 실행되도록 구성할 수도 있습니다.로그인 쉘.

이는 부팅 후 xtermssh/virtual console/su를 통해 로그인하는 것과 동일한 쉘을 얻게 된다는 것을 의미합니다.

구성의 장점/단점은 무엇입니까?로그인 쉘xterm에서?

나는 다음을 생각할 수 있다:

  • uptimew등은 열려 있는 사용자 수만큼 사용자를 last보고합니다 . xterm(이점?)
  • bash소스만 .login, .profile, /etc/profile.d다음으로 시작로그인 쉘
  • zsh시작 시 읽는 유사한 파일이 있습니다.로그인 쉘- 하지만 내 시스템에서는 기본적으로 비어 있습니다.

관련 xterm매뉴얼 페이지 섹션:

   -ls     This  option  indicates  that  the shell that is started in the
           xterm window will be a login shell (i.e., the  first  character
           of  argv[0]  will  be  a  dash, indicating to the shell that it
           should read the user's .login or .profile).

다른 리소스:

  loginShell (class LoginShell)
           Specifies whether or not the shell to  be  run  in  the  window
           should be started as a login shell.  The default is “false.”

답변1

터미널에서 로그인 쉘을 실행하면 .profile프로그램이 세션당 한 번만 실행되도록 하려는 경우에도(예: ssh-agent기타 키링) 여기에 넣은 모든 프로그램이 실행됩니다. 로그인 셸을 실행하면 세션이나 터미널 상위 프로세스에서 설정한 환경 변수가 재정의됩니다.

사람들이 터미널에서 로그인 쉘을 실행하는 가장 큰 문제는 GUI에 로그인할 때 환경 변수를 설정하지 않는 경우가 많다는 것입니다. 단점은 환경 변수가 GUI를 통해 직접 실행되는 프로그램이 아니라 터미널에서 실행되는 프로그램에서만 사용할 수 있다는 것입니다. 로그인할 때 환경 변수를 설정하는 경우 각 터미널에서 환경 변수를 다시 설정하는 것은 기껏해야 의미가 없으며 때로는 위에 표시된 것과 같은 문제가 발생할 수 있습니다.

당신은 또한 볼 수 있습니다.bashrc와 .bash_profile의 차이점,.bashrc의 대안, 그리고 질문자가 각 세션에 대해 환경 변수를 설정했다면 피할 수 있었던 많은 질문을 Stack Exchange에서 보았습니다.

관련 정보