36장. 기본 시스템 복구

갑자기 시스템에 문제가 발생하는 경우, 여러 가지 방법으로 문제를 해결하실 수 있습니다. 그러나 우선 시스템을 잘 이해하고 계셔야 문제 해결이 가능합니다. 따라서 이 장에서는 알고 계신 지식에 기초하여 시스템을 복구할 수 있는 능력을 키울 수 있도록 복구 모드, 단독 사용자 모드와 비상 모드로 부팅하는 방법에 대하여 다루어 보겠습니다.

36.1. 복구 모드

36.1.1. 자주 발생하는 문제들

일반적으로 다음과 같은 경우에 복구 모드로 부팅하셔야 합니다:
  • Red Hat Enterprise Linux Red Hat Enterprise Linux (런레벨 3이나 5)로 정상적으로 부팅할 수 없는 경우.
  • 하드웨어나 소프트웨어 문제가 있는데, 시스템의 하드 드라이브에서 중요한 파일을 몇 개 가져오고 싶은 경우.
  • 루트 암호를 잊어버린 경우.

36.1.1.1. Red Hat Enterprise Linux로 부팅할 수 없는 경우

이 문제는 종종 Red Hat Enterprise Linux를 설치한 다음에 다른 운영체제를 설치한 경우 발생합니다. 몇몇 다른 운영체제는 여러분의 컴퓨터에 다른 운영체제가 없다고 가정합니다. 그런 경우에 GRUB 부트 로더가 위치한 마스터 부트 레코드(MBR)을 덮어쓰게 됩니다. 만약 부트로더가 이런 이유로 변경되었다면, 복구 모드에 들어가서 부트 로더를 다시 설정하기 전까지는 Red Hat Enterprise Linux를 부팅할 수 없습니다.
또한 설치를 마친 후 파티션 도구를 사용하여 파티션의 크기를 재조정하거나 여유 공간에서 새 파티션을 생성하는 경우 이러한 문제가 자주 발생하기도 하며, 파티션 도구가 파티션의 순서를 변경하기도 합니다. 만일 / 파티션의 파티션 번호가 변경된다면, 부트로더가 마운트할 파티션을 찾지 못하게 됩니다. 이러한 문제를 해결하기 위해서는, 복구 모드로 부팅하신 후 /boot/grub/grub.conf 파일을 수정하시기 바랍니다.
복구 모드에서 GRUB 부트 로더를 재설치 하는 방법에 대한 지시 사항은 36.1.2.1절. “부트로더 재설치하기”에서 참조하시기 바랍니다.

36.1.1.2. 하드웨어/소프트웨어 문제

여러가지 상황에서 하드웨어/소프트웨어 문제가 발생할 수 있습니다. 두가지 예로 들면, 하드 드라이브가 실패하거나 부트로더 설정 파일에서 잘못된 루트 장치나 커널을 지정하는 경우가 있습니다. 이러한 상황이 발생한다면, 로 부팅할 Red Hat Enterprise Linux수 없게 됩니다. 그러나 시스템 복구 모드 중 한 가지 모드로 부팅하실 수만 있다면, 문제를 해결할 수 있거나 최소한 중요한 파일들의 복사본을 찾을 수 있습니다.

36.1.1.3. 루트 암호

루트 암호를 기억할 수 없을 때, 어떻게 하시겠습니까? 다른 루트 암호를 설정하시려면, 복구 모드나 단독 사용자 모드로 부팅하신 후 passwd 명령을 사용하여 루트 암호를 재설정하실 수 있습니다.

36.1.2. 복구 모드로 부팅하기

복구모드는 시스템의 하드 드라이브 대신 CD-ROM이나 다른 부트 미디어로부터 작은 Red Hat Enterprise Linux 환경 전체를 부팅 가능하도록 합니다.
이름이 의미하는 바와 같이 복구모드는 오류를 복구하기 위한 것입니다. 일반적인 동작 중에, Red Hat Enterprise Linux 시스템은 하드 드라이브에 있는 파일을 사용해서 모든 작업을 합니다 — 프로그램 실행, 파일 저장 등.
하지만, 때때로 시스템의 하드 드라이브에 있는 파일을 액세스하기 위해 Red Hat Enterprise Linux를 실행시킬 수 없는 경우가 있습니다. 복구모드를 사용하면 시스템 하드 드라이브에 있는 파일을 액세스할 수 있으며, 심지어 하드 드라이브에서 Red Hat Enterprise Linux를 실행할 필요도 없습니다.
복구모드로 부팅하기 위해서는 다음 방법 중 하나로 시스템을 부팅할 수 있어야 합니다[12]:
  • 부트 CD-ROM이나 DVD로 시스템을 부팅하는 방법.
  • USB 플래쉬 장치와 같은 다른 설치 부트 미디어로 시스템을 부팅하는 방법.
  • Red Hat Enterprise Linux DVD로 시스템을 부팅하는 방법.
앞에서 설명된 방법들 중 한가지 방법을 사용하여 부팅하신 후, rescue 키워드를 커널 매개 변수로 추가하십시오. 예를 들어, x86 시스템에서는 설치 부트 프롬프트에서 다음과 같은 명령을 입력하시면 됩니다:
linux rescue
시스템이 부팅하기 위해 driver disc에서 제공하는 타사 드라이버가 필요한 경우 추가 옵션 dd로 드라이버를 로딩합니다:
linux rescue dd
부팅 시 드라이버 디스크 사용에 대한 보다 자세한 내용은 6.3.3절. “드라이버 업데이트 디스크를 지정하기 위해 부트 옵션 사용 ” (x86 시스템의 경우) 또는 13.3.3절. “드라이버 업데이트 디스크를 지정하기 위해 부트 옵션 사용 ” (POWER 시스템의 경우)에서 참조하십시오.
Red Hat Enterprise Linux 6 배포판의 일부인 드라이버로 인해 시스템을 부팅할 수 없는 경우 rdblacklist 옵션을 사용하여 해당 드라이버를 블랙리스트에 등록합니다. 예를 들어, foobar 드라이버 없이 복구 모드로 부팅하려면 다음을 실행합니다:
linux rescue rdblacklist=foobar
사용할 언어와 같은 몇 가지 기본적 질문에 답하도록 요청받을 것입니다. 또한, 올바른 복구 이미지가 어디 있는지 선택하도록 할 것입니다. 로컬 CD-ROM, 하드 드라이브, NFS 이미지, FTP 또는 HTTP에서 선택하십시오. 선택한 위치에는 올바른 설치 트리가 있어야 하며, 그 트리의 버전은 부팅한 Red Hat Enterprise Linux 디스크와 동일한 버전의 Red Hat Enterprise Linux가 있어야 합니다. 만약 복구모드를 시작하기 위해 CD-ROM이나 다른 미디어에서 부팅했다면, 설치 트리는 그 미디어가 생성된 버전의 트리와 동일해야 합니다. 설치 트리를 하드 드라이브, NFS 서버, FTP 서버, 혹은 HTTP 서버에 어떻게 구축하는지에 대해서는 본 가이드의 앞부분을 참조하십시오.
네트워크에 연결할 필요가 없는 복구 이미지를 선택하시면, 네트워크에 연결하실 것인지에 대한 여부를 물어볼 것입니다. 다른 컴퓨터에 파일을 백업하거나 공유 네트워크에서 RPM 패키지를 설치하시는 경우에는 네트워크에 연결하는 것이 유용합니다.
다음과 같은 메시지가 나타날 것입니다:
복구 환경은 Linux 설치를 찾아내서 /mnt/sysimage 디렉토리 밑에 마운트할 것입니다. 시스템에 필요한 사항을 변경할 수 있습니다. 만약 '계속하기'로 이 단계를 진행한다면, '읽기 전용'을 선택해서, 파일 시스템을 읽기-쓰기 모드가 아닌 읽기 전용 모드로 마운트할 수도 있습니다. 다른 이유로 이 과정이 실패한다면, '생략'을 선택할 수 있으며, 그러면 마운트를 시도하지 않고 명령 쉘로 바로 이동합니다.
계속 버튼을 클릭하시면, /mnt/sysimage/ 디렉토리에 파일 시스템을 마운트하려고 시도할 것입니다. 만일 파티션을 마운트하는 것에 실패한다면, 실패를 통지합니다. 읽기 전용 버튼을 선택하시면, 읽기 전용 모드로 /mnt/sysimage 디렉토리에 파일 시스템을 마운트 시도할 것입니다. 건너뛰기 버튼을 선택하시면, 파일 시스템을 마운트하지 않습니다. 만일 파일 시스템이 손상되었다고 생각하시면 건너뛰기를 선택하십시오.
일단 시스템이 복구 모드로 들어가시면, VC (가상 콘솔) 1과 VC 2 상에 다음과 같은 프롬프트가 나타날 것입니다. (VC1에 접속하시려면 Ctrl-Alt-F1 키 조합을 사용하시고 VC 2에 접속하기 위해서는 Ctrl-Alt-F2 키 조합을 사용하십시오):
sh-3.00b#
파티션을 자동 마운트하기 위하여 다음 버튼을 선택한 후 그 파티션들이 성공적으로 마운트되었다면, 단독 사용자 모드가 됩니다.
파일 시스템이 마운트되었더라도, 복구 모드에서 디폴트 루트 파티션은 일반 사용자 모드 (런레벨 3 또는 5)에서 사용되는 파일 시스템의 루트 파티션이 아닌 임시 루트 파티션입니다. 만일 파일 시스템을 마운트하도록 선택하신 후 성공적으로 마운트되었다면, 다음 명령을 사용하여 복구 모드 환경에서의 루트 파티션을 파일 시스템의 루트 파티션으로 변경하실 수 있습니다:
chroot /mnt/sysimage
이렇게 하시면, 루트 파티션이 /로 마운트되어야 실행할 수 있는 rpm과 같은 명령을 실행하는데 유용합니다. chroot 환경에서 빠져나오려면, exit 명령을 입력하여 프롬프트로 되돌아 갑니다.
건너뛰기 버튼을 선택하신 경우, 복구 모드에서 /foo와 같은 디렉토리를 생성한 후 다음과 같은 명령을 입력하여, 파티션이나 LVM2 논리 볼륨을 직접 마운트 시도하실 수 있습니다:
mount -t ext4 /dev/mapper/VolGroup00-LogVol02 /foo
위 명령에서 /foo는 생성한 디렉토리이고, /foo는 마운트하고자 하는 LVM2 논리 볼륨입니다. 만약 파티션이 ext2ext3이라면, ext4ext2이나 ext3로 각각 변경하십시오.
모든 물리적 파티션의 이름을 모르실 경우, 다음의 명령어를 이용하여 파티션 목록을 보실 수 있습니다:
fdisk -l
모든 LVM2 물리적 볼륨, 볼륨 그룹 또는 논리 볼륨의 이름을 모르실 경우, 다음의 명령어를 이용하여 파티션 목록을 보실 수 있습니다:
pvdisplay
vgdisplay
lvdisplay
프롬프트에서 다음과 같이 많은 유용한 명령을 실행 가능합니다:
  • 네트워크에 연결된 경우에는 ssh,scp, ping명령을 사용 가능합니다
  • 테이프 장치를 가진 사용자는 dumprestore 명령을 사용 가능합니다.
  • partedfdisk는 파티션을 관리하는데 사용됩니다
  • rpm은 소프트웨어를 설치하고 업그레이드하는데 사용됩니다
  • 텍스트 파일을 편집하기 위한 vi

36.1.2.1. 부트로더 재설치하기

대부분의 경우, 잘못으로 인해 GRUB 부트 로더가 삭제되거나, 손상되거나 또는 다른 운영 체제에 의해 교체될 수 있습니다.
다음 단계는 마스터 부트 레코드에 GRUB을 재설치하는 방법에 대해 설명합니다:
  • 설치 부트 미디어에서 시스템을 부팅합니다.
  • 복구 모드로 들어가기 위해 설치 부트 프롬프트에서 linux rescue를 입력하십시오.
  • 루트 파티션을 마운트하기 위해 chroot /mnt/sysimage를 입력하십시오.
  • /sbin/grub-install bootpart를 GRUB 부트 로더를 재설치 하기 위해 입력합니다. 여기서 bootpart은 부트 파티션입니다(일반적으로 /dev/sda).
  • 추가적인 운영 체제를 제어하기 위해 GRUB에 추가 항목이 필요한지 /boot/grub/grub.conf 파일을 검토하십시오.
  • 시스템을 재부팅합니다.

36.1.3. 단독 사용자 모드로 부팅하기

단독 사용자 모드를 사용하는 장점 중의 하나는 CD-ROM으로 부팅할 필요가 없다는 것입니다; 그러나, 파일 시스템을 읽기 전용으로 마운트하거나 아예 마운트할 수 없는 옵션은 주어지지 않습니다.
시스템 부팅이 완료된 후에도 로그인할 수 없다면, 단독 사용자 모드를 사용해 보십시오.
단독 사용자 모드에서는, 컴퓨터가 런레벨 1로 부팅합니다. 지역 파일 시스템은 마운트되지만, 네트워크는 활성화되지 않습니다. 따라서 사용 가능한 시스템 관리 쉘을 갖게 됩니다. 복구 모드와는 달리, 단독 사용자 모드는 자동으로 파일 시스템을 마운트 시도합니다; 파일 시스템이 성공적으로 마운트될 수 없는 상황에서는 단독 사용자 모드를 사용하지 마십시오. 시스템 상의 런레벨 1 설정이 손상되었을 경우 단독 사용자 모드를 사용하실 수 없습니다.
x86 시스템에서 GRUB을 사용하신다면, 다음과 같은 과정을 사용하여 단독 사용자 모드로 부팅하십시오:
  1. 부팅시 GRUB 스플래시 스크린에서 아무키나 눌러 GRUB 메뉴로 들어가십시오.
  2. 부팅하려는 커널 버전을 가진 Red Hat Enterprise Linux를 선택하신 후 줄을 추가하기위해 a 키를 누르시기 바랍니다.
  3. 그 줄의 끝으로 가셔서 single을 별개의 단어 로 입력 (Spacebar를 누르고 나서 single을 입력)해 주십시오. 편집 모드를 종료하시려면 Enter 키를 누르십시오.

36.1.4. 비상 모드로 부팅하기

비상 모드에서는 가능한 최소 환경으로 부팅합니다. 루트 파일 시스템은 읽기 전용으로 마운트될 것이며 그 외에는 거의 아무것도 설정되지 않습니다. 단독 사용자 모드와 비교하여 비상 모드의 중요한 장점은 init 파일이 로드되지 않는다는 것입니다. 만일 init 파일이 손상되었거나 작동되지 않는 경우에도, 비상 모드에서는 파일 시스템을 마운트하여 재설치 과정에서 잃은 자료를 복구 가능합니다.
비상 모드로 부팅하시려면, 36.1.3절. “단독 사용자 모드로 부팅하기”에서 설명된 단독 사용자 모드로 부팅하는 것과 동일한 방법을 사용하시면 됩니다. 단 한가지 차이점은 single 키워드를 emergency 키워드로 바꿔주시면 됩니다.


[12] 이 가이드 앞부분의 부팅 방법을 참조하십시오.