CentOS 7에서 grub2를 사용하고 있습니다. 단일 사용자 모드로 부팅하려고 할 때 직렬(ttyS0) 및 콘솔(tty1)에 출력을 표시할 수 있는지 궁금합니다. 궁극적인 목표는 실행하도록 선택할 수 있는 영구적인 "단일 사용자" 그럽 메뉴 항목을 갖는 것입니다. 직렬 또는 콘솔에 있을 수 있습니다.
시스템이 "정상" 조건에서 시작되면 콘솔과 직렬 모두에 출력이 표시될 수 있습니다. 즉, grub2가 생성한 표준 Linux 커널 부팅 라인일 뿐입니다. 내 /etc/default/grub
파일은 다음과 같습니다.
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console serial"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
GRUB_CMDLINE_LINUX="rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0,115200"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_LINUX_LABLE=true
를 실행한 후 grub2-mkconfig
내 grub "linux16" 줄은 다음과 같습니다.
linux16 /vmlinuz-3.10.0-693.2.2.el7.x86_64 root=UUID=ea3ace60-3b6f-4be1-beaa-fcab95e66bb1 ro rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet console=tty1 console=ttyS0,115200
비밀번호 없이 쉘에 들어가기 위한 커널 매개변수는 다음과 같습니다. ( rd.break
단일 사용자 모드로 부팅하는 방법은 여러 가지가 있는 것 같아서 이 방법을 선택했지만 다른 방법도 있을 것이라고 확신합니다.)
따라서 다음을 사용하여 시스템을 시작하면
linux16 /vmlinuz-3.10.0-693.2.2.el7.x86_64 root=UUID=ea3ace60-3b6f-4be1-beaa-fcab95e66bb1 ro rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet console=tty1 console=ttyS0,115200 rd.break
쉘 프롬프트가 표시되지만 직렬을 통해서만 표시됩니다.
직렬 모드 대신 tty1에 단일 사용자 모드를 표시했지만( console=tty1
줄 끝에 넣음) 둘 다 갖고 싶습니다.
가능합니까? 유효한 커널 매개변수 조합은 무엇입니까?
(이것이 불가능한 이유를 자세히 설명하는 문서가 있다면 기꺼이 확인해 보겠습니다. 단일 사용자 모드는 최소한의 것만 실행하고 가상 터미널도 포함한다고 추측할 수 있습니다???)