Solaris OS용 Sun Cluster 시스템 관리 안내서

ProcedureSPARC: 캡슐화된 루트(/) 파일 시스템을 복원하는 방법(VERITAS Volume Manager)

캡슐화된 루트(/) 파일 시스템을 노드로 복원하려면 이 절차를 수행하십시오. 복원하는 노드를 부트하면 안됩니다. 복원 절차를 수행하기 전에 클러스터가 오류 없이 실행되는지 확인합니다.


주 –

새 디스크는 장애가 발생한 디스크와 같은 형식으로 분할해야 하므로 이 절차를 시작하기 전에 분할 영역 구조를 확인하고 적절한 형식으로 파일 시스템을 다시 만듭니다.


이 절차에서는 장문형 Sun Cluster 명령을 제공합니다. 대부분의 명령에는 단문형도 있습니다. 명령은 명령 이름이 장문형과 단문형인 것을 제외하면 동일합니다. 명령 및 단문형 명령의 목록을 보려면 부록 A, Sun Cluster 객체 지향 명령를 참조하십시오.

  1. 루트 파일 시스템이 복원될 노드에서 오류가 발생한 디스크를 교체합니다.

    서버와 함께 제공되는 문서에서 디스크를 교체하는 절차를 참조하십시오.

  2. 복원할 노드를 부트합니다.

    • Solaris OS CD를 사용하는 경우 OpenBoot PROM ok 프롬프트에서 다음 명령을 입력합니다.


      ok boot cdrom -s
      
    • Solaris JumpStart 서버를 사용하는 경우 OpenBoot PROM ok 프롬프트에서 다음 명령을 입력합니다.


      ok boot net -s
      
  3. format 명령을 사용하여 루트 디스크에 모든 분할 영역과 스왑 공간을 만듭니다.

    장애가 발생한 디스크와 동일한 분할 영역 구조를 다시 만듭니다.

  4. newfs 명령을 사용하여 루트(/) 파일 시스템과 필요한 다른 파일 시스템을 만듭니다.

    장애가 발생한 디스크와 동일한 파일 시스템을 다시 만듭니다.


    주 –

    /global/.devices/node@nodeid 파일 시스템을 만들어야 합니다.


  5. 임시 마운트 지점에 루트(/) 파일 시스템을 마운트합니다.


    # mount device temp-mountpoint
    
  6. 백업에서 루트(/) 파일 시스템을 복원합니다.


    # cd temp-mountpoint
    # ufsrestore rvf dump-device
    # rm restoresymtable
    
  7. 비어 있는 install-db 파일을 만듭니다.

    이 파일은 다음 재부트 시 노드를 VxVM 설치 모드로 부트합니다.


    # touch \
    /temp-mountpoint/etc/vx/reconfig.d/state.d/install-db
    
  8. / temp-mountpoint/etc/system 파일에서 다음 항목을 제거합니다.


    * rootdev:/pseudo/vxio@0:0
    * set vxio:vol_rootdev_is_volume=1
  9. /temp-mountpoint/etc/vfstab 파일을 편집하여 모든 VxVM 마운트 지점을 /dev/dsk/c0t0d0s0과 같은 루트 디스크의 표준 디스크 장치로 교체합니다.


    예: 
    변경 전—
    /dev/vx/dsk/rootdg/rootvol /dev/vx/rdsk/rootdg/rootvol /      ufs   1     no -
    
    변경 후—
    /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  / ufs   1     no       -
  10. 임시 파일 시스템 마운트를 해제하고 파일 시스템을 검사합니다.


    # cd /
    # umount temp-mountpoint
    # fsck raw-disk-device
    
  11. 새 디스크에 새 부트 블록을 설치합니다.


    # /usr/sbin/installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk raw-disk-device
    
  12. 노드를 복수 사용자 모드로 재부트합니다.


    # reboot
    
  13. scdidadm(1M) 명령을 사용하여 디스크 ID를 업데이트합니다.


    # cldevice repair /dev/rdsk/c0t0d0
    
  14. vxinstall 명령을 실행하여 디스크를 캡슐화하고 재부트합니다.

  15. 부 번호에 다른 시스템과의 충돌이 발생하면 전역 장치 마운트를 해제한 후 디스크 그룹을 가져옵니다.

    • 클러스터 노드에서 전역 장치 파일 시스템의 마운트를 해제하십시오.


       # umount /global/.devices/node@nodeid
      
    • 클러스터 노드에서 rootdg 디스크 그룹 부 번호를 다시 지정하십시오.


      # vxdg reminor rootdg 100
      
  16. 노드를 종료하고 클러스터 모드로 재부트합니다.


    # shutdown -g0 -i6 -y
    

예 11–9 SPARC: 캡슐화된 루트(/) 파일 시스템 복원(VERITAS Volume Manager)

다음은 테이프 장치 /dev/rmt/0에서 노드 phys-schost-1로 캡슐화된 루트(/) 파일 시스템을 복원하는 예입니다.


[장애가 발생한 디스크 교체 및 노드 부트]

Solaris OS CD에서 노드를 부트합니다. OpenBoot PROM ok 프롬프트에서 다음 명령을 입력합니다.


ok boot cdrom -s
...
[Use format and newfs to create partitions and file systems]
[Mount the root file system on a temporary mount point:]
# mount /dev/dsk/c0t0d0s0 /a
[Restore the root file system:]
# cd /a
# ufsrestore rvf /dev/rmt/0
# rm restoresymtable
[Create an empty install-db file:]
# touch /a/etc/vx/reconfig.d/state.d/install-db
[Edit /etc/system on the temporary file system and 
remove or comment out the following entries:]
	# rootdev:/pseudo/vxio@0:0
	# set vxio:vol_rootdev_is_volume=1
[Edit /etc/vfstab on the temporary file system:]
Example: 
Change from—
/dev/vx/dsk/rootdg/rootvol /dev/vx/rdsk/rootdg/rootvol / ufs 1 no-

Change to—
/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  / ufs   1     no       -
[Unmount the temporary file system, then check the file system:]
# cd /
# umount /a
# fsck /dev/rdsk/c0t0d0s0
[Install a new boot block:]
# /usr/sbin/installboot /usr/platform/`uname \
-i`/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0

[Reboot:]
# reboot
[Update the disk ID:]
# cldevice repair /dev/rdsk/c0t0d0
[Encapsulate the disk::]
# vxinstall
Choose to encapsulate the root disk.
[If a conflict  in minor number occurs, reminor the rootdg disk group
:]
# umount /global/.devices/node@nodeid
# vxdg reminor rootdg 100
# shutdown -g0 -i6 -y

참조

캡슐화된 루트 디스크를 미러하는 방법에 대한 자세한 내용은 Solaris OS용 Sun Cluster 소프트웨어 설치 안내서를 참조하십시오.