Oracle® Solaris 10에서 Oracle Solaris 11.2로 전환

인쇄 보기 종료

업데이트 날짜: 2014년 12월
 
 

복구용 시스템 부트

Oracle Solaris 11 시스템을 부트할 수 없는 경우 복구 부트를 수행해야 할 가능성이 높습니다. 설치 매체에서 부트하거나 백업 BE에서 부트할 수 있습니다.

전체 시스템(베어 메탈) 복구를 수행해야 할 경우 Oracle Solaris 11.2의 시스템 복구 및 복제용 Unified Archive 사용 의 복구 아카이브를 만드는 방법을 참조하십시오.

    다음 오류 및 복구 시나리오는 이전 릴리스와 유사합니다.

  • boot –a 명령을 사용하여 /etc/system 파일에서 문제를 회피할 수 있습니다. 프롬프트가 표시되면 다음과 비슷한 구문을 사용합니다.

    Name of system file [/etc/system]:  /dev/null

    필요에 따라 다른 프롬프트에서 Return 키를 누릅니다.

  • 백업 BE는 대부분의 pkg update 작업 중 자동으로 만들어집니다. 이 기능을 사용하면 이미지 업데이트 프로세스 중 오류가 발생할 경우 이전 BE로 다시 부트할 수 있습니다. 시스템 구성을 변경하기 전에 백업 BE를 만들어 보십시오.

    # beadm create solaris-backup
    # beadm list
    BE             Active Mountpoint Space  Policy Created
    --             ------ ---------- -----  ------ -------
    solaris        R      -          4.01G  static 2013-02-08 16:53
    solaris-backup N      /          47.95M static 2013-02-11 10:48 

    백업 BE에서 부트하는 단계는 복구 목적으로 백업 BE에서 부트하는 방법을 참조하십시오.

  • 설치 매체 또는 네트워크의 설치 서버에서 부트하여 시스템 부트를 방해하는 문제로부터 복구하거나 잊어버린 root 암호로부터 복구합니다.


    주 -  SPARC 기반 시스템에서 boot net:dhcp 명령은 Oracle Solaris 10 릴리스에서 사용된 boot net 명령을 대체합니다.
  • /etc/passwd 파일에서 루트 셸 항목을 수정하거나 NIS 서버를 변경하는 것과 같은 사소한 문제는 단일 사용자 모드에서 시스템을 부트하여 해결합니다.

  • 부트 구성 문제를 해결하는 데는 일반적으로 루트 풀 가져오기, BE 마운트 및 문제 수정(예: 손상된 x86 부트 로더 다시 설치)이 필요합니다.

복구 목적으로 백업 BE에서 부트하는 방법

비상 안전 아카이브 부트는 SPARC 및 x86 플랫폼에서 더 이상 지원되지 않습니다. 가능한 경우, 복구 목적으로 최신 백업 BE를 사용하십시오. BE는 Oracle Solaris 이미지와 해당 이미지에 설치된 다른 응용 프로그램 소프트웨어 패키지의 부트 가능한 인스턴스입니다. 백업 BE는 원래 BE를 보존하므로 다중 BE를 사용하면 소프트웨어를 업데이트할 때 위험이 줄어듭니다.

활성 또는 비활성 부트 환경을 기반으로 새 BE를 만들 수 있습니다. 또는 원래 BE의 복제본을 기반으로 새 BE를 만들 수 있습니다. 복제본은 원래 BE의 주 루트 데이터 세트와 그 아래에 있는 모든 항목을 계층적으로 복사합니다. Oracle Solaris 11.2 부트 환경 만들기 및 관리 를 참조하십시오.

시스템이 활성 BE에서 부트되지 않으면 백업 BE에서 부트되도록 선택합니다.

  • 다음과 같이 백업 BE에서 부트합니다.
    • SPARC: 대체 또는 백업 BE를 선택할 수 있도록 시스템을 부트합니다.
      1. boot –L 명령으로 부트합니다.
        ok boot -L
      2. 대체 또는 백업 BE를 선택합니다.
        Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0,0:a
        File and args: -L
        1 Oracle Solaris 11.2 SPARC
        2 solaris-backup
        Select environment to boot: [ 1 - 2 ]: 2

        이전 출력에서 활성 BE는 Oracle Solaris 11.2 SPARC입니다. 실제 BE 이름과 거의 일치하지 않지만 현재 BE를 나타냅니다.

      3. 백업 BE를 부트합니다.

        부트할 BE를 선택한 후 화면 부트 경로를 식별하고 프롬프트에 정보를 입력합니다.

        To boot the selected entry, invoke:
        boot [<root-device>] -Z rpool/ROOT/solaris-backup
        
        Program terminated
        {0} ok boot -Z rpool/ROOT/solaris-backup

        시스템이 부트되지 않으면 복구를 위한 시스템 부트 방법에서 추가 부트 복구 단계를 검토하십시오.

    • x86: GRUB 메뉴에서 대체 또는 백업 BE를 식별하도록 시스템을 부트합니다.
      1. GRUB 메뉴가 표시되면 백업 BE를 식별합니다.
      2. 백업 BE를 선택하고 Return 키를 눌러 해당 항목을 부트합니다.

        시스템이 백업 BE에서 부트되지 않으면 복구를 위한 시스템 부트 방법에서 추가 부트 복구 단계를 검토하십시오.

복구를 위한 시스템 부트 방법

  1. 적합한 부트 방법을 선택합니다.
    • x86: 라이브 매체 – 설치 매체에서 부트한 다음 복구 절차에 GNOME 터미널을 사용합니다.

    • SPARC: 텍스트 설치 – 설치 매체 또는 네트워크에서 부트한 다음 텍스트 설치 화면에서 3 Shell 옵션을 선택합니다.

    • x86: 텍스트 설치 – GRUB 메뉴에서 Text Installer command line 부트 항목을 선택한 다음 텍스트 설치 화면에서 3 Shell 옵션을 선택합니다.

    • SPARC: 자동 설치 – 다음 명령을 사용하여 셸로 종료할 수 있는 설치 메뉴에서 직접 부트합니다.

      ok boot net:dhcp
    • x86: 자동 설치 – 네트워크의 설치 서버에서 부트하려면 PXE 부트가 필요합니다. GRUB 메뉴에서 Text Installer and command line 항목을 선택합니다. 그런 다음 텍스트 설치 화면에서 3 Shell 옵션을 선택합니다.

    예를 들어 시스템이 부트되면 3 Shell 옵션을 선택합니다.

    1  Install Oracle Solaris
    2  Install Additional Drivers
    3  Shell
    4  Terminal type (currently xterm)
    5  Reboot
    
    Please enter a number [1]: 3
    To return to the main menu, exit the shell
    #
  2. 다음 부트 복구 문제 중에서 선택합니다.
    • 시스템을 단일 사용자 모드로 부트하고 /etc/passwd 파일에서 셸 항목을 수정하여 잘못된 루트 셸을 해결합니다.

      x86 기반 시스템에서는 GRUB 메뉴에서 선택한 부트 항목을 편집한 다음 –s 커널 인수를 $kernel 라인의 끝에 추가합니다.

      SPARC 기반 시스템에서 시스템을 종료하고 단일 사용자 모드로 부트합니다. root 사용자로 로그인한 후 /etc/passwd 파일을 편집하고 루트 셸 항목을 수정합니다.

      # init 0
      ok boot -s
      Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0,0:a ...
      SunOS Release 5.11 Version 11.2 64-bit
      Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
      Booting to milestone "milestone/single-user:default".
      Hostname: systema.domain
      Requesting System Maintenance Mode
      SINGLE USER MODE
      
      Enter user name for system maintenance (control-d to bypass): root
      Enter root password (control-d to bypass): xxxxxxx
      single-user privilege assigned to root on /dev/console.
      Entering System Maintenance Mode
      
      Aug  3 15:46:21 su: 'su root' succeeded for root on /dev/console
      Oracle Corporation      SunOS 5.11      11.2    July 2013
      su: No shell /usr/bin/mybash.  Trying fallback shell /sbin/sh.
      root@systema.domain:~# TERM =vt100; export TERM
      root@systema.domain:~# vi /etc/passwd
      root@systema.domian:~# <Press control-d>
      logout
      svc.startd: Returning to milestone all.
    • 손상된 부트 로더 문제를 해결합니다.

      먼저, 1단계에 나열된 부트 방법 중 하나를 사용하여 매체 또는 네트워크에서 부트합니다. 그런 다음 루트 풀을 가져옵니다.

      # zpool import -f rpool

      주 -  부트 로더를 매체의 버전으로 덮어쓰지 않으려는 경우 –f 옵션을 사용하지 마십시오. Oracle Solaris 11.2 시스템 부트 및 종료 의 bootadm install-bootloader 명령을 사용하여 GRUB 2 설치를 참조하십시오.

      그런 다음, 다음과 같이 부트 로더를 재설치합니다.

      # bootadm install-bootloader -f  -P rpool

      여기서 –f는 부트 로더를 강제로 설치하고 시스템에서 부트 로더의 버전이 다운그레이드되지 않았는지 확인하는 모든 검사를 무시합니다. –P 옵션은 루트 풀을 지정합니다.

      시스템을 종료한 후 재부트합니다.

      # exit
      1  Install Oracle Solaris
      2  Install Additional Drivers
      3  Shell
      4  Terminal type (currently sun-color)
      5  Reboot
      
      Please enter a number [1]: 5

      시스템이 성공적으로 부트되는지 확인합니다.

    • 시스템에 로그인할 수 없게 하는 알 수 없는 root 암호를 해결합니다.

      먼저, 단계 1에 나열된 부트 방법 중 하나를 사용하여 매체 또는 네트워크에서 부트해야 합니다. 그런 다음 루트 풀(rpool)을 가져오고 BE를 마운트하여 root 암호 항목을 제거합니다. 이 프로세스는 SPARC 플랫폼과 x86 플랫폼에서 동일합니다.

      # zpool import -f rpool
      # beadm list
      be_find_current_be: failed to find current BE name
      be_find_current_be: failed to find current BE name
      BE                 Active Mountpoint Space  Policy Created
      --                 ------ ---------- -----  ------ -------
      solaris            -      -          11.45M static 2011-10-22 00:30
      solaris-2          R      -          12.69G static 2011-10-21 21:04
      # mkdir /a
      # beadm mount solaris-2 /a
      # TERM=vt100
      # export TERM
      # cd /a/etc
      # vi shadow
      <Carefully remove the unknown password>
      # cd /
      # beadm umount solaris-2
      # halt
  3. 단일 사용자 모드로 부트하고 암호를 설정하여 루트 암호를 설정합니다.

    이 단계에서는 이전 단계에서 알 수 없는 root 암호를 제거했다고 간주합니다.

    • x86 기반 시스템에서는 GRUB 메뉴에서 선택한 부트 항목을 편집한 다음 –s 옵션을 $kernel 행에 추가합니다.
    • SPARC 기반 시스템에서는 시스템을 단일 사용자 모드로 부트하고 루트로 로그인한 다음 루트 암호를 설정합니다. 예를 들면 다음과 같습니다.
      ok boot -s
      
      Boot device: /pci@780/pci@0/pci@9/scsi@0/disk@0,0:a File and args: -s
      SunOS Release 5.11 Version 11.2 64-bit
      Copyright (c) 1983, 2012, Oracle and/or its affiliates. All rights
      reserved.
      Booting to milestone "milestone/single-user:default".
      Hostname: systema.domain
      Requesting System Maintenance Mode
      SINGLE USER MODE
      
      Enter user name for system maintenance (control-d to bypass): root
      Enter root password (control-d to bypass): <Press return>
      single-user privilege assigned to root on /dev/console.
      Entering System Maintenance Mode
      .
      .
      .
      root@sysadma.domain:~# passwd -r files root
      New Password: xxxxxx
      Re-enter new Password: xxxxxx
      passwd: password successfully changed for root
      root@systema.central:~# <Press control-d>
      logout
      svc.startd: Returning to milestone all.