검색

26.10. 부팅 중 터미널 메뉴 편집

download PDF

메뉴 항목을 수정하고 부팅 시 커널에 전달할 수 있습니다. 이는 부트 로더 메뉴의 선택한 메뉴 항목에서 e 키를 누를 때 트리거되는 메뉴 항목 편집기 인터페이스를 사용하여 수행됩니다. Esc 키는 변경 사항을 취소하고 표준 메뉴 인터페이스를 다시 로드합니다. c 키는 명령줄 인터페이스를 로드합니다.

명령행 인터페이스는 가장 기본적인 GRUB 2 인터페이스이지만 가장 많은 제어 권한을 부여하는 인터페이스이기도 합니다. 명령행을 사용하면 관련 GRUB 2 명령 뒤에 Enter 키를 입력하여 실행할 수 있습니다. 이 인터페이스는 컨텍스트 기반의 Tab 키 완성을 포함한 과 유사한 몇 가지 고급 기능을 갖추고 있으며 Ctrl+a 를 눌러 줄의 시작 부분으로 이동하고 Ctrl+e 를 눌러 줄의 끝으로 이동합니다. 또한 화살표,,종료삭제 키는 bash 쉘에서 수행하는 대로 작동합니다.

26.10.1. 복구 모드로 부팅

복구 모드는 편리한 단일 사용자 환경을 제공하며 일반적인 부팅 프로세스를 완료할 수 없는 상황에서 시스템을 복구할 수 있습니다. 복구 모드에서는 시스템이 모든 로컬 파일 시스템을 마운트하고 일부 중요한 시스템 서비스를 시작하려고 하지만 네트워크 인터페이스를 활성화하지 않거나 더 많은 사용자가 시스템에 로그인할 수 있도록 합니다. Red Hat Enterprise Linux 7에서 복구 모드는 단일 사용자 모드와 동일하며 root 암호가 필요합니다.

  1. 부팅 중에 복구 모드로 들어가려면 GRUB 2 부팅 화면에서 편집용 e 키를 누릅니다.
  2. 64 enterprise IBM Power 시리즈의 linux 라인 끝에, x86-64 BIOS 기반 시스템의 linux16 라인, 또는 UEFI 시스템의 linuxefi 라인에 다음 매개 변수를 추가하십시오.

    systemd.unit=rescue.target

    Ctrl+aCtrl+e 를 눌러 각 줄의 시작 및 끝으로 건너뜁니다. 일부 시스템에서는 종료일 도 작동할 수 있습니다.

    동등한 매개변수인 1,s단일 도 커널에 전달할 수 있습니다.

  3. Ctrl+x 를 눌러 매개 변수를 사용하여 시스템을 부팅합니다.

26.10.2. 긴급 모드로 부팅

긴급 모드는 가능한 가장 최소한의 환경을 제공하며 시스템이 복구 모드로 전환되지 않은 경우에도 시스템을 복구할 수 있습니다. 긴급 모드에서는 읽기용으로만 루트 파일 시스템을 마운트하고 다른 로컬 파일 시스템을 마운트하지 않고 네트워크 인터페이스를 활성화하지 않으며 몇 가지 필수 서비스만 시작합니다. Red Hat Enterprise Linux 7의 긴급 모드에서는 루트 암호가 필요합니다.

  1. 긴급 모드로 들어가려면 GRUB 2 부팅 화면에서 편집용 e 키를 누릅니다.
  2. 64 enterprise IBM Power 시리즈의 linux 라인 끝에, x86-64 BIOS 기반 시스템의 linux16 라인, 또는 UEFI 시스템의 linuxefi 라인에 다음 매개 변수를 추가하십시오.

    systemd.unit=emergency.target

    Ctrl+aCtrl+e 를 눌러 각 줄의 시작 및 끝으로 건너뜁니다. 일부 시스템에서는 종료일 도 작동할 수 있습니다.

    동등한 매개변수, emergency-b 도 커널에 전달할 수 있습니다.

  3. Ctrl+x 를 눌러 매개 변수를 사용하여 시스템을 부팅합니다.

26.10.3. 디버그 쉘로 부팅

systemd 디버그 쉘은 systemd 관련 부팅 문제를 진단하는 데 사용할 수 있는 시작 프로세스 초기에 쉘을 제공합니다. 디버그 쉘에서 systemctl list-jobs, systemctl list-units 를 사용하여 부팅 문제의 원인을 찾을 수 있습니다. 또한 로그 메시지 수를 늘리기 위해 커널 명령줄에 debug 옵션을 추가할 수 있습니다. systemd 의 경우 커널 명령줄 옵션 debug 는 이제 systemd.log_level=debug 의 바로 가기입니다.

디버그 쉘 명령 추가

이 세션에 대해서만 디버그 쉘을 활성화하려면 다음과 같이 진행하십시오.

  1. GRUB 2 부팅 화면에서 편집하려는 메뉴 항목으로 커서를 이동한 후 편집할 e 키를 누릅니다.
  2. 64 enterprise IBM Power 시리즈의 linux 라인 끝에, x86-64 BIOS 기반 시스템의 linux16 라인, 또는 UEFI 시스템의 linuxefi 라인에 다음 매개 변수를 추가하십시오.

    systemd.debug-shell

    선택적으로 debug 옵션을 추가합니다.

    Ctrl+aCtrl+e 를 눌러 각 줄의 시작 및 끝으로 건너뜁니다. 일부 시스템에서는 종료일 도 작동할 수 있습니다.

  3. Ctrl+x 를 눌러 매개 변수를 사용하여 시스템을 부팅합니다.

필요하면 systemctl enable debug-shell 명령을 사용하여 모든 부팅 시 시작되도록 디버그 쉘을 설정할 수 있습니다. 또는 grubby 도구를 사용하여 GRUB 2 메뉴에서 커널 명령행을 영구적으로 변경할 수 있습니다. grubby 사용에 대한 자세한 내용은 26.4절. “grubby 도구를 사용하여 GRUB 2 메뉴의 영구 변경 사항 만들기” 을 참조하십시오.

주의

인증을 사용하지 않으므로 디버그 쉘을 영구적으로 활성화하면 보안 위험이 있습니다. 디버깅 세션이 종료되면 비활성화합니다.

디버그 쉘에 연결

부팅 프로세스 중에 systemd-debug-generator 는 TTY9에서 디버그 쉘을 구성합니다.

  1. Ctrl+Alt+F9 를 눌러 디버그 쉘에 연결합니다. 가상 머신으로 작업하는 경우 이 키 조합을 전송하려면 가상화 애플리케이션의 지원이 필요합니다. 예를 들어 Virtual Machine Manager 를 사용하는 경우 메뉴에서 Key Ctrl+Alt+F9보내기 를 선택합니다.
  2. 디버그 쉘에는 인증이 필요하지 않으므로 TTY9: [root@localhost /]#에서 다음과 유사한 프롬프트가 표시됩니다.
  3. 필요한 경우 디버그 쉘에 있는지 확인하려면 다음과 같이 명령을 입력합니다.

    /]# systemctl status $$
    ● debug-shell.service - Early root shell on /dev/tty9 FOR DEBUGGING ONLY
      Loaded: loaded (/usr/lib/systemd/system/debug-shell.service; disabled; vendor preset: disabled)
      Active: active (running) since Wed 2015-08-05 11:01:48 EDT; 2min ago
       Docs: man:sushell(8)
     Main PID: 450 (bash)
      CGroup: /system.slice/debug-shell.service
          ├─ 450 /bin/bash
          └─1791 systemctl status 450
  4. 부팅이 성공하면 기본 쉘로 돌아가려면 Ctrl+Alt+F1 을 누릅니다.

시작 문제를 진단하려면 커널 명령줄에 systemd. mask=unit_name 을 한 번 이상 추가하여 특정 systemd 장치를 마스킹할 수 있습니다. 부팅 프로세스 중에 추가 프로세스를 시작하려면 커널 명령줄에 systemd.wants=unit_name 을 추가합니다. systemd-debug-generator(8) 매뉴얼 페이지는 이러한 옵션을 설명합니다.

26.10.4. 루트 암호 변경 및 설정

루트 암호를 설정하는 것은 Red Hat Enterprise Linux 7 설치의 필수 부분입니다. 루트 암호를 잊어버리거나 손실하면 재설정할 수 있지만, wheel 그룹의 멤버인 사용자는 다음과 같이 루트 암호를 변경할 수 있습니다.

~]$ sudo passwd root

GRUB 2에서는 Red Hat Enterprise Linux 6에 포함된 GRUB에서와 마찬가지로 더 이상 단일 사용자 모드에서 암호 재설정이 수행되지 않습니다. 이제 단일 사용자 모드와 긴급 모드에서도 root 암호를 작동해야 합니다.

루트 암호를 재설정하는 두 가지 절차는 다음과 같습니다.

  • 설치 디스크를 사용하여 루트 암호 재설정 GRUB 2 메뉴를 편집하지 않고도 쉘 프롬프트로 이동합니다. 이 방법은 두 절차 중 더 짧으며 권장되는 방법이기도 합니다. 부팅 디스크 또는 일반 Red Hat Enterprise Linux 7 설치 디스크를 사용할 수 있습니다.
  • rd.break를 사용하여 루트 암호 재설정 제어가 initramfs 에서 systemd 로 전달되기 전에 rd.break 를 사용하여 부팅 프로세스를 중단합니다. 이 방법의 단점은 더 많은 단계가 필요하며 GRUB 2 메뉴를 편집해야 할 필요가 있으며 SELinux 파일의 레이블을 다시 지정하거나 SELinux 강제 모드를 변경하는 데 걸리는 시간 중에서 선택한 다음 부팅이 완료되면 /etc/shadow/ 에 대한 SELinux 보안 컨텍스트를 복원해야 한다는 것입니다.

설치 디스크를 사용하여 루트 암호 재설정

  1. 시스템을 시작하고 BIOS 정보가 표시되면 부팅 메뉴에 대한 옵션을 선택하고 설치 디스크에서 부팅하도록 선택합니다.
  2. Troubleshooting 을 선택합니다.
  3. Rescue a Red Hat Enterprise Linux System 을 선택합니다.
  4. 기본 옵션인 Continue 를 선택합니다. 이 시점에서 암호화된 파일 시스템이 있는 경우 암호로 승격됩니다.
  5. OK 를 눌러 쉘 프롬프트가 표시될 때까지 표시되는 정보를 확인합니다.
  6. 다음과 같이 파일 시스템 루트 를 변경합니다.

    sh-4.2# chroot /mnt/sysimage
  7. passwd 명령을 입력하고 명령줄에 표시된 지침에 따라 root 암호를 변경합니다.
  8. 자동 복구 가능 파일을 제거하여 디스크의 SELinux 재지정을 사용하는 시간을 방지합니다.

    sh-4.2# rm -f /.autorelabel
  9. exit 명령을 입력하여 chroot 환경을 종료합니다.
  10. exit 명령을 다시 입력하여 초기화를 재개하고 시스템 부팅을 완료합니다.

rd.break를 사용하여 루트 암호 재설정

  1. 시스템을 시작하고 GRUB 2 부팅 화면에서 편집용 e 키를 누릅니다.
  2. rhgbquiet 매개 변수를 끝에서 또는 linux16 라인의 끝 근처에, 또는 UEFI 시스템의 linuxefi 를 제거하십시오.

    Ctrl+aCtrl+e 를 눌러 각 줄의 시작 및 끝으로 건너뜁니다. 일부 시스템에서는 종료일 도 작동할 수 있습니다.

    중요

    시스템 메시지를 활성화하려면 rhgbquiet 매개 변수를 제거해야 합니다.

  3. 64 enterprise IBM Power 시리즈의 linux 라인 끝에, x86-64 BIOS 기반 시스템의 linux16 라인, 또는 UEFI 시스템의 linuxefi 라인에 다음 매개 변수를 추가하십시오.

    rd.break enforcing=0

    enforcing=0 옵션을 추가하면 SELinux 레이블을 다시 지정하는 데 걸리는 시간을 생략할 수 있습니다.

    initramfs 는 제어를 Linux 커널에 전달하기 전에 중지되므로 루트 파일 시스템에서 작업할 수 있습니다.

    initramfs 프롬프트는 Linux 행에 지정된 마지막 콘솔에 표시됩니다.

  4. Ctrl+x 를 눌러 변경된 매개 변수를 사용하여 시스템을 부팅합니다.

    암호화된 파일 시스템에서는 이 시점에서 암호가 필요합니다. 그러나 메시지를 로깅하여 모호하기 때문에 암호 프롬프트가 나타나지 않을 수 있습니다. Backspace 키를 눌러 프롬프트를 확인할 수 있습니다. 로깅 메시지를 무시하는 동안 키를 해제하고 암호화된 파일 시스템의 암호를 입력합니다.

    initramfs switch_root 프롬프트가 나타납니다.

  5. 파일 시스템은 /sysroot/ 에 읽기 전용으로 마운트됩니다. 파일 시스템에 쓸 수 없는 경우 암호를 변경할 수 없습니다.

    파일 시스템을 쓰기 가능으로 다시 마운트합니다.

    switch_root:/# mount -o remount,rw /sysroot
  6. 쓰기가 활성화된 파일 시스템이 다시 마운트됩니다.

    파일 시스템의 루트 를 다음과 같이 변경합니다.

    switch_root:/# chroot /sysroot

    프롬프트가 sh-4.2#.

  7. passwd 명령을 입력하고 명령줄에 표시된 지침에 따라 root 암호를 변경합니다.

    시스템에 쓸 수 없는 경우 다음 오류와 함께 passwd 툴이 실패합니다.

    Authentication token manipulation error
  8. 암호 파일을 업데이트하면 잘못된 SELinux 보안 컨텍스트가 있는 파일이 생성됩니다. 다음 시스템 부팅 시 모든 파일의 레이블을 다시 지정하려면 다음 명령을 입력합니다.

    sh-4.2# touch /.autorelabel

    또는 대용량 디스크의 레이블을 다시 지정하는 데 걸리는 시간을 절약하기 위해 3단계에서 enforcing=0 옵션이 포함되어 있는 경우 이 단계를 생략할 수 있습니다.

  9. 파일 시스템을 읽기 전용으로 다시 마운트합니다.

    sh-4.2# mount -o remount,ro /
  10. exit 명령을 입력하여 chroot 환경을 종료합니다.
  11. exit 명령을 다시 입력하여 초기화를 재개하고 시스템 부팅을 완료합니다.

    이 시점에서는 암호화된 파일 시스템을 사용하는 경우 해당 텍스트 또는 문구가 필요합니다. 그러나 메시지를 로깅하여 모호하기 때문에 암호 프롬프트가 나타나지 않을 수 있습니다. 를 누르고 Backspace 키를 눌러 프롬프트를 확인할 수 있습니다. 로깅 메시지를 무시하는 동안 키를 해제하고 암호화된 파일 시스템의 암호를 입력합니다.

    참고

    SELinux 레이블 지정 프로세스에는 시간이 오래 걸릴 수 있습니다. 프로세스가 완료되면 시스템 재부팅이 자동으로 수행됩니다.

  12. 3단계에서 enforcing=0 옵션을 추가하고 8 단계에서 touch /.autorelabel 명령을 생략하면 다음 명령을 입력하여 /etc/shadow 파일의 SELinux 보안 컨텍스트를 복원합니다.

    ~]# restorecon /etc/shadow

    다음 명령을 입력하여 SELinux 정책 실행을 다시 켜고 해당 명령이 켜져 있는지 확인합니다.

    ~]# setenforce 1
    ~]# getenforce
    Enforcing
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.