방금 커널 해킹을 시작했고 OS GUI를 실행하지 않고 단지 터미널 명령 프롬프트로 들어가는 커널을 구축하고 싶습니다. 이것은 내가 겪고 있는 문제를 디버깅하려는 시도입니다. 이 작업을 수행하려면 어떤 구성 설정을 살펴봐야 할지 잘 모르겠습니다. 이 정보를 직접 찾을 수 없습니다. 누군가 올바른 방향을 알려줄 수 있나요? 또한 나중에 이 정보를 직접 찾기 위해 Kconfig 파일을 통해 greping하는 방법에 대한 팁을 주시면 감사하겠습니다.
감사해요.
답변1
부팅 시 실행되는 GUI는 커널 빌드에 의존하지 않으며 모든 커널에서 이를 수행할 수 있습니다. 배포판에 따라 GUI 환경은 일부 서비스 관리자 또는 초기화 스크립트 세트에 의해 로드됩니다.
링크를 제거할 수 있으면 systemd
시작 시 /usr/lib/systemd/system/multi-user.target
소위 환경으로 로드됩니다 .shell
답변2
systemd
(많은 최근 배포판이 그렇습니다) 사용하는 경우 보충 답변을 제공할 수 있습니다.
ln -sf /usr/lib/systemd/system/multi-user.target /etc/systemd/system/default.target
multi-user
즉, 로그인 터미널과 대부분의 서비스(SSH 로그인 가능)가 있고 그래픽 서버는 없는 환경을 갖게 됩니다. runlevel 3
기반으로 하는 sysvinit
시스템과 매우 유사 합니다 .
답변3
이는 커널에 의해 결정되지 않습니다. 시작 옵션입니다. 시스템에서 systemd를 사용하는 경우 이 systemctl
명령을 사용하여 부팅 대상을 설정합니다. 이를 위해 올바른 systemd 명령을 무시하고 파일 시스템을 수정하지 마십시오. 대신 루트로 다음을 사용하십시오.
systemctl set-default multi-user.target
다음 명령을 사용하여 GUI 대상으로 되돌릴 수 있습니다:
systemctl set-default graphical.target
답변4
커널 명령줄 인수를 추가 init=/bin/bash
하고 무슨 일이 일어나는지 살펴보세요... (다음을 사용해야 할 수도 있습니다)편집하다명령 입력유충e
, 시작하는 동안 정확한 시간을 입력하여 - 표시될 때유충메뉴)