기본적으로 xterm
대화형 셸을 시작합니다 . 하지만 대화형으로 실행되도록 구성할 수도 있습니다.로그인 쉘.
이는 부팅 후 xterm
ssh/virtual console/su를 통해 로그인하는 것과 동일한 쉘을 얻게 된다는 것을 의미합니다.
구성의 장점/단점은 무엇입니까?로그인 쉘xterm에서?
나는 다음을 생각할 수 있다:
uptime
w
등은 열려 있는 사용자 수만큼 사용자를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에서 보았습니다.