기본 시스템 쉘의 책임은 무엇입니까?

기본 시스템 쉘의 책임은 무엇입니까?

내가 아는 한, Linux /bin/sh(일부 배포판 참조 /bin/dash)에서는 이것이 기본 시스템 셸입니다. (SysV) 초기화 스크립트를 실행합니까? 다른 건 없어? 이러한 작업을 수행하는 데 왜 root사용자 셸( /bin/bashDebian 기반 )을 사용 하지 않는지 아시나요 ? /etc/passwd내가 묻는 이유는 내가 읽었기 때문이다.LPIC-1학습 가이드는 다음과 같이 말합니다.

Linux 시스템은 일반적으로 시작 시 기본 시스템 셸을 사용하여 시스템 셸 스크립트를 실행합니다.

root나는 시작이 사용자 아래에서 발생하므로 root사용자 셸을 사용한다는 인상을 받았습니다 .

답변1

이러한 스크립트가 사용자의 기본 셸(루트 포함)에 의존하지 않기를 원할 수 있습니다. 관리자가 루트의 기본 셸을 변경하는 경우 시작을 포함하여 예상치 못한 방식으로 시스템에 영향을 주어서는 안 됩니다.

이는 모든 스크립트에 해당됩니다. 따라서 모든 스크립트는 #!사용할 인터프리터를 지정하여 시작해야 합니다.

관련 정보