GUI 모드 대신 명령줄 모드로 Linux를 부팅하는 방법은 무엇입니까?

GUI 모드 대신 명령줄 모드로 Linux를 부팅하는 방법은 무엇입니까?

저는 가상 머신에서 32비트 Red Hat Linux를 사용하고 있습니다. GUI 모드가 아닌 명령줄 모드로 부팅하고 싶습니다. 거기에서 startx명령을 사용하여 GUI 모드로 전환할 수 있다는 것을 알고 있습니다 . 명령줄 모드로 다시 전환하는 방법은 무엇입니까?

답변1

RedHat/CentOS 7 업데이트가 sysvinit에서 systemd로 전환되었습니다.

GUI에서 CLI로 전환하려면:systemctl isolate multi-user.target

CLI에서 GUI로 전환하려면:systemctl isolate graphical.target

CLI를 기본값으로 설정런레벨(표적시스템 용어로): systemctl set-default multi-user.target.GUI의 경우와 유사합니다.systemctl set-default graphical.target

*CLI = 명령줄 인터페이스 = 명령줄 모드

답변2

업데이트: 아래 답변은 이제 구식입니다.

오늘날 많은 배포판에서 기본값은 sysvinit가 아닌 systemd입니다. 아래 답변은 sysvinit를 기반으로 합니다. 최신 답변(초기화 시스템으로 시스템화한 경우 이 답변을 사용해야 함)은 다음과 같습니다.인형의 대답.

sysvinit 답변(대부분의 최신 배포판에서는 더 이상 사용되지 않음):

런레벨 3을 기본 런레벨로 설정하려고 합니다. 터미널에서 루트로 전환하고 다음을 수행하십시오.

[user@host]$ su
Password:
[root@host]# cp /etc/inittab /etc/inittab.bak #Make a backup copy of /etc/inittab
[root@host]# sed -i 's/id:5:initdefault:/id:3:initdefault:/' /etc/inittab #Make runlevel 3 your default runlevel

각 줄의 두 번째 이후(포함)는 모두 #주석이므로 터미널에 입력할 필요가 없습니다.

바라보다위키피디아 페이지실행 레벨에 대한 추가 정보

sed명령어 설명

  • sed명령은 일반적으로 다음을 통해 데이터 스트림을 조작하는 데 사용하는 스트림 편집기(따라서 이름)입니다.일반적인 표현.
  • 여기서는 실행 수준을 제어하는 ​​파일인 파일의 패턴 sed으로 패턴을 바꾸 라고 합니다 . id:5:initdefault:검색 및 바꾸기의 일반적인 구문은 다음과 같습니다.id:3:initdefault:/etc/inittabseds/pattern/replacement_pattern/
  • -i옵션은 sed수정 사항이 적시에 적용되도록 지시합니다. 존재하지 않는 경우 sed결과 파일(교체 후)이 터미널(보다 일반적으로 표준 출력)에 출력됩니다.

고쳐 쓰다

CTRL텍스트 모드로 다시 전환하려면 + ALT+ 를 누르세요 F1. 이렇게 해도 그래픽 세션이 중지되지는 않고 로그인한 터미널로 다시 전환됩니다. CTRL+를 사용하여 ALT그래픽 세션으로 다시 전환 할 수 있습니다 F7.

답변3

먼저 사용자를 루트로 전환하십시오.

su -
Password:

루트 비밀번호를 입력하세요.

선호하는 편집기를 사용하여 다음 줄을 수정하세요 /etc/inittab.

id:5:initdefault:

5를 3으로 변경합니다. 컴퓨터를 (다시) 시작하면 GUI 대신 명령줄로 이동하게 됩니다.

답변4

변경 사항 외에도 명령줄에서 부팅 후 전달해야 하는 대상 런레벨을 /etc/inittab커널에 알릴 수 있습니다 . init원하는 런레벨을 명령줄에 추가하기만 하면 됩니다(마지막 매개변수여야 한다고 생각합니다).

부트로더에서 커널 명령줄을 변경할 수 있는 경우 부팅하는 동안 이 작업을 한 번 수행할 수 있습니다. 또는 부트로더 구성의 항목을 복사하고 부팅 시 올바른 항목을 선택할 수 있습니다(각각의 환경으로 부팅할 때 유용함). ) 빈번한 런레벨).

유사한 프로세스를 사용하는 시스템의 경우 systemd커널 명령줄에 추가된 마법 문자열로 인해 더 많은 입력을 의미합니다 systemd.unit=desired.target.

의 경우 startx사용되지 않은 X 디스플레이 번호(번호는 0부터 시작)를 지정하여 다른 세션을 시작할 수도 있습니다. startx -- :1X 서버는 디스플레이:1에서 시작되어 사용되지 않은 첫 번째 VT(일반적으로 VT8이므로 처음 6개는 일반적으로 Linux 콘솔에서 사용되고 7은 처음 실행되는 X 세션에서 사용됩니다. X 서버에는 일반적으로 루트 권한이 필요하므로 이를 수행하거나 root(좋은 생각은 아님) 바이너리를 setuid 루트로 설정해야 합니다(일반적으로 디스플레이 관리자를 사용하면 이 권한이 필요하지 않습니다).

관련 정보