6 기본 파일 시스템 구성

QFS 파일 시스템은 모든 Oracle HSM 솔루션의 기본 구성 요소입니다. QFS 파일 시스템은 단독으로 사용되어 고성능, 사실상 무제한적인 용량 및 매우 큰 파일에 대한 지원을 제공합니다. Oracle Hierarchical Storage Manager 및 적절하게 구성된 아카이브 스토리지와 함께 사용될 경우 QFS 파일 시스템은 Oracle HSM 아카이빙 파일 시스템이 됩니다. 그런 다음 아카이빙 및 비아카이빙 QFS 파일 시스템이 둘 다 사용되어 더 복잡한 다중 호스트 고가용성 구성의 기초가 됩니다. 따라서 이 장에서는 이러한 파일 시스템을 만들고 구성하기 위한 기본 작업에 대해 설명합니다.

QFS 파일 시스템 구성

기본 QFS 파일 시스템을 만들고 구성하는 것은 간단합니다. 각 경우에 다음 작업을 수행합니다.

  • 파일 시스템을 지원할 디스크 장치를 준비합니다.

  • 마스터 구성 파일(mcf)을 만듭니다.

  • /opt/SUNWsamfs/sbin/sammkfs 명령을 사용하여 파일 시스템을 만듭니다.

  • /etc/vfstab 파일을 편집하여 새 파일 시스템을 호스트의 가상 파일 시스템 구성에 추가합니다.

  • 새 파일 시스템을 마운트합니다.

그래픽 Oracle HSM Manager 인터페이스나 텍스트 편집기 및 명령줄 터미널을 사용하여 이 프로세스를 수행할 수 있습니다. 그러나 예제에서는 프로세스의 일부를 명확하게 만들어 더 쉽게 이해할 수 있도록 편집기 및 명령줄 방법이 사용됩니다.

초기 Oracle HSM 구성을 간단하고 편리하게 수행할 수 있도록 이 절의 절차에서는 Solaris 가상 파일 시스템 /etc/vfstab의 구성 파일에서 파일 시스템 마운트 옵션을 설정합니다. 그러나 대부분의 옵션은 선택적 /etc/opt/SUNWsamfs/samfs.cmd 파일이나 명령줄에서 설정할 수도 있습니다. 자세한 내용은 samfs.cmdmount_samfs 매뉴얼 페이지를 참조하십시오.

QFS 파일 시스템을 위한 디스크 스토리지 준비

구성 프로세스를 시작하기 전에 계획된 구성에 필요한 디스크 리소스를 선택합니다. 원시 장치 슬라이스, ZFS zvol 볼륨 또는 Solaris Volume Manager 볼륨을 사용할 수 있습니다.

범용 ms 파일 시스템 구성

  1. 파일 시스템 호스트에 root로 로그인합니다. 호스트에 영역이 구성된 경우 전역 영역에 로그인합니다.

    root@solaris:~# 
    
  2. /etc/opt/SUNWsamfs/mcf 파일을 만듭니다.

    mcf(마스터 구성 파일)는 공백으로 구분된 6개의 열이 있는 테이블이며 각 열은 QFS 파일 시스템을 정의하는 매개변수인 Equipment Identifier, Equipment Ordinal, Equipment Type, Family Set, Device StateAdditional Parameters 중 하나를 나타냅니다. 테이블의 행은 스토리지 장치 및 장치 그룹(패밀리 세트)을 모두 포함하는 파일 시스템 장비를 나타냅니다.

    Oracle HSM Manager 그래픽 사용자 인터페이스에서 옵션을 선택하거나 텍스트 편집기를 사용하여 mcf 파일을 만들 수 있습니다. 아래 예제에서는 vi 텍스트 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ~                                                                               
    ~                                                                               
    "/etc/opt/SUNWsamfs/mcf"  [New File]
    
  3. 명확하게 알 수 있도록 열 머리글을 주석으로 입력합니다.

    주석 행은 해시 기호(#)로 시작됩니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    
  4. 첫번째 행의 Equipment Identifier 필드(첫번째 열)에 새 파일 시스템의 이름을 입력합니다.

    이 예제에서는 파일 시스템의 이름이 qfsms로 지정됩니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms
    
  5. Equipment Ordinal 필드(두번째 열)에 파일 시스템을 고유하게 식별하는 숫자를 입력합니다.

    장비 순서 번호는 Oracle HSM에 의해 제어되는 모든 장비를 고유하게 식별합니다. 이 예제에서는 qfsms 파일 시스템에 100을 사용합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100
    
  6. Equipment Type 필드(세번째 열)에 범용 QFS 파일 시스템의 장비 유형 ms를 입력합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms
    
  7. Family Set 필드(네번째 열)에 파일 시스템의 이름을 입력합니다.

    Family Set 매개변수는 로봇 테이프 라이브러리 및 해당 상주 테이프 드라이브나 파일 시스템 및 해당 구성 요소 디스크 장치와 같은 단위를 이루기 위해 함께 구성되는 장비 그룹을 정의합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms
    
  8. Device State 열에 on을 입력하고 Additional Parameters 열은 비워 둡니다.

    이 행이 완료되었습니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms      on
    
  9. 새 행을 시작합니다. Equipment Identifier 필드(첫번째 열)에서 선택한 디스크 장치 중 하나에 대한 식별자를 입력하고 Equipment Ordinal 필드(두번째 열)에 고유한 숫자를 입력합니다.

    예제에서는 장치가 qfsms 파일 시스템 패밀리 세트의 일부라는 것을 강조 표시하기 위해 장치 라인이 들여쓰기되고 패밀리 세트의 장비 번호를 증분하여 장치 번호를 만듭니다(이 경우에는 101).

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms      on
      /dev/dsk/c1t3d0s3   101
    
  10. 디스크 장치 행의 Equipment Type 필드(세번째 열)에 디스크 장치의 장비 유형 md를 입력합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms      on
      /dev/dsk/c1t3d0s3   101        md
    
  11. 파일 시스템의 패밀리 세트 이름을 디스크 장치 행의 Family Set 필드(네번째 열)에 입력하고 onDevice State 필드(다섯번째 열)에 입력한 다음 Additional Parameters 필드(여섯번째 열)는 비워 둡니다.

    패밀리 세트 이름 qfsms는 파일 시스템을 위한 하드웨어의 일부로 디스크 장비를 식별합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms      on
      /dev/dsk/c1t3d0s3   101        md         qfsms      on
    
  12. 이제 나머지 디스크 장치에 대한 항목을 추가하고 파일을 저장한 다음 편집기를 종료합니다.

    # Equipment          Equipment  Equipment  Family     Device   Additional
    # Identifier         Ordinal    Type       Set        State    Parameters
    #-----------------   ---------  ---------  ---------  ------   ----------------
    qfsms                100        ms         qfsms      on
      /dev/dsk/c1t3d0s3   101        md         qfsms      on
      /dev/dsk/c1t4d0s5   102        md         qfsms      on
    :wq
    root@solaris:~# 
    
  13. sam-fsd 명령을 실행하여 mcf 파일에서 오류를 확인합니다.

    sam-fsd 명령은 Oracle HSM 구성 파일을 읽고 파일 시스템을 초기화합니다. 오류가 발견되면 실행을 중지합니다.

    root@solaris:~# sam-fsd
    
  14. sam-fsd 명령이 mcf 파일에서 오류를 찾을 경우 파일을 편집하여 오류를 해결하고 이전 단계에 설명된 대로 다시 검사합니다.

    아래의 예에서는 sam-fsd가 장치에서 지정되지 않은 문제를 보고합니다.

    root@solaris:~# sam-fsd
    Problem in mcf file /etc/opt/SUNWsamfs/mcf for filesystem qfsms
    sam-fsd: Problem with file system devices.
    

    대개 이러한 오류는 부주의한 타이핑 실수의 결과입니다. 여기에서는 mcf 파일을 편집기에서 열면 두번째 md 장치인 장치 102에 대한 장비 이름의 슬라이스 번호 부분에서 0 대신에 문자 o를 입력했다는 것을 알 수 있습니다.

    qfsms                100        ms         qfsms      on       
      /dev/dsk/c0t0d0s0   101        md         qfsms      on
      /dev/dsk/c0t3d0so   102        md         qfsms      on
    
  15. sam-fsd 명령이 오류 없이 실행되면 mcf 파일이 올바른 것입니다. 다음 단계로 진행하십시오.

    이 예는 오류가 없는 출력의 일부입니다.

    root@solaris:~# sam-fsd
    Trace file controls:
    sam-amld      /var/opt/SUNWsamfs/trace/sam-amld
                  cust err fatal ipc misc proc date
                  size    10M  age 0
    sam-archiverd /var/opt/SUNWsamfs/trace/sam-archiverd
                  cust err fatal ipc misc proc date module
                  size    10M  age 0
    sam-catserverd /var/opt/SUNWsamfs/trace/sam-catserverd
                  cust err fatal ipc misc proc date module
                  size    10M  age 0
    ...
    Would start sam-archiverd()
    Would start sam-stagealld()
    Would start sam-stagerd()
    Would start sam-amld()
    
  16. 새 파일 시스템의 마운트 지점 디렉토리를 만들고 마운트 지점에 대한 액세스 권한을 설정합니다.

    사용자가 마운트 지점 디렉토리를 변경하고 마운트된 파일 시스템의 파일에 액세스하려면 실행(x) 권한이 있어야 합니다. 예제에서는 /qfsms 마운트 지점 디렉토리를 만들고 755(-rwxr-xr-x)로 권한을 설정합니다.

    root@solaris:~# mkdir /qfsms
    root@solaris:~# chmod 755 /qfsms
    
  17. Oracle HSM 소프트웨어에 mcf 파일을 다시 읽고 그에 따라 재구성하도록 지시합니다. samd config 명령을 사용합니다.

    root@solaris:~# samd config
    Configuring SAM-FS
    root@solaris:~# 
    
  18. samd config 명령이 실패하고 You need to run /opt/SUNWsamfs/util/SAM-QFS-post-install 메시지가 표시될 경우 소프트웨어를 설치할 때 사후 설치 스크립트를 잊어버리고 실행하지 않은 것입니다. 지금 실행합니다.

    root@solaris:~# /opt/SUNWsamfs/util/SAM-QFS-post-install
    - The administrator commands will be executable by root only (group bin).
    If this is the desired value, enter "y".  If you want to change
    the specified value enter "c".
    ...
    root@solaris:~# 
    
  19. /opt/SUNWsamfs/sbin/sammkfs 명령과 파일 시스템의 패밀리 세트 이름을 사용하여 파일 시스템을 만듭니다.

    Oracle HSM 소프트웨어는 이중 할당 및 기본 DAU(디스크 할당 단위) 크기를 md 장치에 사용합니다. 크고 작은 파일과 I/O 요청을 모두 수용할 수 있다는 점에서 범용 파일 시스템에는 이러한 크기가 적합합니다. 예제에서는 기본값을 사용합니다.

    root@solaris:~# sammkfs qfsms
    Building 'qfsms' will destroy the contents of devices:
      /dev/dsk/c1t3d0s3
      /dev/dsk/c1t4d0s5
    Do you wish to continue? [y/N]yes
    total data kilobytes       = ...
    

    I/O 요구 사항에 더 적합한 기본값이 아닌 DAU 크기를 지정해야 하는 mr 장치를 사용 중인 경우 sammkfs 명령을 -a 옵션과 함께 사용합니다.

    root@solaris:~# sammkfs -a 16 qfs2ma 
    

    추가 정보는 sammkfs 매뉴얼 페이지를 참조하십시오.

  20. 운영체제의 /etc/vfstab 파일을 백업합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    
  21. 새 파일 시스템을 운영체제의 가상 파일 시스템 구성에 추가합니다. 텍스트 편집기에서 파일을 열고 qfsms 패밀리 세트 장치에 대한 라인을 시작합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    /proc      -        /proc     proc    -     no       -
    ...
    qfsms      -        /qfsms    samfs   -    
    
  22. /etc/vfstab 파일의 여섯번째 열인 Mount at Boot에 대부분의 경우 no를 입력합니다.

    root@solaris:~# vi /etc/vfstab
    # File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    qfsms      -        /qfsms    samfs   -     no
    
  23. 라운드 로빈 할당을 지정하려면 stripe=0 마운트 옵션을 추가합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    /proc      -        /proc     proc    -     no       -
    ...
    qfsms      -        /qfsms    samfs   -     no       stripe=0
    
  24. 스트라이프 할당을 지정하려면 stripe=stripe-width 마운트 옵션을 추가합니다. 여기서 stripe-width는 스트라이프의 각 디스크에 기록해야 하는 DAU(디스크 할당 단위) 수입니다.

    예제에서는 스트라이프 너비를 DAU 1개로 설정합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    /proc      -        /proc     proc    -     no       -
    ...
    qfsms      -        /qfsms    samfs   -     no       stripe=1
    

    여기에서 stripe=1 옵션은 스트라이프 너비로 DAU 1개를 지정하고 쓰기 크기로 DAU 2개를 지정합니다. 따라서 파일 시스템은 한 번에 DAU 2개를 쓸 경우 qfsms 패밀리 세트에 있는 2개의 각 md 디스크 장치에 하나씩 씁니다.

  25. /etc/vfstab 파일에 다른 원하는 변경을 수행합니다.

    예를 들어, 메타데이터 서버가 응답하지 않을 경우 파일 시스템을 백그라운드로 마운트하려면 bg 마운트 옵션을 Mount Options 필드에 추가합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    /proc      -        /proc     proc    -     no       -
    ...
    qfsms      -        /qfsms    samfs   -     no       stripe=1,bg
    
  26. vfstab 파일을 저장하고 편집기를 닫습니다.

    ...
    qfsms      -        /qfsms    samfs   -     no       stripe=1
    :wq
    root@solaris:~# 
    
  27. 새 파일 시스템을 마운트합니다.

    root@solaris:~# mount /qfsms 
    
  28. 이제 파일 시스템이 완료되었으며 사용할 준비가 되었습니다.

    다음 단계:

고성능 ma 파일 시스템 구성

Oracle HSM 소프트웨어가 파일 시스템 호스트에 설치되고 나면 아래 설명된 대로 ma 파일 시스템을 구성합니다.

  1. 파일 시스템 호스트에 root로 로그인합니다. 호스트에 영역이 구성된 경우 전역 영역에 로그인합니다.

    root@solaris:~# 
    
  2. 메타데이터를 보유할 디스크 장치를 선택합니다.

  3. 데이터를 보유할 디스크 장치를 선택합니다.

  4. mcf 파일을 만듭니다.

    Oracle HSM Manager 그래픽 사용자 인터페이스에서 옵션을 선택하거나 텍스트 편집기를 사용하여 mcf 파일을 만들 수 있습니다. 아래 예제에서는 vi 텍스트 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ~                                                                               
    "/etc/opt/SUNWsamfs/mcf"  [New File]
    
  5. 명확하게 알 수 있도록 열 머리글을 주석으로 입력합니다.

    주석 행은 해시 기호(#)로 시작됩니다.

    # Equipment           Equipment  Equipment  Family  Device   Additional
    # Identifier          Ordinal    Type       Set     State    Parameters
    #------------------   ---------  ---------  ------  ------   -----------------
    
  6. 파일 시스템 패밀리 세트에 대한 항목을 만듭니다.

    이 예제에서는 파일 시스템을 qfsma로 식별하고 장비 순서를 200으로 증분하며 장비 유형을 ma로 설정하고 패밀리 세트 이름을 qfsma로 설정한 다음 장치 상태를 on으로 설정합니다.

    # Equipment           Equipment  Equipment  Family  Device   Additional
    # Identifier          Ordinal    Type       Set     State    Parameters
    #------------------   ---------  ---------  ------  ------   -----------------
    qfsma          200        ma         qfsma   on
    
  7. 각 메타데이터 장치에 대한 항목을 추가합니다. 선택한 디스크 장치에 대한 식별자를 장비 식별자 열에 입력하고 장비 순서를 설정한 다음 장비 유형을 mm으로 설정합니다.

    파일 시스템의 크기에 필요한 메타데이터를 보유할 수 있도록 충분한 메타데이터 장치를 추가합니다. 예제에서는 단일 메타데이터 장치를 추가합니다.

    # Equipment           Equipment  Equipment  Family  Device   Additional
    # Identifier          Ordinal    Type       Set     State    Parameters
    #------------------   ---------  ---------  ------  ------   -----------------
    qfsma                 200        ma         qfsma   on
      /dev/dsk/c0t0d0s0    201        mm         qfsma   on
    
  8. 이제 데이터 장치에 대한 항목을 추가하고 파일을 저장한 다음 편집기를 종료합니다.

    md, mr 또는 스트라이프 그룹(gXXX) 장치가 될 수 있습니다. 이 예제에서는 md 장치를 지정합니다.

    # Equipment          Equipment  Equipment  Family  Device   Additional
    # Identifier         Ordinal    Type       Set     State    Parameters
    #------------------  ---------  ---------  ------  ------   -----------------
    qfsma                200        ma         qfsma   on
      /dev/dsk/c0t0d0s0   201        mm         qfsma   on
      /dev/dsk/c0t3d0s0   202        md         qfsma   on
      /dev/dsk/c0t3d0s1   203        md         qfsma   on
    :wq
    root@solaris:~# 
    
  9. sam-fsd 명령을 실행하여 mcf 파일에서 오류를 확인합니다.

    sam-fsd 명령은 Oracle HSM 구성 파일을 읽고 파일 시스템을 초기화합니다. 오류가 발견되면 실행을 중지합니다.

    root@solaris:~# sam-fsd
    
  10. sam-fsd 명령이 mcf 파일에서 오류를 찾을 경우 파일을 편집하여 오류를 해결하고 이전 단계에 설명된 대로 다시 검사합니다.

    아래의 예에서는 sam-fsd가 장치에서 지정되지 않은 문제를 보고합니다.

    root@solaris:~# sam-fsd
    Problem in mcf file /etc/opt/SUNWsamfs/mcf for filesystem qfsma
    sam-fsd: Problem with file system devices.
    

    대개 이러한 오류는 부주의한 타이핑 실수의 결과입니다. 여기에서는 mcf 파일을 편집기에서 열면 첫번째 md 장치인 장치 202에 대한 장비 이름의 슬라이스 번호 부분에서 1 대신에 느낌표(!)를 입력했다는 것을 알 수 있습니다.

    sharefs1              200         ma         qfsma   on       
      /dev/dsk/c0t0d0s0    201         mm         qfsma   on
      /dev/dsk/c0t0d0s!    202         md         qfsma   on
      /dev/dsk/c0t3d0s0    203         md         qfsma   on
    
  11. sam-fsd 명령이 오류 없이 실행되면 mcf 파일이 올바른 것입니다. 다음 단계로 진행하십시오.

    이 예는 오류가 없는 출력의 일부입니다.

    root@solaris:~# sam-fsd
    Trace file controls:
    sam-amld      /var/opt/SUNWsamfs/trace/sam-amld
                  cust err fatal ipc misc proc date
                  size    10M  age 0
    sam-archiverd /var/opt/SUNWsamfs/trace/sam-archiverd
                  cust err fatal ipc misc proc date module
                  size    10M  age 0
    sam-catserverd /var/opt/SUNWsamfs/trace/sam-catserverd
                  cust err fatal ipc misc proc date module
                  size    10M  age 0
    ...
    Would start sam-archiverd()
    Would start sam-stagealld()
    Would start sam-stagerd()
    Would start sam-amld()
    
  12. /opt/SUNWsamfs/sbin/sammkfs 명령과 파일 시스템의 패밀리 세트 이름을 사용하여 파일 시스템을 만듭니다.

    예제에서는 md 장치가 있는 ma 파일 시스템에 대한 기본 DAU(디스크 할당 단위) 크기인 64KB를 사용하여 파일 시스템을 만듭니다.

    root@solaris:~# sammkfs qfsma
    Building 'qfsma' will destroy the contents of devices:
      /dev/dsk/c0t0d0s0
      /dev/dsk/c0t3d0s0
      /dev/dsk/c0t3d0s1
    Do you wish to continue? [y/N]yes
    total data kilobytes       = ...
    

    일반적으로 기본값을 선택하는 것이 좋습니다. 그러나 파일 시스템이 작은 양의 데이터를 읽고 쓰는 작은 파일 또는 응용 프로그램을 주로 지원할 경우 16 또는 32KB의 DAU 크기를 지정할 수도 있습니다. 16KB DAU를 지정하려면 sammkfs 명령과 함께 -a 옵션을 사용합니다.

    root@solaris:~# sammkfs -a 16 qfsma 
    

    mr 장치 및 gXXX 스트라이프 그룹에 대한 DAU는 8-65528KB 범위에서 8KB 증분 단위로 완전히 조정할 수 있습니다. 기본값은 mr 장치의 경우 64KB이고 gXXX 스트라이프 그룹의 경우 256KB입니다. 자세한 내용은 sammkfs 매뉴얼 페이지를 참조하십시오.

  13. 운영체제의 /etc/vfstab 파일을 백업합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    
  14. 새 파일 시스템을 운영체제의 가상 파일 시스템 구성에 추가합니다. 텍스트 편집기에서 /etc/vfstab 파일을 열고 qfsma 패밀리 세트에 대한 라인을 시작합니다.

    root@solaris:~# vi /etc/vfstab
    # File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    qfsma      -        /qfsma    samfs   -
    
  15. /etc/vfstab 파일의 여섯번째 열인 Mount at Bootno를 입력합니다.

    root@solaris:~# vi /etc/vfstab
    # File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    qfsma      -        /qfsma    samfs   -     no
      
    
  16. 라운드 로빈 할당을 지정하려면 stripe=0 마운트 옵션을 추가합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    qfsma      -        /qfsma    samfs   -     no       stripe=0
    
  17. 스트라이프 할당을 지정하려면 stripe=stripe-width 마운트 옵션을 추가합니다. 여기서 stripe-width는 스트라이프의 각 디스크에 기록해야 하는 DAU(디스크 할당 단위) 수를 나타내는 [1-255] 범위의 정수입니다.

    스트라이프 할당이 지정된 경우 데이터가 장치에 병렬로 기록됩니다. 따라서 최상의 성능을 위해 스토리지 하드웨어에서 사용할 수 있는 대역폭을 최대한 활용하는 스트라이프 너비를 선택합니다. 지정된 스트라이프 너비 동안 전송되는 데이터 양은 하드웨어가 구성된 방법에 따라 다릅니다. 단일 디스크 볼륨에서 구현된 md 장치의 경우 스트라이프 너비 1은 디스크 2개 각각에 64KB DAU 1개를 기록하므로 총 128KB에 해당합니다. 3+1 RAID 5 볼륨 그룹에서 구현된 md 장치의 경우 동일한 스트라이프 너비는 2개의 각 장치에 있는 데이터 디스크 3개 각각에 64KB DAU 1개를 전송하므로 전송별로 총 DAU 6개 또는 384KB에 해당합니다. 예제에서는 스트라이프 너비를 DAU 1개로 설정합니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    qfsma      -        /qfsma    samfs   -     no       stripe=1
    
  18. 사용 가능한 하드웨어를 더 잘 활용하기 위해 스트라이프 너비를 조정해 볼 수 있습니다. 파일 시스템의 Mount Options 필드에서 stripe=n 마운트 옵션을 설정합니다. 여기서 n은 파일 시스템에 지정된 DAU 크기의 배수입니다. 파일 시스템의 I/O 성능을 테스트하고 필요에 따라 설정을 재조정합니다.

    stripe=0을 설정할 경우 Oracle HSM는 라운드 로빈 할당을 사용하여 파일을 장치에 기록합니다. 해당 장치가 가득 찰 때까지 각 파일이 하나의 장치에 완전히 할당됩니다. 공유 파일 시스템 및 멀티스트림 환경의 경우 라운드 로빈이 선호됩니다.

    예제에서는 RAID-5 볼륨 그룹의 대역폭이 스트라이프 너비 1에서 제대로 활용되지 않는 것으로 확인되었기 때문에 stripe=2를 사용해 봅니다.

    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    /proc      -        /proc     proc    -     no       -
    ...
    qfsma      -        /qfsma    samfs   -     no       ...,stripe=2
    
  19. 그렇지 않은 경우 vfstab 파일을 저장합니다.

    ...
    qfsma      -        /qfsma    samfs   -     no       stripe=1
    :wq
    root@solaris:~# 
    
  20. 새 파일 시스템을 마운트합니다.

    root@solaris:~# mount /qfsms 
    

    이제 기본 파일 시스템이 완료되었으며 사용할 준비가 되었습니다.

  21. Oracle Hierarchical Storage Manager를 사용하여 아카이빙 파일 시스템을 설정하는 중이면 Oracle HSM 아카이빙 파일 시스템 구성을 참조하십시오.

  22. 파일 시스템에서 WORM(Write Once Read Many) 기능을 사용으로 설정해야 할 경우 WORM(Write Once Read Many) 파일 지원을 사용으로 설정을 참조하십시오.

  23. LTFS를 사용하는 시스템과 상호 작용해야 하거나 원격 사이트 간에 많은 양의 데이터를 전송해야 할 경우 LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정을 참조하십시오.

  24. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

  25. 그렇지 않은 경우 알림 및 로깅 구성으로 이동합니다.

Oracle HSM 아카이빙 파일 시스템 구성

아카이빙 파일 시스템에는 하나 이상의 QFS ma 또는 ms 유형 파일 시스템과 아카이브 스토리지 및 Oracle HSM 소프트웨어가 결합되어 있습니다. Oracle HSM 소프트웨어는 보조 디스크 스토리지 및/또는 이동식 매체를 기본 파일 시스템 작업에 통합하므로 파일이 다양한 매체의 여러 복사본에서 유지 관리됩니다. 이 중복성은 연속 데이터 보호를 제공하고 매우 큰 파일의 정책 구동 보존 및 효율적인 스토리지를 지원합니다.

Oracle HSM 호스트 구성에 디스크 아카이브 파일 시스템 추가

Oracle HSM 호스트에서 필요한 디스크 아카이브 파일 시스템을 만들고 로컬 및 원격 디스크 아카이브 파일 시스템을 모두 호스트 구성에 추가합니다. 아래에 나열된 절차를 사용하십시오.

디스크 아카이브로 사용할 로컬 파일 시스템 만들기

Oracle HSM 서버에서 파일 시스템을 디스크 아카이브로 사용하려는 경우 다음과 같이 하십시오.

  1. Oracle HSM 서버에서 로컬로 마운트되는 각 디스크 아카이브 볼륨에 대해 QFS, ZFS 또는 UFS 파일 시스템을 만듭니다.

    다른 응용 프로그램과 공유해야 하는 기존 범용 파일 시스템은 사용하지 마십시오.

  2. 하나 이상의 QFS 파일 시스템을 디스크 아카이브 볼륨으로 구성할 경우 해당 파일 시스템을 아카이브 스토리지 볼륨으로 명확하게 식별하는 패밀리 세트 이름 및 장비 순서 번호 범위를 각각에 대해 지정합니다.

    QFS 아카이브 스토리지 파일 시스템을 다른 Oracle HSM 주 파일 시스템과 명확하게 구별하면 구성을 더 쉽게 이해하고 유지 관리할 수 있습니다. 이 예제에서는 새 파일 시스템의 이름인 DISKVOL1이 해당 기능을 나타냅니다. mcf 파일에서 이 이름 및 장비 순서 800으로 디스크 아카이브가 samms100(후속 예제에서 아카이빙 Oracle HSM 파일 시스템을 만들 때 사용할 패밀리 세트 이름 및 순서 번호)과 구별됩니다.

    # Archiving file systems:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    
    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    DISKVOL1                  800       ms       DISKVOL1  on
     /dev/dsk/c6t0d1s7         801       md       DISKVOL1  on
     /dev/dsk/c4t0d2s7         802       md       DISKVOL1  on
    
  3. 그런 다음 디스크 아카이브를 Oracle HSM 호스트 시스템 구성에 추가합니다.

Oracle HSM 호스트 구성에 디스크 아카이브 추가

  1. 물리적 테이프 라이브러리가 아카이브 테이프 볼륨을 보유하는 것처럼 Oracle HSM 호스트에서 디스크 아카이브 볼륨에 대한 마운트 지점을 보유하기 위한 단일 상위 디렉토리를 만듭니다.

    예제에서는 /diskvols 디렉토리를 만듭니다.

    root@solaris:~# mkdir /diskvols
    
  2. 상위 디렉토리에서 각 아카이브 파일 시스템에 대한 마운트 지점 디렉토리를 만듭니다.

    예제에서는 마운트 지점 디렉토리 DISKVOL1DISKVOL2 - DISKVOL15를 만듭니다.

    root@solaris:~# mkdir /diskvols/DISKVOL1
    root@solaris:~# mkdir /diskvols/DISKVOL2
    ...
    root@solaris:~# mkdir /diskvols/DISKVOL15
    
  3. Oracle HSM 호스트에서 /etc/vfstab 파일을 백업합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    
  4. 편집기에서 /etc/vfstab 파일을 엽니다.

    root@solaris:~# vi /etc/vfstab 
    
  5. 디스크 아카이브로 작동하는 각 로컬 QFS 파일 시스템에 대한 항목을 추가합니다. samfs 파일 시스템 유형의 각 항목을 식별하고 마운트 옵션 nosam을 추가합니다(Oracle HSM에서 아카이브를 아카이브하지 않도록 하려는 경우).

    nosam 마운트 옵션은 QFS 파일 시스템에 저장된 아카이브 복사본 자체가 아카이브되지 않게 합니다.

    예제에서는 vi 편집기를 사용하여 한 로컬 QFS 파일 시스템 DISKVOL1에 대한 항목을 추가합니다.

    root@solaris:~# vi /etc/vfstab 
    #File
    #Device           Device   Mount               System  fsck  Mount    Mount
    #to Mount         to fsck  Point               Type    Pass  at Boot  Options
    #--------         -------  ------------------  ------  ----  -------  ---------
    /devices          -        /devices            devfs   -     no       -
    ...
    DISKVOL1          -        /diskvols/DISKVOL1  samfs   -     no       nosam
    
  6. 디스크 아카이브로 작동하는 각 NFS 파일 시스템에 대한 항목을 추가합니다. nfs 파일 시스템 유형의 각 항목을 식별합니다.

    예제에서는 vi 편집기를 사용하여 DISKVOL2부터 DISKVOL15까지 항목을 추가합니다. 여기서 nfs1은 디스크 아카이브 DISKVOL2부터 DISKVOL13까지 호스트하는 NFS 서버의 이름이고, oscsa1은 나머지 디스크 아카이브를 호스트하는 Oracle Storage Cloud Software Appliance의 이름입니다.

    root@solaris:~# vi /etc/vfstab 
    #File
    #Device           Device   Mount               System  fsck  Mount    Mount
    #to Mount         to fsck  Point               Type    Pass  at Boot  Options
    #--------         -------  ------------------  ------  ----  -------  ---------
    /devices          -        /devices            devfs   -     no       -
    ...
    DISKVOL1          -        /diskvols/DISKVOL1  samfs   -     no       nosam
    nfs1:/DISKVOL2    -        /diskvols/DISKVOL2  nfs     -     yes      -
    nfs1:/DISKVOL3    -        /diskvols/DISKVOL3  nfs     -     yes      -
    ...
    oscsa1:/DISKVOL14 -        /diskvols/DISKVOL3  nfs     -     yes      -
    oscsa1:/DISKVOL15 -        /diskvols/DISKVOL15 nfs     -     yes      -
    
    
  7. /etc/vfstab 파일을 저장하고 편집기를 닫습니다.

    ...
    oscsa1:/DISKVOL14 -        /diskvols/DISKVOL3  nfs     -     yes      -
    oscsa1:/DISKVOL15 -        /diskvols/DISKVOL15 nfs     -     yes      -
    :wq
    root@solaris:~# 
    
  8. Oracle HSM 호스트에서 디스크 아카이브 파일 시스템을 마운트합니다.

    예제에서는 DISKVOL1DISKVOL2 - DISKVOL15를 마운트합니다.

    root@solaris:~# mount /diskvols/DISKVOL1
    root@solaris:~# mount /diskvols/DISKVOL2
    ...
    root@solaris:~# mount /diskvols/DISKVOL14
    root@solaris:~# mount /diskvols/DISKVOL15
    
  9. 이제 이동식 매체 라이브러리 및 드라이브 준비를 수행합니다.

이동식 매체 라이브러리 및 드라이브 준비

이 절에서는 다음 작업을 다룹니다.

Oracle StorageTek ACSLS 네트워크 연결 자동화 라이브러리 구성

Oracle StorageTek ACSLS 네트워크 연결 라이브러리가 있는 경우 다음과 같이 구성하거나 Oracle HSM Manager 그래픽 사용자 인터페이스를 사용하여 라이브러리를 자동으로 검색 및 구성할 수 있습니다(Oracle HSM Manager 사용을 위한 지침은 온라인 도움말 참조).

다음과 같이 하십시오.

  1. Oracle HSM 서버 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. /etc/opt/SUNWsamfs 디렉토리로 변경합니다.

    root@solaris:~# cd /etc/opt/SUNWsamfs
    
  3. 텍스트 편집기에서 구성 중인 네트워크 연결 라이브러리의 유형에 해당하는 이름으로 새 파일을 시작합니다.

    예제에서는 Oracle StorageTek ACSLS 네트워크 연결 라이브러리에 대한 매개변수 파일을 시작합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/acsls1params
    # Configuration File for an ACSLS Network-Attached Tape Library 1
    
  4. ACSLS 연결 라이브러리와 통신할 때 Oracle HSM 소프트웨어가 사용할 매개변수와 값을 입력합니다.

    Oracle HSM 소프트웨어는 다음 Oracle StorageTek ACSAPI(Automated Cartridge System Application Programming Interface) 매개변수를 사용하여 ACSLS 관리 라이브러리를 제어합니다(자세한 내용은 stk 매뉴얼 페이지 참조).

    • access=user-id는 액세스 제어에 대한 선택적 사용자 식별 값을 지정합니다. 기본적으로 사용자 식별 기반 액세스 제어는 없습니다.

    • hostname=hostname은 StorageTek ACSLS 인터페이스를 실행하는 서버의 호스트 이름을 지정합니다.

    • portnum=portname은 ACSLS 및 Oracle HSM 소프트웨어 간의 통신에 사용되는 포트 번호를 지정합니다.

    • ssihost=hostname은 ACSLS 호스트에 연결되는 네트워크에 대한 다중 홈 Oracle HSM 서버를 식별하는 호스트 이름을 지정합니다. 기본값은 로컬 호스트의 이름입니다.

    • ssi_inet_port=ssi-inet-port는 ACSLS 서버 시스템 인터페이스가 수신 ACSLS 응답에 사용해야 하는 고정 방화벽 포트를 지정합니다. 0 또는 [1024-65535] 범위의 값을 지정합니다. 기본값 0을 사용하면 동적 포트 할당이 허용됩니다.

    • csi_hostport=csi-port는 Oracle HSM가 해당 ACSLS 요청을 보내는 ACSLS 서버의 클라이언트 시스템 인터페이스 포트 번호를 지정합니다. 0 또는 [1024-65535] 범위의 값을 지정합니다. 기본값 0을 사용하면 시스템은 ACSLS 서버의 포트 매퍼에 포트를 쿼리합니다.

    • capid=(acs=acsnum, lsm=lsmnum, cap=capnum)은 CAP(카트리지 액세스 포트)의 ACSLS 주소를 지정합니다. 여기서 acsnum은 라이브러리에 대한 ACS(Automated Cartridge System) 번호이고 lsmnum은 CAP를 보유하는 LSM(Library Storage Module) 번호이며 capnum은 원하는 CAP에 대한 식별 번호입니다. 전체 주소를 괄호로 묶습니다.

    • capacity=(index-value-list)는 이동식 매체 카트리지의 용량을 지정합니다. 여기서 index-value-listindex=value 쌍의 콤마로 구분된 목록입니다. 목록의 각 index는 ACSLS 정의 매체 유형의 인덱스이고 각 value는 1024바이트 단위의 해당 볼륨 용량입니다.

      ACSLS 파일 /export/home/ACSSS/data/internal/mixed_media/media_types.dat는 매체 유형 인덱스를 정의합니다. 일반적으로 새 카트리지 유형인 경우 또는 지원되는 용량을 대체해야 하는 경우에만 용량 항목을 제공하면 됩니다.

    • device-path-name=(acs=ACSnumber, lsm=LSMnumber, panel=Panelnumber, drive=Drivenumber)[shared]는 클라이언트에 연결된 드라이브의 ACSLS 주소를 지정합니다. 여기서 device-path-name은 Oracle HSM 서버의 장치를 식별하고 acsnum은 라이브러리에 대한 ACS(Automated Cartridge System) 번호, lsmnum은 드라이브를 제어하는 모듈에 대한 LSM(Library Storage Module) 번호, Panelnumber는 드라이브가 설치된 패널에 대한 식별 번호, Drivenumber는 드라이브의 식별 번호입니다. 전체 주소를 괄호로 묶습니다.

      ACSLS 주소 뒤에 선택적 shared 키워드를 추가하면 2개 이상의 Oracle HSM 서버가 각각 고유한 매체를 배타적으로 제어하는 경우에 한하여 드라이브를 공유할 수 있습니다. 기본적으로 공유 드라이브의 카트리지는 언로드되기 전에 60초 동안 유휴 상태일 수 있습니다.

    예제에서는 acslserver1을 ACSLS 호스트로 식별하고 sam_user에 대한 액세스를 제한하며 동적 할당을 지정하고 카트리지 액세스 포트 및 2개의 드라이브를 매핑합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/acsls1params
    # Configuration File for an ACSLS Network-Attached Tape Library 1
    hostname = acslserver1
    portnum = 50014
    access = sam_user
    ssi_inet_port = 0
    csi_hostport = 0
    capid = (acs=0, lsm=1, cap=0)
    /dev/rmt/0cbn = (acs=0, lsm=1, panel=0, drive=1)
    /dev/rmt/1cbn = (acs=0, lsm=1, panel=0, drive=2) 
    
  5. 파일을 저장하고 편집기를 닫습니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/acsls1params
    # /etc/opt/SUNWsamfs/acslibrary1
    # Configuration File for an ACSLS Network-Attached Tape Library
    ...
    /dev/rmt/0cbn = (acs=0, lsm=1, panel=0, drive=1)
    /dev/rmt/1cbn = (acs=0, lsm=1, panel=0, drive=2) 
    :wq
    root@solaris:~# 
    
  6. 라이브러리 또는 응용 프로그램 소프트웨어에서 바코드가 붙은 이동식 매체에 대해 비표준 레이블을 사용하는 경우 지금 레이블 지정 동작 구성을 수행합니다.

  7. 드라이브 또는 응용 프로그램 소프트웨어가 Oracle HSM 기본값과 호환되지 않는 것으로 알려진 경우 지금 드라이브 타이밍 값 설정을 수행합니다.

  8. 그렇지 않은 경우 아카이빙 파일 시스템 구성으로 이동합니다.

바코드가 붙은 이동식 매체에 대한 레이블 지정 동작 구성

기본적으로 라이브러리에 바코드 읽기 장치 및 바코드가 붙은 매체가 있는 경우 Oracle HSM 소프트웨어는 바코드의 처음 6자를 사용하여 볼륨의 레이블을 자동으로 지정합니다. 하지만 Oracle HSM에서 볼륨 레이블을 바코드의 대체 읽기를 기반으로 하도록 구성할 수 있습니다. 그렇게 하려면 다음과 같이 하십시오.

  1. Oracle HSM 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 기본값이 아닌 동작이 필요하거나 이전에 기본값을 대체하고 재설정해야 하는 경우 텍스트 편집기에서 /etc/opt/SUNWsamfs/defaults.conf 파일을 엽니다.

    예제에서는 vi 편집기에서 파일을 엽니다.

    root@solaris:~# vi /opt/SUNWsamfs/examples/defaults.conf
    ...
    
  3. labels = 라인을 찾습니다(없을 경우 추가).

    예제에서는 이 지시어를 추가합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.
    ...
    labels = 
    
  4. 바코드의 처음 6자에 기초하여 자동으로 레이블을 지정하는 기본값을 다시 사용으로 설정하려면 labels 지시어의 값을 barcodes로 설정합니다. 파일을 저장하고 편집기를 닫습니다.

    이제 Oracle HSM 소프트웨어는 테이프 바코드의 처음 6자를 레이블로 사용하여 레이블이 지정되지 않은 테이프의 레이블을 자동으로 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    ...
    labels = barcodes
    :wq
    root@solaris:~# 
    
  5. 테이프 바코드의 마지막 6자에 기초하여 자동으로 레이블 지정을 사용으로 설정하려면 labels 지시어의 값을 barcodes_low로 설정합니다. 파일을 저장하고 편집기를 닫습니다.

    labels 지시어가 barcodes_low로 설정된 경우 Oracle HSM 소프트웨어는 테이프 바코드의 마지막 6자를 레이블로 사용하여 레이블이 지정되지 않은 테이프의 레이블을 자동으로 다시 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    ...
    labels = barcodes_low
    :wq
    root@solaris:~# 
    
  6. 자동 레이블 지정을 사용 안함으로 설정하고 테이프에서 레이블을 읽도록 Oracle HSM를 구성하려면 labels 지시어의 값을 read로 설정합니다. 파일을 저장하고 편집기를 닫습니다.

    labels 지시어가 read 값으로 설정된 경우 Oracle HSM 소프트웨어는 테이프의 레이블을 자동으로 재지정할 수 없습니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    ...
    labels = read
    idle_unload = 0
    ...
    :wq
    root@solaris:~# 
    
  7. 드라이브 또는 응용 프로그램 소프트웨어가 Oracle HSM 기본값과 호환되지 않는 것으로 알려진 경우 지금 드라이브 타이밍 값 설정을 수행합니다.

  8. 그렇지 않은 경우 아카이빙 파일 시스템 구성으로 이동합니다.

드라이브 타이밍 값 설정

기본적으로 Oracle HSM 소프트웨어는 드라이브 타이밍 매개변수를 다음과 같이 설정합니다.

  • 지정된 장치 유형이 매체를 마운트 해제할 수 있기 전까지 경과해야 하는 최소 시간은 60초입니다.

  • Oracle HSM 소프트웨어가 SCSI unload 명령에 응답하는 중인 라이브러리에 대해 새 명령을 실행하기 전까지 기다리는 시간은 15초입니다.

  • Oracle HSM 소프트웨어가 유휴 드라이브를 언로드하기 전까지 기다리는 시간은 600초(10분)입니다.

  • Oracle HSM 소프트웨어가 둘 이상의 Oracle HSM 서버에서 공유하는 유휴 드라이브를 언로드하기 전까지 기다리는 시간은 600초(10분)입니다.

기본 타이밍 값을 변경하려면 다음과 같이 하십시오.

  1. 로그인하지 않은 경우 Oracle HSM 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 텍스트 편집기에서 /etc/opt/SUNWsamfs/defaults.conf 파일을 엽니다.

    이 예에서는 vi 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    
  3. 필요한 경우 지정된 장치 유형이 매체를 마운트 해제할 수 있기 전까지 경과해야 하는 최소 시간을 지정합니다. defaults.conf 파일에서 equipment-type_delay = number-of-seconds 형태의 지시어를 추가합니다. 여기서 equipment-type은 구성 중인 드라이브 유형을 식별하는 2자의 Oracle HSM 코드이고 number-of-seconds는 이 장치 유형에 대한 기본 초 수를 나타내는 정수입니다.

    장비 유형 코드 및 해당 장비 목록은 부록 A 장비 유형 용어집을 참조하십시오. 예제에서는 LTO 드라이브에 대한 언로드 지연(장비 유형 li)을 기본값(60초)에서 90초로 변경합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    li_delay = 90
    
  4. 필요한 경우 Oracle HSM 소프트웨어가 SCSI unload 명령에 응답하는 중인 라이브러리에 대해 새 명령을 실행하기 전까지 기다리는 시간을 지정합니다. defaults.conf 파일에서 equipment-type_unload = number-of-seconds 형태의 지시어를 추가합니다. 여기서 equipment-type은 구성 중인 드라이브 유형을 식별하는 2자의 Oracle HSM 코드이고 number-of-seconds는 이 장치 유형에 대한 기본 초 수를 나타내는 정수입니다.

    장비 유형 코드 및 해당 장비 목록은 부록 A 장비 유형 용어집을 참조하십시오. unload 명령에 응답할 때 라이브러리에 최악의 경우 필요할 수 있는 가장 긴 시간을 설정합니다. 예제에서는 LTO 드라이브에 대한 언로드 지연(장비 유형 li)을 기본값(15초)에서 35초로 변경합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    li_delay = 90
    li_unload = 35
    
  5. 필요한 경우 Oracle HSM 소프트웨어가 유휴 드라이브를 언로드하기 전까지 기다리는 시간을 지정합니다. defaults.conf 파일에서 idle_unload = number-of-seconds 형태의 지시어를 추가합니다. 여기서 number-of-seconds는 지정된 초 수를 나타내는 정수입니다.

    이 기능을 사용 안함으로 설정하려면 0을 지정합니다. 예제에서는 기본값(600초)을 0으로 변경하여 이 기능을 사용 안함으로 설정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    li_delay = 90
    li_unload = 35
    idle_unload = 0
    
  6. 필요한 경우 Oracle HSM 소프트웨어가 공유된 유휴 드라이브를 언로드하기 전까지 기다리는 시간을 지정합니다. defaults.conf 파일에서 shared_unload = number-of-seconds 형태의 지시어를 추가합니다. 여기서 number-of-seconds는 지정된 초 수를 나타내는 정수입니다.

    이동식 매체 드라이브를 공유하도록 Oracle HSM 서버를 구성할 수 있습니다. 이 지시어는 로드된 매체를 소유하는 서버가 실제로 드라이브를 사용 중이 아닌 경우 다른 서버가 사용할 수 있도록 드라이브를 확보합니다. 이 기능을 사용 안함으로 설정하려면 0을 지정합니다. 예제에서는 기본값(600초)을 0으로 변경하여 이 기능을 사용 안함으로 설정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    idle_unload = 600
    li_delay = 90
    li_unload = 35
    idle_unload = 0
    shared_unload = 0
    
  7. 파일을 저장하고 편집기를 닫습니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character and change the value.
    ...
    idle_unload = 600
    li_delay = 90
    li_unload = 35
    idle_unload = 0
    shared_unload = 0
    :wq
    root@solaris:~# 
    
  8. 이제 아카이빙 파일 시스템 구성을 수행합니다.

아카이빙 파일 시스템 구성

아카이빙 파일 시스템을 만드는 절차는 데이터 파일의 추가 복사본을 저장하기 위한 장치를 추가한다는 점을 제외하고 비아카이빙 파일 시스템을 만드는 절차와 동일합니다.

  1. QFS 파일 시스템을 구성하는 것부터 시작합니다. 범용 ms 또는 고성능 ma 파일 시스템을 구성할 수 있습니다.

    Oracle HSM Manager 그래픽 사용자 인터페이스를 사용하여 파일 시스템을 만들 수도 있지만 이 절의 예제에서는 vi 편집기를 사용합니다. 여기에서는 패밀리 세트 이름이 samms이고 장비 순서 번호가 100인 범용 ms 파일 시스템을 만듭니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/mcf 
    # Archiving file systems:
    #
    # Equipment              Equipment Equipment Family  Device Additional
    # Identifier             Ordinal   Type      Set     State  Parameters
    #----------------------- --------- --------- ------  ------ -------------------
    samms                    100       ms        samms   on
     /dev/dsk/c1t3d0s3        101       md        samms   on
     /dev/dsk/c1t3d0s4        102       md        samms   on 
    
  2. 아카이브 테이프 스토리지를 추가하려면 라이브러리에 대한 항목을 추가하는 것부터 시작합니다. 장비 식별자 필드에 라이브러리에 대한 장치 ID를 입력하고 장비 순서 번호를 지정합니다.

    이 예제에서는 라이브러리 장비 식별자가 /dev/scsi/changer/c1t0d5입니다. 디스크 아카이브에 대한 선택한 범위 다음에 장비 순서 번호를 900으로 설정합니다.

    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    DISKVOL1                 800       ms        DISKVOL1  on
     /dev/dsk/c6t0d1s7        801       md        DISKVOL1  on
     /dev/dsk/c4t0d2s7        802       md        DISKVOL1  on
    /dev/scsi/changer/c1t0d5 900
    
  3. 장비 유형을 일반 SCSI 연결 테이프 라이브러리인 rb로 설정하고 테이프 라이브러리 패밀리 세트의 이름을 제공한 다음 장치 상태를 on으로 설정합니다.

    이 예제에서는 library1 라이브러리를 사용합니다.

    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    DISKVOL1                 800       ms        DISKVOL1  on
     /dev/dsk/c6t0d1s7        801       md        DISKVOL1  on
     /dev/dsk/c4t0d2s7        802       md        DISKVOL1  on
    /dev/scsi/changer/c1t0d5 900       rb        library1  on
    
  4. 선택적으로 Additional Parameters 열에 라이브러리 카탈로그가 저장될 경로를 입력합니다.

    카탈로그 경로를 제공하지 않을 경우 소프트웨어에서 기본 경로를 설정합니다.

    문서 레이아웃 제한으로 인해 예제에서는 긴 경로가 var/opt/SUNWsamfs/catalog/library1cat 라이브러리 카탈로그까지 축약되어 있습니다.

    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    DISKVOL1                 800       ms        DISKVOL1  on
     /dev/dsk/c6t0d1s7        801       md        DISKVOL1  on
     /dev/dsk/c4t0d2s7        802       md        DISKVOL1  on
    /dev/scsi/changer/c1t0d5 900       rb        library1  on     ...catalog/library1cat
    
  5. 다음으로 라이브러리 패밀리 세트의 일부인 각 테이프 드라이브에 대한 항목을 추가합니다. 각 드라이브를 라이브러리에 물리적으로 설치된 순서대로 추가합니다.

    라이브러리에 드라이브가 설치되는 순서 결정에서 만든 드라이브 매핑 파일에 나열된 드라이브 순서를 따릅니다. 예제에서는 /dev/rmt/1, /dev/rmt/0, /dev/rmt/2/dev/rmt/3에 있는 Solaris에 연결된 드라이브가 라이브러리에서 각각 드라이브 1, 2, 34입니다. 따라서 /dev/rmt/1mcf 파일에서 901 장치로 가장 먼저 나열됩니다. tp 장비 유형은 일반 SCSI 연결 테이프 드라이브를 지정합니다.

    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------  ------ -----------------
    DISKVOL1                  800       ms        DISKVOL1 on
     /dev/dsk/c6t0d1s7         801       md        DISKVOL1 on
     /dev/dsk/c4t0d2s7         802       md        DISKVOL1 on
    /dev/scsi/changer/c1t0d5  900       rb        library1  on     ...catalog/library1cat
     /dev/rmt/1cbn             901       tp        library1  on
     /dev/rmt/0cbn             902       tp        library1  on
     /dev/rmt/2cbn             903       tp        library1  on
     /dev/rmt/3cbn             904       tp        library1  on
    
  6. 마지막으로 Oracle HSM 내역기를 직접 구성하려는 경우 장비 유형 hy를 사용하여 항목을 추가합니다. family-set 및 device-state 열에 하이픈을 입력하고 additional-parameters 열에 내역기 카탈로그 경로를 입력합니다.

    내역기는 아카이브에서 내보낸 볼륨을 카탈로그화하는 가상 라이브러리입니다. 내역기를 구성하지 않을 경우 소프트웨어는 지정된 가장 높은 장비 순서 번호에 1을 더하여 내역기를 자동으로 만듭니다.

    예제에서는 페이지 레이아웃 제한으로 인해 긴 경로가 내역기 카탈로그까지로 축약되었습니다. 전체 경로는 /var/opt/SUNWsamfs/catalog/historian_cat입니다.

    # Archival storage for copies:
    #
    # Equipment              Equipment Equipment Family    Device Additional
    # Identifier             Ordinal   Type      Set       State  Parameters
    #----------------------- --------- --------- --------- ------ -----------------
    DISKVOL1                 800       ms        DISKVOL1  on
     /dev/dsk/c6t0d1s7        801       md        DISKVOL1  on
     /dev/dsk/c4t0d2s7        802       md        DISKVOL1  on
    /dev/scsi/changer/c1t0d5 900       rb        library1  on     ...catalog/SL150cat
     /dev/rmt/0cbn            901       tp        library1  on
     /dev/rmt/1cbn            902       tp        library1  on
     /dev/rmt/2cbn            903       tp        library1  on
     /dev/rmt/3cbn            904       tp        library1  on
    historian                999       hy        -         -      ...catalog/historian_cat
    
  7. mcf 파일을 저장하고 편집기를 닫습니다.

    ...
     /dev/rmt/3cbn            904       tp        library1  on
    historian                999       hy         -      -      ...catalog/historian_cat
    :wq
    root@solaris:~# 
    
  8. sam-fsd 명령을 실행하여 mcf 파일에서 오류를 확인합니다. 발견된 모든 오류를 수정합니다.

    sam-fsd 명령은 Oracle HSM 구성 파일을 읽고 파일 시스템을 초기화합니다. 오류가 발견되면 실행을 중지합니다.

    root@solaris:~# sam-fsd
    Trace file controls:
    ...
    Would start sam-archiverd()
    Would start sam-stagealld()
    Would start sam-stagerd()
    Would start sam-amld()
    root@solaris:~# 
    
  9. 하나 이상의 파일 시스템을 아카이브 스토리지 볼륨으로 사용하는 중이면 텍스트 편집기에서 /etc/opt/SUNWsamfs/diskvols.conf 파일을 만들고 각 파일 시스템에 VSN(볼륨 일련 번호)을 지정합니다. 각 파일 시스템에 대해 원하는 볼륨 일련 번호, 공백 및 파일 시스템 마운트 지점에 대한 경로로 구성된 새 라인을 시작합니다. 그런 다음 파일을 저장합니다.

    예제에서는 세 개의 디스크 기반 아카이브 볼륨이 있는데 DISKVOL1은 이 목적을 위해 로컬로 만든 QFS 파일 시스템입니다. DISKVOL2 - DISKVOL15는 UFS 파일 시스템입니다. 이러한 파일 시스템은 모두 /diskvols/ 디렉토리에 마운트됩니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/diskvols.conf
    # Volume 
    # Serial     Resource
    # Number     Path       
    # ------     ---------------------
    DISKVOL1     /diskvols/DISKVOL1
    DISKVOL2     /diskvols/DISKVOL2
    ...
    DISKVOL15     /diskvols/DISKVOL3
    
  10. 새 파일 시스템의 마운트 지점 디렉토리를 만들고 마운트 지점에 대한 액세스 권한을 설정합니다.

    사용자가 마운트 지점 디렉토리를 변경하고 마운트된 파일 시스템의 파일에 액세스하려면 실행(x) 권한이 있어야 합니다. 예제에서는 /samms 마운트 지점 디렉토리를 만들고 권한을 755로 설정합니다(-rwxr-xr-x).

    root@solaris:~# mkdir /samms
    root@solaris:~# chmod 755 /samms
    
  11. Oracle HSM 소프트웨어에 mcf 파일을 다시 읽고 그에 따라 재구성하도록 지시합니다. 보고된 오류를 수정하고 필요한 경우 반복합니다

    root@solaris:~# /opt/SUNWsamfs/sbin/samd config
    Configuring SAM-FS
    root@solaris:~# 
    
  12. 이제 아카이빙 파일 시스템 마운트를 수행합니다.

아카이빙 파일 시스템 마운트

  1. 파일 시스템 호스트에 root로 로그인합니다. 호스트에 영역이 구성된 경우 전역 영역에 로그인합니다.

  2. Solaris /etc/vfstab 파일을 백업하고 텍스트 편집기에서 엽니다.

    예제에서는 vi 편집기를 사용합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    root@solaris:~# vi /etc/vfstab 
    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    samms      -        /samms    samfs   -     yes      -
    
  3. Oracle HSM가 이전에 아카이브된 파일을 디스크에서 릴리스하게 만드는 백분율 단위의 디스크 캐시 사용률인 고수위를 설정합니다. Oracle HSM 파일 시스템 항목의 마지막 열에 마운트 옵션 high=percentage를 입력합니다. 여기서 percentage는 [0-100] 범위의 숫자입니다.

    디스크 스토리지 용량, 평균 파일 크기 및 특정 시점에 액세스할 것으로 예상되는 파일 수에 기초하여 이 값을 설정합니다. 사용자가 만드는 새 파일 및 사용자가 액세스해야 하는 아카이브된 파일 모두에 대한 항상 충분한 캐시 공간이 있어야 합니다. 그러나 또한 이동식 매체 볼륨 마운트와 연관된 오버헤드를 방지하기 위해 스테이징을 가능한 적게 수행해야 합니다.

    최신 고수위 디스크 또는 솔리드 상태 장치를 사용하여 주 캐시가 구현된 경우 고수위 값을 95%로 설정합니다. 그렇지 않은 경우 80-85%를 사용합니다. 예제에서는 고수위를 85%로 설정합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    root@solaris:~# vi /etc/vfstab 
    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    samms      -        /samms    samfs   -     yes      high=85
    
  4. Oracle HSM가 이전에 아카이브된 파일을 디스크에서 릴리스하는 것을 중지하게 만드는 백분율 단위의 디스크 캐시 사용률인 저수위를 설정합니다. Oracle HSM 파일 시스템 항목의 마지막 열에 마운트 옵션 low=percentage를 입력합니다. 여기서 percentage는 [0-100] 범위의 숫자입니다.

    디스크 스토리지 용량, 평균 파일 크기 및 특정 시점에 액세스할 것으로 예상되는 파일 수에 기초하여 이 값을 설정합니다. 특히 파일이 자주 요청 및 수정될 경우에는 성능상의 이유로 최근 활성 파일을 가능한 많이 캐시에 유지할 수 있습니다. 이렇게 하면 스테이징 관련 오버헤드가 최소화됩니다. 그러나 아카이브 복사본에서 디스크로 스테이지해야 하는 새 파일 및 새로 액세스한 파일에 필요한 공간을 이전에 캐시된 파일이 소비하는 것을 원하지는 않을 것입니다.

    최신 고수위 디스크 또는 솔리드 상태 장치를 사용하여 주 캐시가 구현된 경우 저수위 값을 90%로 설정합니다. 그렇지 않은 경우 70-75%를 사용합니다. 예제에서는 로컬 요구 사항에 기초하여 고수위를 75%로 설정합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    root@solaris:~# vi /etc/vfstab 
    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    samms      -        /samms    samfs   -     yes      high=85,low=75
    
  5. 이전에 아카이브된 파일이 디스크에서 릴리스될 경우 사용자가 디스크 캐시에서 일부 파일 데이터를 보존해야 할 경우 Oracle HSM 파일 시스템 항목의 마지막 열에 부분 릴리스 마운트 옵션을 입력합니다.

    부분 릴리스를 지정하면 Oracle HSM는 아카이브된 파일을 릴리스하여 디스크 공간을 복구할 때 지정된 파일의 첫번째 부분을 디스크 캐시에 남겨 둡니다. 이 접근 방법을 사용하면 응용 프로그램이 파일의 시작 부분에서 데이터에 즉시 액세스할 수 있고 나머지 부분은 테이프와 같은 아카이브 매체에서 스테이지됩니다. 부분 릴리스를 제어하는 마운트 옵션은 다음과 같습니다.

    • maxpartial=value는 파일이 value까지 부분적으로 릴리스될 때 디스크 캐시에 남아 있을 수 있는 최대 파일 데이터 양을 설정합니다. 여기서 value0-2097152 범위의 킬로바이트 수이고 0은 부분 릴리스를 사용 안함으로 설정합니다. 기본값은 16입니다.

    • partial=value는 파일이 value까지 부분적으로 릴리스된 후 디스크 캐시에 남아 있는 기본 파일 데이터 양을 설정합니다. 여기서 value는 [0-maxpartial] 범위의 킬로바이트 수입니다. 기본값은 16입니다. 그러나 보존된 파일 부분은 항상 최소 하나의 DAU(디스크 할당 단위)에 해당하는 킬로바이트를 사용합니다.

    • partial_stage=value는 부분적으로 릴리스된 전체 파일이 value까지 스테이지되기 전에 읽어야 하는 최소 파일 데이터 양을 설정합니다. 여기서 value는 [0-maxpartial] 범위의 킬로바이트 수입니다. 기본값은 -o partial(설정된 경우)에 지정된 값 또는 16입니다.

    • stage_n_window=value는 자동 스테이징 없이 테이프 매체에서 직접 읽는 파일에서 특정 시점에 읽을 수 있는 최대 데이터 양을 설정합니다. 지정된 value는 [64-2048000] 범위의 킬로바이트 수입니다. 기본값은 256입니다.

      테이프 매체에서 직접 읽는 파일에 대한 자세한 내용은 stage 매뉴얼 페이지의 OPTIONS 절에서 -n 아래를 참조하십시오.

    예제에서는 응용 프로그램의 특성에 기초하여 maxpartial128로 설정하고 partial64로 설정하며 그 밖의 경우에는 기본값을 사용합니다.

    root@solaris:~# vi /etc/vfstab 
    #File
    #Device    Device   Mount     System  fsck  Mount    Mount
    #to Mount  to fsck  Point     Type    Pass  at Boot  Options
    #--------  -------  --------  ------  ----  -------  -------------------------
    /devices   -        /devices  devfs   -     no       -
    ...
    samms      -        /samms    samfs   -     yes      ... maxpartial=128,partial=64
    
  6. QFS 파일 시스템을 아카이빙에서 제외해야 할 경우 nosam 마운트 옵션을 각각에 대한 /etc/vfstab 항목에 추가합니다.

    예제에서는 디스크 아카이브인 DISKVOL1 파일 시스템에 대해 nosam 옵션이 설정됩니다. 여기에서 nosam 마운트 옵션은 아카이브 복사본 자체가 아카이브되지 않게 합니다.

    #File
    #Device           Device   Mount               System  fsck  Mount    Mount
    #to Mount         to fsck  Point               Type    Pass  at Boot  Options
    #--------         -------  ------------------  ------  ----  -------  ---------
    /devices          -        /devices            devfs   -     no       -
    ...
    samms             -        /samms              samfs   -     yes      ... ,partial=64
    DISKVOL1          -        /diskvols/DISKVOL1  samfs   -     yes      nosam
    server:/DISKVOL2  -        /diskvols/DISKVOL2  nfs     -     yes    
    ...  
    server:/DISKVOL15 -        /diskvols/DISKVOL15 nfs     -     yes
    
  7. /etc/vfstab 파일을 저장하고 편집기를 닫습니다.

    ...
    server:/DISKVOL15 -        /diskvols/DISKVOL15 nfs     -     yes
    :wq
    root@solaris:~# 
    
  8. Oracle HSM 아카이빙 파일 시스템을 마운트합니다.

    root@solaris:~# mount /samms
    
  9. 이제 아카이빙 프로세스 구성을 수행합니다.

아카이빙 프로세스 구성

아카이빙 파일 시스템을 만들어 마운트하고 나면 일반적으로 모든 또는 대부분의 아카이빙 요구 사항을 별다른 추가 구성 없이 해결할 수 있습니다. 대부분의 경우 파일 시스템을 식별하고 각각의 아카이브 복사본 수를 지정하며 매체 볼륨을 각 복사본에 지정하는 archiver.cmd 텍스트 파일을 만드는 것 외에는 거의 할 일이 없습니다.

Oracle HSM 아카이빙 프로세스에 조정 가능한 많은 매개변수가 있지만 적절하게 정의된 특수한 요구 사항이 없는 경우 일반적으로 기본 설정을 사용해야 합니다. 기본값은 매체 마운트 수를 최소화하고 매체 사용률을 극대화하며 가장 광범위한 환경에서 종단간 아카이빙 성능을 최적화하도록 신중하게 선택된 값입니다. 따라서 조정이 필요한 경우 변경사항으로 인해 아카이버가 작업을 예약하고 매체를 선택하는 기능이 불필요하게 제한되지 않는지 특히 주의해야 합니다. 스토리지 작업을 세부적으로 관리하려는 경우 성능과 전체 효율성이 크게 저하될 수도 있습니다.

그러나 거의 모든 상황에서 아카이브 로깅을 사용으로 설정해야 합니다. 로그 파일을 적절하게 관리하지 않는 경우 과도한 크기가 될 수 있으므로 아카이브 로깅은 기본적으로 사용으로 설정되지 않습니다(관리에 대한 내용은 Oracle Hierarchical Storage Manager and StorageTek QFS Software 유지 관리 및 관리 설명서에서 설명됨). 그러나 파일 시스템이 손상 또는 손실된 경우 쉽게 복원할 수 없는 파일을 아카이브 로그 파일을 통해 복구할 수 있습니다. 파일 시스템에 대한 보호 구성을 수행할 경우 복구 지점 파일의 파일 시스템 메타데이터를 사용하여 아카이브 복사본에 저장된 데이터에서 파일 시스템을 신속하게 재작성할 수 있습니다. 그러나 불가피하게 마지막 복구 지점이 생성된 파일 시스템이 손상 또는 손실되기 전에 약간의 파일이 아카이브됩니다. 이 경우 아카이브 매체는 유효한 복사본을 보유하지만 파일 시스템 메타데이터가 없으면 복사본을 자동으로 찾을 수 없습니다. 파일 시스템의 아카이브 로그가 각 아카이브 복사본 및 각 볼륨 내의 해당 tar 파일 위치를 보유하는 매체의 볼륨 일련 번호를 기록하므로 tar 유틸리티를 사용하여 이러한 파일을 복구하고 파일 시스템을 완전히 복원할 수 있습니다.

archiver.cmd 파일을 만들고 아카이빙 프로세스를 구성하려면 다음과 같이 하십시오.

  1. 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 텍스트 편집기에서 새 /etc/opt/SUNWsamfs/archiver.cmd 파일을 엽니다.

    archiver.cmd의 각 라인은 공백으로 구분된 하나 이상의 필드로 구성됩니다(선행 공백은 무시됨).

    예제에서는 vi 편집기를 사용하여 파일을 열고 주석을 입력합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    # Configuration file for archiving file systems
    
  3. archiver.cmd 파일의 시작 부분에 필요한 모든 일반 아카이빙 지시어를 입력합니다.

    일반 지시어는 등호(=) 문자를 두번째 필드에 포함하거나 추가 필드가 없습니다. 대부분의 경우 일반 지시어를 설정하는 대신에 기본값을 사용할 수 있습니다(자세한 내용은 archiver.cmd 매뉴얼 페이지의 GENERAL DIRECTIVES SECTION 참조).

    이 섹션을 비워 둘 수 있지만 예제에서는 해당 형태를 보여주기 위해 두 개의 일반 지시어에 대한 기본값을 입력했습니다.

    • archivemeta = off 지시어는 메타데이터를 아카이브하지 않아야 한다는 것을 아카이빙 프로세스에 지시합니다.

    • examine = noscan 지시어는 파일이 변경되었다는 것을 파일 시스템이 보고할 때마다 아카이빙이 필요한 파일을 검사하도록 아카이빙 프로세스에 지시합니다(기본값).

      이전 버전의 Oracle HSM는 전체 파일 시스템을 주기적으로 스캔했습니다. 레거시 Oracle HSM 구성과의 호환성을 위해 필요한 경우가 아니라면 일반적으로 이 지시어를 변경하지 않아야 합니다.

    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    # General Directives
    archivemeta = off                                              # default
    examine = noscan                                               # default
    
  4. 필요한 모든 일반 아카이빙 지시어를 입력했으면 아카이브 세트에 파일을 지정하는 것을 시작합니다. 새 라인에 지정 지시어 fs = filesystem-name을 입력합니다. 여기서 filesystem-name/etc/opt/SUNWsamfs/mcf 파일에 정의된 파일 시스템에 대한 패밀리 세트 이름입니다.

    이 지정 지시어는 지정된 파일 시스템의 파일 세트를 아카이브 매체의 복사본 세트에 매핑합니다. 파일 세트는 모든 파일 시스템만큼 크거나 약간의 파일만큼 작을 수 있습니다. 그러나 최상의 성능과 효율성을 위해 너무 많이 지정하면 안됩니다. 과도한 매체 마운트, 불필요한 매체 재배치 및 전반적인 매체 사용률 저하를 가져올 수 있으므로 아카이브 세트를 필요한 것 이상으로 만들지 마십시오. 대부분의 경우 파일 시스템당 하나의 아카이브 세트를 지정합니다.

    예제에서는 아카이빙 파일 시스템 samms에 대한 아카이브 세트 지정 지시어를 시작합니다.

    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    # General Directives
    archivemeta = off                                              # default
    examine = noscan                                               # default
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = samms                                       # Archiving File System
    
  5. 다음 라인에서 아카이브 로깅을 사용으로 설정합니다. logfile = path/filename 지시어를 입력합니다. 여기서 path/filename은 위치 및 파일 이름을 지정합니다.

    위에서 언급한 것처럼 파일 시스템 손실 후에 완벽한 복구를 위해 아카이브 로그 데이터가 필수적입니다. 따라서 아카이버 로그를 /var/adm/과 같은 Oracle HSM 디렉토리가 아닌 디렉토리에 기록하도록 Oracle HSM를 구성하고 복사본을 정기적으로 저장합니다. 모든 파일 시스템에 대한 아카이버 작업을 함께 기록하는 전역 archiver.log를 만들 수도 있지만 각 파일 시스템에 대한 로그를 구성하면 파일 복구 도중 로그를 더 쉽게 검색할 수 있습니다. 따라서 예제에서는 파일 시스템 지정 지시어와 함께 /var/adm/samms.archiver.log를 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = samms                                       # Archiving File System
    logfile = /var/adm/samms.archiver.log
    
  6. 다음 라인에서 이 파일 시스템의 파일을 아카이브 세트에 지정합니다. 만들어야 하는 각 아카이브 세트에 대해 archiveset-name starting-directory expression 지시어를 입력합니다. 여기서 각 항목은 다음과 같습니다.

    • archiveset-name은 새 아카이브 세트에 대해 선택한 이름입니다.

    • starting-directory는 Oracle HSM가 파일 검색을 시작할 디렉토리에 대한 경로입니다(파일 시스템 마운트 지점 기준).

    • expression은 Solaris find 명령에 의해 정의된 부울 표현식 중 하나입니다.

    대부분의 경우 아카이브 세트 정의를 가능한 포괄적이고 간단하게 유지해야 합니다. 그러나 상황에 따라서는 정규 표현식을 사용하여 사용자 또는 그룹 파일 소유권, 파일 크기, 파일 날짜/시간 기록, 파일 이름 등과 같은 더 제한적인 추가 식별자를 지정함으로써 아카이브 세트 멤버쉽을 제한할 수 있습니다. 자세한 내용은 archiver.cmd 매뉴얼 페이지를 참조하십시오.

    예제에서는 samms 파일 시스템에서 발견된 모든 파일을 allsamms라는 단일 아카이브 세트에 포함합니다. 마운트 지점 디렉토리 자체(/samms)에서 검색을 시작하도록 점(.)을 사용하여 경로를 지정합니다.

    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = samms                                       # Archiving File System
    logfile = /var/adm/samms.archiver.log
    allsamms .
    
  7. 다음으로 samms 파일 시스템의 allsamms 아카이브 세트에 대한 복사본 지시어를 추가합니다. 각 복사본에 대해 하나 이상의 공백으로 라인을 시작하고 copy-number -release -norelease archive-age unarchive-age 지시어를 입력합니다. 여기서 각 항목은 다음과 같습니다.

    • copy-number는 정수입니다.

    • -release-norelease는 복사본이 작성된 후 디스크 캐시 공간이 관리되는 방법을 제어하는 선택적 매개변수입니다. -release는 그 자체로 해당 복사본이 작성되자마자 디스크 공간이 자동으로 릴리스되도록 합니다. -norelease는 그 자체로 -norelease가 설정된 모든 복사본이 작성되고 릴리서 프로세스가 실행될 때까지 디스크 공간의 릴리스를 방지합니다. -release-norelease는 함께 사용되어 -norelease가 설정된 모든 복사본이 작성되자마자 디스크 캐시 공간을 자동으로 해제합니다.

    • archive-age는 파일이 아카이브되기 전에 마지막으로 수정된 시간으로부터 경과해야 하는 시간입니다. 정수 및 식별자 s(초), m(분), h(시간), d(일), w(주) 및 y(년)를 임의로 조합하여 시간을 표시합니다. 기본값은 4m입니다.

    • unarchive-age는 파일의 아카이브를 취소할 수 있기 전에 마지막으로 수정된 시간으로부터 경과해야 하는 시간입니다. 기본값은 복사본의 아카이브를 취소하지 않는 것입니다.

    전체 중복성을 위해 항상 각 아카이브 세트의 복사본을 2개 이상 지정합니다(최대값은 4). 예제에서는 복사본이 도달하는 아카이브 수명을 15분으로 하여 복사본 3개를 각각 -norelease와 함께 지정합니다. 복사본 1은 디스크 아카이브 볼륨을 사용하여 작성되고 복사본 23은 테이프 매체에 작성됩니다.

    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = samms                                       # Archiving File System
    logfile = /var/adm/samms.archiver.log
    allsamms .
        1 -norelease 15m
        2 -norelease 15m
        3 -norelease 15m
    
  8. 나머지 모든 파일 시스템에 대한 아카이브 세트를 정의합니다.

    예제에서는 QFS 파일 시스템 DISKVOL1을 복사본 프로세스에 대한 아카이브 매체로 구성했습니다. 따라서 fs = DISKVOL1에 대한 항목을 시작합니다. 그러나 아카이브 복사본의 아카이브 복사본을 작성하지는 않을 것입니다. 따라서 로그 파일을 지정하지 않으며 이 파일 시스템의 파일에 대한 아카이빙을 방지하는 no_archive라는 특수한 아카이브 세트를 사용합니다.

    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = samms                                       # Archiving File System
    logfile = /var/adm/samms.archiver.log
    allsamms .
        1 -norelease 15m
        2 -norelease 15m
        3 -norelease 15m
    fs = DISKVOL1                          # QFS File System (Archival Media)
    no_archive .
    
  9. 다음으로 복사본이 만들어지는 방법을 제어하는 지시어를 입력합니다. 새 라인에서 params 키워드를 입력하여 복사 매개변수 섹션을 시작합니다.

    ...
    fs = DISKVOL1                          # QFS File System (Archival Media)
    no_archive .
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params 
    
  10. 모든 아카이브 세트의 모든 복사본에 적용되는 공통 복사 매개변수를 설정해야 할 경우 allsets -param value ... 형태의 라인을 입력합니다. 여기서 allsets는 구성된 모든 아카이브 세트를 나타내는 특수한 아카이브 세트이고 -param value ...는 공백으로 구분된 하나 이상의 매개변수/값 쌍을 나타냅니다.

    매개변수 및 해당 값에 대한 자세한 내용은 archiver.cmd 매뉴얼 페이지의 ARCHIVE SET COPY PARAMETERS SECTION 절을 참조하십시오.

    예제의 지시어는 대부분의 파일 시스템에 적합합니다. 특수한 allsets 아카이브 세트는 최적의 성능 및 쉬운 관리를 위해 모든 아카이브 세트가 일관되게 처리되도록 합니다. -sort path 매개변수는 동일한 디렉토리의 파일이 아카이브 매체에 함께 남아 있도록 모든 아카이브 세트의 모든 복사본에 대한 테이프 아카이브(tar) 파일이 경로에 따라 정렬되도록 합니다. -offline_copy stageahead 매개변수는 오프라인 파일을 아카이브할 때 성능을 향상시킬 수 있습니다.

    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    
  11. 모든 아카이브 세트의 특정 복사본에 대한 복사 매개변수를 설정해야 할 경우 allfiles.copy-number -param value ... 형태의 라인을 입력합니다. 여기서 allsets는 구성된 모든 아카이브 세트를 나타내는 특수한 아카이브 세트이고 copy-number는 지시어가 적용되는 복사본 번호이며 -param value ...는 공백으로 구분된 하나 이상의 매개변수/값 쌍을 나타냅니다.

    매개변수 및 해당 값에 대한 자세한 내용은 archiver.cmd 매뉴얼 페이지의 ARCHIVE SET COPY PARAMETERS SECTION 절을 참조하십시오.

    예제에서 allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G 지시어는 디스크 볼륨에 맞게 복사본 1을 최적화합니다. 아카이빙을 위해 선택한 첫번째 파일이 10분 동안 대기했거나 대기 중인 모든 파일의 총 크기가 최소한 500MB 이상인 경우 아카이빙이 시작됩니다. 최대 10개의 드라이브를 사용하여 복사본을 만들 수 있고 복사본의 각 tar 파일은 1GB보다 클 수 없습니다.

    나머지 지시어 allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve setallfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set는 테이프 매체에 맞게 복사본 23을 최적화합니다. 아카이빙을 위해 선택한 첫번째 파일이 각각 24 또는 48시간 동안 대기했거나 대기 중인 모든 파일의 총 크기가 최소한 20GB 이상인 경우 아카이빙이 시작됩니다. 최대 2개의 드라이브를 사용하여 이러한 복사본을 만들 수 있고(기반구조에 맞게 개수 조정) 복사본의 각 tar 파일은 24GB보다 클 수 없습니다. -reserve set는 각 아카이브 세트의 복사본 23이 동일한 아카이브 세트의 복사본만 포함하는 테이프 매체를 사용하여 작성되도록 합니다.

    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve set
    allfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set
    

    이 절의 예제에서는 디스크 볼륨을 아카이빙에 사용한다고 가정합니다. 테이프 볼륨만 사용할 경우 복사본 2개를 지정하고 테이프에 더 자주 아카이브합니다. 기반구조에 맞게 지정된 드라이브 수를 조정하고 나면 다음 구성은 대부분의 파일 시스템에 적합합니다.

    allsets -sort path -offline_copy stageahead -reserve set
    allfiles.1 -startage 8h -startsize 8G -drives 2 -archmax 10G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G
    
  12. 특정 아카이브 세트 및 복사본에 대한 지시어를 설정해야 할 경우 archive-set-name.copy-number -param value ... 형태의 라인을 입력합니다. 여기서 archive-set-name은 아카이브 세트에 사용한 이름이고 copy-number는 지시어가 적용되는 복사본의 번호이며 -param value ...는 공백으로 구분된 하나 이상의 매개변수/값 쌍을 나타냅니다.

    매개변수 및 해당 값에 대한 자세한 내용은 archiver.cmd 매뉴얼 페이지의 ARCHIVE SET COPY PARAMETERS SECTION 절을 참조하십시오.

    아래 예제에서는 corpfs 파일 시스템에 대한 2개의 아카이브 세트 hqbranches가 정의됩니다. hq.1hq.2에 대한 복사본 지시어는 아카이브 세트 hq에만 적용됩니다. 아카이브 세트 branches는 영향을 받지 않습니다.

    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = corpfs
    logfile = /var/adm/corporatefs.archive.log
    hq /corpfs/hq/
        1 -norelease 15m
        2 -norelease 15m
    branches /corpfs/branches/
        1 -norelease 15m
        2 -norelease 15m
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    hq.1 -drives 4 
    hq.2 -drives 2 
    
  13. 필요한 모든 복사 매개변수를 설정하고 나면 새 라인에 endparams 키워드를 입력하여 복사 매개변수 목록을 닫습니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve set
    allfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set
    endparams
    
  14. 선택적으로 vsnpools 키워드와 pool-name media-type volumes 형태인 하나 이상의 지시어를 입력하여 매체 풀을 정의할 수 있습니다. 여기서 pool-name은 풀에 지정한 이름이고 media-type부록 A 장비 유형 용어집에 정의된 매체 유형 코드 중 하나이며 volumes는 하나 이상의 VSN(볼륨 일련 번호)과 일치하는 정규 표현식입니다. endvsnpools 키워드를 사용하여 지시어 목록을 닫습니다.

    매체 풀은 선택적이며 일반적으로 아카이빙 프로세스에 사용할 수 있는 매체를 사용자가 제한하지는 않습니다. 따라서 예제에서는 매체 풀을 정의하지 않습니다. 자세한 내용은 archiver.cmd 매뉴얼 페이지의 VSN POOL DEFINITIONS SECTION을 참조하십시오.

  15. 다음으로 아카이브 세트 복사본이 사용해야 하는 아카이브 매체를 식별하는 것을 시작합니다. 새 라인에 vsns 키워드를 입력합니다.

    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve set
    allfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    
  16. archive-set-name.copy-number media-type volumes 형태의 라인을 입력하여 각 아카이브 세트 복사본에 대한 매체를 지정합니다. 여기서 archive-set-name.copy-number는 지시어를 적용할 아카이브 세트 및 복사본을 지정하고 media-type부록 A 장비 유형 용어집에 정의된 매체 유형 코드 중 하나이며 volumes는 하나 이상의 VSN(볼륨 일련 번호)과 일치하는 정규 표현식입니다.

    전체 중복성을 위해 항상 각 아카이브 세트 복사본을 매체의 다른 범위에 지정하여 두 복사본이 동일한 물리적 볼륨에 상주하지 않게 합니다. 가능한 경우 항상 하나 이상의 복사본을 이동식 매체(예: 테이프)에 지정합니다.

    예제에서는 모든 아카이브 세트의 첫번째 복사본을 DISKVOL1 - DISKVOL15 범위의 볼륨 일련 번호를 가진 아카이브 디스크 매체(유형 dk)로 보냅니다. 또한 모든 아카이브 세트의 두번째 복사본을 VOL000 - VOL199 범위의 볼륨 일련 번호를 가진 테이프 매체(유형 tp)로 보내고 세번째 복사본을 VOL200 - VOL399 범위의 볼륨 일련 번호를 가진 테이프 매체(유형 tp)로 보냅니다.

    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve set
    allfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk DISKVOL[1-15] 
    allfiles.2 tp VOL[0-1][0-9][0-9]
    allfiles.2 tp VOL[2-3][0-9][0-9]
    
  17. 모든 아카이브 세트 복사본에 대한 매체를 지정한 경우 endvsns 키워드를 새 라인에 입력하여 vsns 지시어 목록을 닫습니다. 파일을 저장하고 편집기를 닫습니다.

    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 10m -startsize 500M -drives 10 -archmax 1G
    allfiles.2 -startage 24h -startsize 20G -drives 2 -archmax 24G -reserve set
    allfiles.3 -startage 48h -startsize 20G -drives 2 -archmax 24G -reserve set
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk DISKVOL[1-15] 
    allfiles.2 tp VOL[0-1][0-9][0-9]
    allfiles.2 tp VOL[2-3][0-9][0-9]
    endvsns
    :wq
    root@solaris:~# 
    
  18. archiver.cmd 파일에 오류가 있는지 확인합니다. archiver -lv 명령을 사용합니다.

    archiver -lv 명령은 archiver.cmd 파일을 화면에 출력하고 발견된 오류가 없으면 구성 보고서를 생성합니다. 그렇지 않고 오류가 발견되면 작업을 중지합니다. 예제에서는 오류가 있습니다.

    root@solaris:~# archiver -lv
    Reading '/etc/opt/SUNWsamfs/archiver.cmd'.
    ...
    13: #   File System Directives
    14: #
    15: fs = samms
    16: logfile = /var/adm/samms.archiver.log
    17: all .
    18:     1 -norelease 15m
    19:     2 -norelease 15m
    20: fs=DISKVOL1                           # QFS File System (Archival Media)
    21: 
    ...
    42: endvsns
    DISKVOL1.1 has no volumes defined
    1 archive set has no volumes defined
    root@solaris:~# 
    
  19. archiver.cmd 파일에서 오류가 발견된 경우 오류를 수정하고 파일을 다시 검사합니다.

    위 예제에서는 디스크 아카이브로 구성한 QFS 파일 시스템인 DISKVOL1 파일 시스템의 지시어에 대한 no_archive 지시어를 잊어버리고 입력하지 않았습니다. 생략된 부분을 수정할 경우 archiver -lv는 오류 없이 실행됩니다.

    root@solaris:~# archiver -lv
    Reading '/etc/opt/SUNWsamfs/archiver.cmd'.
    ...
    20: fs=DISKVOL1                           # QFS File System (Archival Media)
    21: no_archive .
    ...
    42: endvsns
    Notify file: /etc/opt/SUNWsamfs/scripts/archiver.sh
    ...
    allfiles.1
        startage: 10m startsize: 500M drives 10: archmax: 1G
     Volumes:  
      DISKVOL1 (/diskvols/DISKVOL15)
      ...
      DISKVOL15 (/diskvols/DISKVOL3)
     Total space available:   150T
    allfiles.2
        startage: 24h startsize: 20G drives: 2 archmax: 24G reserve: set
     Volumes:
       VOL000
    ...
       VOL199
     Total space available:  300T
    allfiles.3
        startage: 48h startsize: 20G drives: 2 archmax: 24G reserve: set
     Volumes:
       VOL200
    ...
       VOL399
     Total space available:  300T
    root@solaris:~# 
    
  20. Oracle HSM 소프트웨어에 archiver.cmd 파일을 다시 읽고 그에 따라 재구성하도록 지시합니다. samd config 명령을 사용합니다.

    root@solaris:~# /opt/SUNWsamfs/sbin/samd config
    Configuring SAM-FS
    root@solaris:~# 
    
  21. 텍스트 편집기에서 /etc/opt/SUNWsamfs/releaser.cmd 파일을 열고 list_size = 300000 라인을 추가한 다음 파일을 저장하고 편집기를 닫습니다.

    list_size 지시어는 파일 시스템에서 한 번에 릴리스할 수 있는 파일 수를 [10-2147483648] 범위의 정수로 설정합니다. inode 100만개를 위한 충분한 공간이 .inodes 파일에 있는 경우(inode 노드당 512- 바이트 허용) 기본값은 100000입니다. 그렇지 않은 경우 기본값은 30000입니다. 이 숫자를 300000으로 늘리면 많은 수의 작은 파일을 포함하는 일반적인 파일 시스템에 더 적합합니다.

    이 예에서는 vi 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/releaser.cmd
    #       releaser.cmd
    logfile = /var/opt/SUNWsamfs/releaser.log
    list_size = 300000
    :wq
    root@solaris:~# 
    
  22. 텍스트 편집기에서 /etc/opt/SUNWsamfs/stager.cmd 파일을 열고 maxactive = stage-requests 라인을 추가합니다. 여기서 stage-requests는 8GB 이상의 RAM이 있는 호스트의 경우 500000이고 8GB 미만의 RAM이 있는 호스트의 경우 100000입니다. 파일을 저장하고 편집기를 닫습니다.

    maxactive 지시어는 한 번에 활성 상태일 수 있는 최대 스테이지 요청 수를 [1-500000] 범위의 정수로 설정합니다. 기본값은 호스트 메모리의 GB당 스테이지 요청 5000개를 허용하는 것입니다.

    이 예에서는 vi 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/stager.cmd
    #       stager.cmd
    logfile = /var/opt/SUNWsamfs/stager.log
    maxactive = 300000
    :wq
    root@solaris:~# 
    
  23. 재활용은 기본적으로 사용으로 설정되지 않습니다. 따라서 이동식 매체 볼륨의 재활용이 필요한 경우 재활용 프로세스 구성으로 이동합니다.

  24. 아카이빙 Oracle HSM 파일 시스템에 대한 mcf 파일에서 아카이빙 장비 섹션에 네트워크 연결 테이프 라이브러리가 포함된 경우 네트워크 연결 테이프 라이브러리에 저장된 아카이브 매체 카탈로그화로 이동합니다.

  25. 아카이브 테이프 볼륨의 데이터 무결성을 확인할 수 있어야 하는 경우 아카이브 매체 검증 구성으로 이동합니다.

  26. 그렇지 않은 경우 파일 시스템 보호 구성 작업을 수행합니다.

재활용 프로세스 구성

사용자가 지정한 수보다 적은 유효 아카이브 세트가 이동식 매체 볼륨에 포함된 경우 리사이클러는 원래 볼륨을 장기적인 저장을 위해 내보내거나 재사용을 위해 레이블을 다시 지정할 수 있도록 다른 볼륨에서 유효 데이터를 통합합니다. 다음 두 가지 방법 중 하나로 재활용을 구성할 수 있습니다.

  • 아카이브 세트별 재활용 구성

    아카이브 세트별로 매체를 재활용하는 경우 archiver.cmd 파일에 재활용 지시어를 추가합니다. 각 아카이브 세트 복사본의 매체가 재활용되는 방법을 정확하게 지정할 수 있습니다. 아카이브 세트의 멤버만 고려되므로 재활용 조건은 더 좁은 범위로 적용됩니다.

    가능한 경우 라이브러리가 아니라 아카이브 세트별로 매체를 재활용합니다. Oracle HSM 아카이빙 파일 시스템에서 재활용은 논리적으로 라이브러리 관리가 아니라 파일 시스템 작업의 일부입니다. 재활용은 아카이빙, 릴리스 및 스테이징을 보완합니다. 따라서 아카이빙 프로세스의 일부로 구성하는 것이 합리적입니다. 디스크 아카이브 볼륨 및/또는 SAM-Remote가 구성에 포함된 경우 아카이브 세트별로 재활용을 구성해야 합니다.

  • 라이브러리별 재활용 구성

    라이브러리별로 매체를 재활용하는 경우 recycler.cmd 파일에 재활용 지시어를 추가합니다. 따라서 지정한 라이브러리에 포함된 모든 매체에 공통된 재활용 매개변수를 설정할 수 있습니다. 재활용 지시어는 라이브러리의 모든 볼륨에 적용되므로 본질적으로 아카이브 세트 특정 지시어보다 덜 세부적입니다. 지정된 VSN(볼륨 일련 번호)을 검사에서 명시적으로 제외할 수 있습니다. 그렇지 않을 경우 재활용 프로세스는 단순히 현재 유효한 아카이브 파일로 인식되지 않는 항목을 포함하는 볼륨을 찾습니다.

    결과적으로 라이브러리별 재활용은 재활용 중인 파일 시스템의 일부가 아닌 파일을 삭제할 수 있습니다. 재활용 지시어가 이러한 파일을 명시적으로 제외하지 않을 경우 아카이브 로그 및 라이브러리 카탈로그나 다른 파일 시스템의 아카이브 매체에 대한 백업 복사본과 같은 유용한 데이터가 위험해질 수 있습니다. 이러한 이유로 SAM-Remote를 사용하는 중이면 라이브러리별로 재활용할 수 없습니다. SAM-Remote 서버에 의해 제어되는 라이브러리의 볼륨에는 서버가 아니라 클라이언트가 소유하는 외래 아카이브 파일이 포함되어 있습니다.

아카이브 세트별 재활용 구성

  1. Oracle HSM 파일 시스템 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. /etc/opt/SUNWsamfs/archiver.cmd 파일을 텍스트 편집기에서 열고 아래로 스크롤하여 복사본 params 절을 찾습니다.

    예제에서는 vi 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 6h  -startsize 6G  -startcount 500000
    allfiles.2 -startage 24h -startsize 20G -startcount 500000 -drives 5
    
  3. archiver.cmd 파일의 params 섹션에 아카이브 세트별 리사이클러 지시어를 archive-set directive-list 형태로 입력합니다. 여기서 archive-set는 아카이브 세트 중 하나이고 directive-list는 지시어 이름/값 쌍의 공백으로 구분된 목록입니다(재활용 지시어 목록은 archiver.cmd 매뉴얼 페이지 참조). 그런 다음 파일을 저장하고 편집기를 닫습니다.

    예제에서는 아카이브 세트 allfiles.1allfiles.2에 대한 재활용 지시어를 추가합니다. -recycle_mingain 30-recycle_mingain 90 지시어는 각각 볼륨 용량의 최소한 30% 및 90%를 복구할 수 없을 경우 볼륨을 재활용하지 않습니다. -recycle_hwm 60 지시어는 이동식 매체 용량의 60%가 사용된 경우 재활용을 시작합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameters Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 6h  -startsize 6G -startcount 500000
    allfiles.1 -recycle_mingain 30 -recycle_hwm 60
    allfiles.2 -startage 6h -startsize 6G -startcount 500000 
    allfiles.2 -recycle_mingain 90 -recycle_hwm 60
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk DISKVOL1
    allfiles.2 tp VOL0[0-1][0-9] 
    endvsns
    :wq
    [root@solaris:~# 
    
  4. archiver.cmd 파일에 오류가 있는지 확인합니다. archiver -lv 명령을 사용합니다.

    archiver -lv 명령은 archiver.cmd를 읽고 오류가 발견되지 않은 경우 구성 보고서를 생성합니다. 그렇지 않고 오류가 발견되면 작업을 중지합니다. 예제에서는 파일에 오류가 없습니다.

    root@solaris:~# archiver -lv
    Reading '/etc/opt/SUNWsamfs/archiver.cmd'.
    ...
       VOL399
     Total space available:  300T
    root@solaris:~# 
    
  5. archiver.cmd 파일에서 오류가 발견된 경우 오류를 수정하고 파일을 다시 검사합니다.

  6. 텍스트 편집기에서 recycler.cmd 파일을 만듭니다. 리사이클러 로그의 경로와 파일 이름을 지정합니다. 그런 다음 파일을 저장하고 편집기를 닫습니다.

    /var/adm/과 같은 Oracle HSM 디렉토리가 아닌 디렉토리에 로그를 기록하도록 Oracle HSM를 구성합니다. 예제에서는 vi 편집기를 사용하고 /var/adm/recycler.log를 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    logfile = /var/adm/recycler.log
    :wq
    root@solaris:~# 
    
  7. 텍스트 편집기에서 /etc/opt/SUNWsamfs/scripts/recycler.sh 스크립트를 열고 재활용된 이동식 매체 볼륨을 처리하기 위한 셸 명령을 입력합니다.

    재활용 프로세스는 유효한 아카이브 복사본이 소모된 이동식 매체 볼륨을 식별한 경우 재활용된 매체의 처리를 수행하도록 설계된 C-셸 스크립트인 recycler.sh 파일을 호출합니다.

    볼륨을 재활용할 준비가 되었다는 것을 관리자에게 알리는 것부터 재사용을 위해 볼륨의 레이블을 다시 지정하거나 장기적인 내역 보존을 위해 라이브러리에서 볼륨을 내보내는 것에 이르기까지 필요한 작업을 수행하도록 파일을 편집합니다.

    기본적으로 이 스크립트는 스크립트를 설정하도록 root 사용자에게 미리 알립니다.

  8. 아카이빙 Oracle HSM 파일 시스템에 대한 mcf 파일에서 아카이빙 장비 섹션에 네트워크 연결 테이프 라이브러리가 포함된 경우 네트워크 연결 테이프 라이브러리에 저장된 아카이브 매체 카탈로그화로 이동합니다.

  9. 그렇지 않은 경우 파일 시스템 보호 구성으로 이동합니다.

라이브러리별 재활용 구성

  1. Oracle HSM 파일 시스템 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 텍스트 편집기에서 /etc/opt/SUNWsamfs/recycler.cmd 파일을 만듭니다.

    예제에서는 vi 편집기를 사용합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    
  3. logfile 지시어를 사용하여 리사이클러 로그의 경로와 파일 이름을 지정합니다.

    /var/adm/과 같은 Oracle HSM 디렉토리가 아닌 디렉토리에 로그를 기록하도록 Oracle HSM를 구성합니다. 예제에서는 /var/adm/recycler.log를 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    
  4. 재활용하지 않아야 하는 볼륨이 아카이브 매체 라이브러리에 있는 경우 no_recycle media-type volumes 지시어를 입력합니다. 여기서 media-type부록 A 장비 유형 용어집에 정의된 매체 유형 코드 중 하나이고 volumes는 하나 이상의 VSN(볼륨 일련 번호)과 일치하는 정규 표현식입니다.

    예제에서는 [VOL020-VOL999] 범위의 볼륨에 대한 재활용을 사용 안함으로 설정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    no_recycle tp VOL[0-9][2-9][0-9]
    
  5. 새 라인에 library parameters 지시어를 입력합니다. 여기서 library/etc/opt/SUNWsamfs/mcf 파일이 이동식 매체 라이브러리에 지정한 패밀리 세트 이름이고 parameters는 다음 목록에 제공된 매개변수/값 쌍의 공백으로 구분된 목록입니다.

    • -dataquantity size는 한 번에 다시 아카이브하도록 예약할 수 있는 최대 데이터 양을 size로 설정합니다. 여기서 size는 바이트 수입니다. 기본값은 1GB입니다.

    • -hwm percent는 사용될 경우 재활용을 트리거하는 총 매체 용량의 백분율에 해당하는 라이브러리의 high-water mark를 설정합니다. 고수위는 [0-100] 범위의 숫자인 percent로 지정됩니다. 기본값은 95입니다.

    • -ignorerecycler.cmd 파일을 손상 없이 테스트할 수 있도록 이 라이브러리의 재활용을 방지합니다.

    • -mail address는 재활용 메시지를 address로 보냅니다. 여기서 address는 유효한 전자 메일 주소입니다. 기본적으로 메시지는 전송되지 않습니다.

    • -mingain percent는 총 용량의 백분율로 표시된 최소 크기만큼 사용 가능한 여유 공간을 늘릴 수 있는 볼륨만 재활용하도록 제한합니다. 이 최소 증가는 [0-100] 범위의 숫자인 percent로 지정됩니다. 총 용량이 200GB 미만인 볼륨의 경우 기본값은 60이고 총 용량이 200GB 이상인 볼륨의 경우 기본값은 90입니다.

    • -vsncount count는 한 번에 다시 아카이브하도록 예약할 수 있는 최대 볼륨 수를 count로 설정합니다. 기본값은 1입니다.

    예제에서는 library1 라이브러리에 대한 고수위를 95%로 설정하고 카트리지당 60%의 최소 용량 증가를 지정합니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    no_recycle tp VOL[0-9][2-9][0-9]
    library1 -hwm 95 -mingain 60
    
  6. Oracle HSM 구성의 일부인 다른 모든 라이브러리에 대해 앞의 단계를 반복합니다. 그런 다음 recycler.cmd 파일을 저장하고 편집기를 닫습니다.

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    no_recycle tp VOL[0-9][2-9][0-9]
    library1 -hwm 95 -mingain 60
    :wq
    root@solaris:~# 
    
  7. 아카이빙 Oracle HSM 파일 시스템에 대한 mcf 파일에서 아카이빙 장비 섹션에 네트워크 연결 테이프 라이브러리가 포함된 경우 네트워크 연결 테이프 라이브러리에 저장된 아카이브 매체 카탈로그화로 이동합니다.

  8. 그렇지 않은 경우 파일 시스템 보호 구성으로 이동합니다.

네트워크 연결 테이프 라이브러리에 저장된 아카이브 매체 카탈로그화

파일 시스템을 마운트한 후 Oracle HSM 소프트웨어는 mcf 파일에 구성된 각각의 자동화된 라이브러리에 대한 카탈로그를 만듭니다. 그러나 네트워크 연결 라이브러리가 있는 경우 해당 카탈로그를 채우기 위해 추가 단계를 수행해야 합니다.

다음과 같이 하십시오.

  1. 파일 시스템 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 아카이빙 파일 시스템에서 Oracle StorageTek ACSLS 연결 테이프 라이브러리를 사용할 경우 필요한 Oracle HSM 아카이브 매체를 라이브러리의 스크래치 풀에서 가져와서 카탈로그를 자동으로 생성합니다. samimport -c volumes -s pool 명령을 사용합니다. 여기서 volumes는 필요한 볼륨 수이고 pool은 라이브러리에 정의된 스크래치 매체 풀의 이름입니다. 여기서 중지합니다.

    예제에서는 scratch라는 풀에서 가져온 테이프 볼륨 20개를 요청합니다.

    root@solaris:~# samimport -c 20 -s scratch
    
  3. 단일 비공유 논리적 라이브러리로 구성된 IBM 3494 네트워크 연결 라이브러리가 아카이빙 파일 시스템에서 사용될 경우 필요한 테이프 볼륨을 라이브러리 메일 슬롯에 배치하여 라이브러리에서 자동으로 카탈로그화할 수 있게 합니다. 여기서 중지합니다.

    mcf 파일의 Additional Parameters 필드에 access=private가 지정된 경우 IBM 3494 라이브러리는 단일 논리적 라이브러리로 구성됩니다. access=shared인 경우 IBM 3494 라이브러리는 여러 논리적 라이브러리로 구분되며 사용자는 아래 지정된 방법을 사용해야 합니다.

  4. 그렇지 않고 공유 IBM 3494 네트워크 연결 라이브러리나 다른 네트워크 연결 라이브러리가 아카이빙 파일 시스템에서 사용될 경우 텍스트 편집기를 사용하여 카탈로그 입력 파일을 만듭니다.

    예제에서는 vi 편집기를 사용하여 input3494cat 파일을 만듭니다.

    root@solaris:~# vi input3494cat
    ~
    "~/input3494cat" [New File]
    
  5. 레코드 index를 입력하여 레코드를 시작합니다. 첫번째 레코드의 경우 항상 0을 입력하고 이후의 각 레코드에 대해 인덱스를 증분합니다. 필드의 끝을 나타내는 공백을 입력합니다.

    행은 레코드를 정의하고 공백은 build_cat 입력 파일의 필드를 구분합니다. 첫번째 필드 index의 값은 단순히 Oracle HSM 카탈로그 내의 레코드를 식별하는 0부터 시작하는 연속 정수입니다. 예제에서는 첫번째 레코드에 해당하므로 0을 입력합니다.

    0 
    ~
    "~/input3494cat" [New File]
    
  6. 레코드의 두번째 필드에는 테이프 볼륨의 VSN(볼륨 일련 번호)을 입력하고 VSN이 없는 경우 단일 ?(물음표)를 입력합니다. 그런 다음 필드의 끝을 나타내는 공백을 입력합니다.

    공백 문자를 포함하는 값(있는 경우)을 큰 따옴표로 묶습니다("VOL 01"). 이 예제에서는 첫번째 볼륨의 VSN에 공백이 포함되어 있지 않습니다.

    0 VOL001 
    ~
    "~/input3494" [New File]
    
  7. 세번째 필드에 볼륨의 바코드(볼륨 일련 번호와 다른 경우), 볼륨 일련 번호 또는 볼륨 일련 번호가 없는 경우 문자열 NO_BAR_CODE를 입력합니다. 그런 다음 필드의 끝을 나타내는 공백을 입력합니다.

    예제에서는 첫번째 볼륨의 바코드 값이 VSN과 같습니다.

    0 VOL001 VOL001 
    ~
    "~/input3494cat" [New File]
    
  8. 마지막으로 네번째 필드에 볼륨의 매체 유형을 입력합니다. 그런 다음 필드의 끝을 나타내는 공백을 입력합니다.

    매체 유형은 LTO 매체의 경우 li와 같은 두 글자의 코드입니다. 매체 장비 유형의 포괄적인 목록은 부록 A 장비 유형 용어집을 참조하십시오. 예제에서는 LTO 테이프 드라이브가 있는 IBM 3494 네트워크 연결 테이프 라이브러리를 사용하는 중이므로 li(종료 공백 포함)를 입력합니다.

    0 VOL001 VOL001 li 
    ~
    "~/input3494cat" [New File]
    
  9. 3-6단계를 반복하여 Oracle HSM와 함께 사용하려는 각 볼륨에 대한 추가 레코드를 만듭니다. 그런 다음 파일을 저장합니다.

    0 VOL001 VOL001 li 
    1 VOL002 VOL002 li 
    ...
    13 VOL014 VOL014 li 
    :wq
    root@solaris:~# 
    
  10. build_cat input-file catalog-file 명령을 사용하여 카탈로그를 만듭니다. 여기서 input-file은 입력 파일의 이름이고 catalog-file은 라이브러리 카탈로그에 대한 전체 경로입니다.

    mcf 파일의 Additional Parameters 필드에 카탈로그 이름을 지정한 경우 해당 이름을 사용합니다. 그렇지 않고 카탈로그를 만들지 않은 경우 Oracle HSM 소프트웨어는 파일 이름 family-set-name을 사용하여 /var/opt/SUNWsamfs/catalog/ 디렉토리에 기본 카탈로그를 만듭니다. 여기서 family-set-namemcf 파일에 있는 라이브러리에 사용되는 장비 이름입니다. 예제에서는 패밀리 세트 i3494를 사용합니다.

    root@solaris:~# build_cat input_vsns /var/opt/SUNWsamfs/catalog/i3494
    
  11. 아카이빙 파일 시스템이 공유될 경우 각각의 잠재적 메타데이터 서버에서 앞의 단계를 반복합니다.

    이제 아카이빙 파일 시스템이 완료되었으며 사용할 준비가 되었습니다.

  12. 이제 파일 시스템 보호 구성을 수행합니다.

파일 시스템 보호 구성

파일 시스템을 보호하려면 다음 두 가지를 수행해야 합니다.

  • 데이터를 보유한 파일을 보호해야 합니다.

  • 데이터를 사용, 구성, 찾기, 액세스, 관리할 수 있도록 파일 시스템 자체를 보호해야 합니다.

Oracle HSM 아카이빙 파일 시스템에서는 파일 데이터가 아카이버에 의해 자동으로 보호되므로 수정된 파일은 테이프와 같은 아카이브 스토리지 매체로 자동 복사됩니다. 그러나 파일만 백업한 후 디스크 장치나 RAID 그룹에 복구할 수 없는 장애가 발생한 경우 데이터가 있어도 쉽게 사용할 방법이 없습니다. 대체 파일 시스템을 만들고 각 파일을 식별하고 새 파일 시스템 내에서 적절한 위치를 결정하고 파일을 입수하고 사용자, 응용 프로그램 및 기타 파일들 간에 유실된 관계를 다시 만들어야 합니다. 이러한 종류의 복구는 아무리 잘해도 힘겹고 지루한 프로세스입니다.

따라서 빠르고 효율적인 복구를 위해 파일 시스템 메타데이터를 적극 보호하고 파일 및 아카이브 복사본을 사용할 수 있어야 합니다. 디렉토리 경로, inode, 액세스 제어, 심볼릭 링크, 포인터를 이동식 매체에 아카이브된 복사본으로 백업해야 합니다.

복구 지점을 예약하고 아카이브 로그를 저장하여 Oracle HSM 파일 시스템 메타데이터를 보호합니다. 복구 지점은 Oracle HSM 파일 시스템에 대한 메타데이터의 적시 백업 복사본을 저장하는 압축 파일입니다. 사용자 파일을 실수로 삭제하는 것부터 전체 파일 시스템의 재해적 손실에 이르는 데이터 손실이 발생할 경우, 파일 또는 파일 시스템이 그대로 남아 있는 마지막 복구 지점을 찾아서 즉시 파일 또는 파일 시스템의 마지막 알려진 정상 상태로 복구할 수 있습니다. 그런 다음 해당 시점에 기록된 메타데이터를 복원하고 메타데이터에 지정된 파일을 아카이브 매체에서 디스크 캐시로 스테이지하거나 사용자 및 응용 프로그램이 액세스할 때 필요에 따라 파일 시스템에서 파일을 스테이지하도록 할 수 있으며 후자의 방법이 선호됩니다.

적시 백업 복사본과 마찬가지로, 복구 지점은 장애가 발생할 당시 파일 시스템의 상태를 완전히 기록하지 못합니다. 불가피하게, 한 복구 지점을 완료한 후 다음 지점을 만들기 전에 적어도 몇몇 파일이 만들어지고 변경됩니다. 이 문제를 최소화하려면 파일 시스템이 사용 중이 아닐 때 자주 복구 지점 만들기를 예약해야 합니다. 그러나 사실상 파일 시스템은 항상 사용되므로 예약을 절충해야 합니다.

이러한 이유로 아카이버 로그 파일의 적시 복사본을 저장해야 합니다. 각 데이터 파일이 아카이브될 때 로그 파일은 아카이브 매체의 볼륨 일련 번호, 아카이브 세트 및 복사본 번호, 매체에서 아카이브(tar) 파일의 위치 및 tar 파일 내에서 데이터 파일의 경로 및 이름을 기록합니다. 이 정보와 함께 Solaris 또는 Oracle HSM tar 유틸리티를 사용하여 복구 지점에서 누락된 파일을 복구할 수 있습니다. 그러나 이 정보는 휘발성 정보입니다. 대부분의 시스템 로그와 마찬가지로, 아카이버 로그는 급속히 늘어나므로 자주 덮어써야 합니다. 복구 지점을 보완하는 정기적 복사본을 만들지 않으면 필요할 때 로그 정보를 얻지 못합니다.

따라서 파일 시스템 보호에는 약간의 계획이 필요합니다. 한편으로는 손실 또는 손상된 파일 및 파일 시스템을 최대한 복구할 수 있도록 복구 지점 및 로그 파일 복사본을 충분히 자주 만들고 이러한 복사본을 오랫동안 보유해야 할 수 있습니다. 다른 한편으로는 데이터 파일이 활발하게 변경되는 동안 복구 지점 및 로그 파일 복사본을 만들지 않고 이러한 항목에 소비되는 디스크 공간을 알아야 할 수 있습니다(복구 지점 파일 및 로그가 클 수 있음). 따라서 이 절에서는 많은 파일 시스템 구성에서 수정 없이 사용할 수 있는 광범위하게 적용 가능한 구성을 권장합니다. 변경이 필요한 경우 권장되는 구성을 통해 문제를 확인하고 적절하게 작업을 시작할 수 있을 것입니다. 이 절의 나머지 부분에서는 복구 지점을 만들고 관리하기 위한 지침을 제공합니다. 다음 세부 절이 포함됩니다.

아카이버 로그의 복구 지점 파일 및 복사본을 저장할 위치 만들기

구성한 각 아카이빙 파일 시스템에 대해 다음과 같이 하십시오.

  1. 파일 시스템 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 복구 지점 파일을 위한 스토리지 위치를 선택합니다. 파일 시스템 호스트에 마운트할 수 있는 독립된 파일 시스템을 선택합니다.

  3. 선택한 파일 시스템에 새 복구 지점 파일 및 특정 시점에 보유할 복구 지점 파일 수를 저장할 수 있는 충분한 공간이 있는지 확인합니다.

    복구 지점 파일이 클 수 있으며 복구 지점 파일을 만드는 빈도 및 보유할 기간에 따라 많은 수의 파일을 저장해야 합니다.

  4. 선택한 파일 시스템이 물리적 장치를 아카이빙 파일 시스템과 공유하지 않는지 확인합니다.

    보호해야 하는 파일 시스템에 복구 지점 파일을 저장하지 마십시오. 또한 아카이빙 파일 시스템도 호스팅하는 물리적 장치에 상주하는 분할 영역 또는 LUN과 같은 논리적 장치에 복구 지점 파일을 저장하지 마십시오.

  5. 선택한 파일 시스템에서 복구 지점 파일을 보유할 디렉토리를 만듭니다. mkdir mount-point/path 명령을 사용합니다. 여기서 mount-point는 선택한 독립된 파일 시스템의 마운트 지점이고 path는 선택한 디렉토리의 경로 및 이름입니다.

    여러 아카이빙 파일 시스템에 대한 복구 지점 파일을 단일 전체 수집 디렉토리에 저장하지 마십시오. 복구 지점 파일이 구성되어 필요 시 쉽게 찾을 수 있도록 각각에 대한 별개의 디렉토리를 만듭니다.

    예제에서는 아카이빙 파일 시스템 /samms에 대한 복구 지점을 구성합니다. 따라서 독립된 파일 시스템 /zfs1/zfs1/samms_recovery 디렉토리를 만들었습니다.

    root@solaris:~# mkdir /zfs1/samms_recovery
    
  6. 파일 시스템에서 물리적 장치를 아카이빙 파일 시스템과 공유하지 않는 경우 파일 시스템에 대한 아카이버 로그의 적시 복사본을 저장하기 위한 하위 디렉토리를 만듭니다.

    예제에서는 호스트의 루트 파일 시스템의 /var 디렉토리에 로그 복사본을 저장합니다. 여기서는 아카이빙 파일 시스템 /samms에 대한 파일 시스템 보호를 구성하는 중입니다. 따라서 /var/samms_archlogs 디렉토리를 만듭니다.

    root@solaris:~# mkdir /var/samms_archlogs
    
  7. 이제 복구 지점 만들기 및 아카이버 로그 저장 자동화를 수행합니다.

자동으로 복구 지점 만들기 및 아카이버 로그 저장

crontab 파일에 항목을 만들거나 Oracle HSM Manager 그래픽 사용자 인터페이스의 예약 기능을 사용하여 메타데이터 복구 지점 파일을 자동으로 만들 수 있지만 후자의 방법에서는 아카이버 로그 데이터가 자동으로 저장되지 않습니다. 따라서 이 절에서는 crontab 접근 방법에 초점을 맞춥니다. 그래픽 사용자 인터페이스를 사용하여 복구 지점을 예약하려는 경우 Manager 온라인 도움말을 참조하십시오.

아래 절차에서는 매일 실행되는 crontab 항목 2개를 만드는데 하나는 오래된 복구 지점 파일을 삭제한 다음 새 복구 지점을 만들고 다른 하나는 아카이버 로그를 저장합니다. 구성한 각 아카이빙 파일 시스템에 대해 다음과 같이 하십시오.

  1. 파일 시스템 호스트에 root로 로그인합니다.

    root@solaris:~# 
    
  2. 편집을 위해 root 사용자의 crontab 파일을 엽니다. crontab -e 명령을 사용합니다.

    crontab 명령은 root 사용자의 crontab 파일의 편집 가능 복사본을 EDITOR 환경 변수에 지정된 텍스트 편집기에서 엽니다(자세한 내용은 Solaris crontab 매뉴얼 페이지 참조). 이 예에서는 vi 편집기를 사용합니다.

    root@solaris:~# crontab -e
    ...
    # The root crontab should be used to perform accounting data collection.
    10 3 * * * /usr/sbin/logadm
    15 3 * * 0 [ -x /usr/lib/fs/nfs/nfsfind ] && /usr/lib/fs/nfs/nfsfind
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    
  3. 먼저 오래된 복구 지점 파일을 삭제하고 새 복구 지점을 만드는 항목을 만듭니다. 새 라인에서 작업이 완료되는 시간을 지정합니다. minutes hour * * *을 입력합니다. 설명:

    • minutes는 작업이 시작되는 분을 지정하는 [0-59] 범위의 정수입니다.

    • hour는 작업이 시작되는 시간을 지정하는 [0-23] 범위의 정수입니다.

    • *(별표)는 사용되지 않는 값을 지정합니다.

      매일 실행되는 작업의 경우 월의 일 [1-31], 월 [1-12] 및 요일 [0-6] 값이 사용되지 않습니다.

    • 시간 지정에서 필드는 공백으로 구분됩니다.

    • minutes hour는 파일을 만들거나 수정하는 중이 아닌 시간을 지정합니다.

      파일 시스템 작업이 최소한으로 수행될 때 복구 지점 파일을 만들면 아카이브 상태가 가능한 정확하고 완벽하게 파일에 반영됩니다. 이상적인 경우라면 모든 새 파일과 변경된 파일이 지정한 시간 이전에 아카이브되어 있습니다.

    예제에서는 매일 오전 2시 10분에 시작하도록 작업을 예약합니다.

    ...
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * *  
    
  4. 계속해서 동일한 라인에서 이전 복구 지점 파일을 지우는 셸 명령을 입력합니다. ( find directory -type f -mtime +retention -print | xargs -l1 rm -f; 텍스트를 입력합니다. 여기서 각 항목은 다음과 같습니다.

    • ((여는 괄호)는 crontab 항목이 실행할 명령 시퀀스의 시작을 표시합니다.

    • directory는 복구 지점 파일이 저장되고 따라서 Solaris find 명령이 검색을 시작할 지점에 해당하는 디렉토리의 경로 및 디렉토리 이름입니다.

    • -type f는 블록 특수 파일, 문자 특수 파일, 디렉토리, 파이프 등이 아니라 일반 파일을 지정하는 find 명령 옵션입니다.

    • -mtime +retention은 복구 지점 파일이 보존되는 시간을 나타내는 정수인 retention을 초과하여 수정되지 않은 파일을 지정하는 find 명령 옵션입니다.

    • -print는 발견된 모든 파일을 표준 출력으로 나열하는 find 명령 옵션입니다.

    • |xargs -l1 rm -f-print의 출력을 Solaris 명령 xargs -l1에 파이프하고 이 명령은 발견된 각 파일을 삭제하는 Solaris 명령 rm -f에 한 번에 하나씩 라인을 인수로 보냅니다.

    • ;(세미콜론)은 명령줄의 끝을 표시합니다.

    예제에서 crontab 항목은 /zfs1/samms_recovery 디렉토리에서 72시간(3일) 넘게 수정되지 않은 파일을 찾아 발견된 파일을 삭제합니다. crontab 항목은 여전히 한 라인이며 줄바꿈이 백슬래시로 이스케이프됩니다.

    # The root crontab should be used to perform accounting data collection.
    10 3 * * * /usr/sbin/logadm
    15 3 * * 0 [ -x /usr/lib/fs/nfs/nfsfind ] && /usr/lib/fs/nfs/nfsfind
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /zfs1/samms_recovery -type f -mtime +72 -print | \ 
    xargs -l1 rm -f; 
    
  5. 계속해서 동일한 라인에서 복구 지점이 만들어질 디렉토리로 변경하는 셸 명령을 입력합니다. cd mount-point; 텍스트를 입력합니다. 여기서 mount-point는 아카이빙 파일 시스템의 루트 디렉토리이고 세미콜론(;)은 명령줄의 끝을 표시합니다.

    복구 지점 파일을 만드는 samfsdump 명령은 현재 디렉토리 및 모든 하위 디렉토리의 모든 파일에 대한 메타데이터를 백업합니다. 예제에서는 보호 중인 파일 시스템의 마운트 지점인 /samms 디렉토리로 변경합니다.

    # The root crontab should be used to perform accounting data collection.
    10 3 * * * /usr/sbin/logadm
    15 3 * * 0 [ -x /usr/lib/fs/nfs/nfsfind ] && /usr/lib/fs/nfs/nfsfind
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /zfs1/samms_recovery -type f -mtime +72 -print | \ 
    xargs -l1 rm -f; cd /samms;
    
  6. 계속해서 동일한 라인에서 매일 새 복구 지점을 만드는 셸 명령을 입력합니다. /opt/SUNWsamfs/sbin/samfsdump -f directory/'date +\%y\%m\%d') 텍스트를 입력합니다. 여기서 각 항목은 다음과 같습니다.

    • /opt/SUNWsamfs/sbin/samfsdump는 복구 지점을 만드는 명령입니다(자세한 내용은 매뉴얼 페이지 참조).

    • -f는 복구 지점 파일이 저장되는 위치를 지정하는 samfsdump 명령 옵션입니다.

    • directory는 이 파일 시스템의 복구 지점을 보관하기 위해 만든 디렉토리입니다.

    • 'date +\%y\%m\%d'는 Solaris date 명령 및 복구 지점 파일의 이름 YYMMDD를 만드는 형식 지정 템플리트입니다. 여기서 YYMMDD는 현재 연도의 마지막 2자리 숫자, 현재 월의 2자리 숫자, 월의 일에 해당하는 2자리 숫자입니다(예를 들어, 2015년 1월 22일의 경우 150122).

    • ; (세미콜론)은 명령줄의 끝을 표시합니다.

    • )(닫는 괄호)는 crontab 항목이 실행할 명령 시퀀스의 끝을 표시합니다.

    예제에서는 위에서 만든 복구 지점 디렉토리 /zfs1/samms_recovery를 지정합니다. crontab 항목은 여전히 한 라인이며 줄바꿈이 백슬래시로 이스케이프됩니다.

    # The root crontab should be used to perform accounting data collection.
    10 3 * * * /usr/sbin/logadm
    15 3 * * 0 [ -x /usr/lib/fs/nfs/nfsfind ] && /usr/lib/fs/nfs/nfsfind
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /zfs1/samms_recovery -type f -mtime +72 -print | \ 
    xargs -l1 rm -f; cd /samms ; /opt/SUNWsamfs/sbin/samfsdump \ 
    -f /zfs1/samms_recovery/'date +\%y\%m\%d')
    
  7. 이제 아카이버 로그를 저장하는 항목을 만듭니다. 새 라인에 minutes hour * * *를 입력하여 작업을 수행할 시간을 지정합니다. 여기서 각 항목은 다음과 같습니다.

    • minutes는 작업이 시작되는 분을 지정하는 [0-59] 범위의 정수입니다.

    • hour는 작업이 시작되는 시간을 지정하는 [0-23] 범위의 정수입니다.

    • *(별표)는 사용되지 않는 값을 지정합니다.

      매일 실행되는 작업의 경우 월의 일 [1-31], 월 [1-12] 및 요일 [0-6] 값이 사용되지 않습니다.

    • 시간 지정에서 필드는 공백으로 구분됩니다.

    • minutes hour는 파일을 만들거나 수정하는 중이 아닌 시간을 지정합니다.

    예제에서는 매주 일요일 오전 3시 15분에 시작하도록 작업을 예약합니다.

    ...
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /zfs1/samms_recovery -type f -mtime +72 -print | \ 
    xargs -l1 rm -f; cd /samms ; /opt/SUNWsamfs/sbin/samfsdump \ 
    -f /zfs1/samms_recovery/'date +\%y\%m\%d')
    15 3 * * 0 
    
  8. 계속해서 동일한 라인에서 현재 아카이버 로그를 백업 위치로 이동하고 고유한 이름을 지정하는 셸 명령을 입력합니다. ( mv /var/adm/samms.archive.log /var/samms_archlogs/"date +%y%m%d"; 텍스트를 입력합니다.

    이 단계에서는 활성 로그 파일에 남겨 둘 경우 덮어쓰여지는 로그 항목을 저장합니다. 예제에서는 samms 파일 시스템에 대한 아카이버 로그를 선택한 위치 /var/samms_archlogs/로 이동하고 이름을 YYMMDD로 지정합니다. 여기서 YYMMDD는 현재 연도의 마지막 2자리 숫자, 현재 월의 2자리 숫자, 월의 일에 해당하는 2자리 숫자입니다(예를 들어, 2015년 1월 22일의 경우 150122).

    ...
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /samms_recovery/dumps -type f -mtime +72 -print | xargs -l1 rm -f; \ cd /samms ; /opt/SUNWsamfs/sbin/samfsdump -f /zfs1/samms_recovery/'date +\%y\%m\%d') 
    15 3 * * 0 ( mv /var/adm/samms.archiver.log /var/samms_archlogs/"date +%y%m%d";
    
  9. 계속해서 동일한 라인에서 아카이버 로그 파일을 다시 초기화하는 셸 명령을 입력합니다. touch /var/adm/samms.archive.log ) 텍스트를 입력합니다.

    예제에서 crontab 항목은 여전히 한 라인이며 줄바꿈이 백슬래시로 이스케이프됩니다.

    ...
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /samms_recovery/dumps -type f -mtime +72 -print | xargs -l1 rm -f; \ cd /samms ; /opt/SUNWsamfs/sbin/samfsdump -f /zfs1/samms_recovery/'date +\%y\%m\%d') 
    15 3 * * 0 ( mv /var/adm/samms.archive.log /var/samms_archlogs/"date +%y%m%d";\ 
    touch /var/adm/samms.archiver.log ) 
    
  10. 파일을 저장하고 편집기를 닫습니다.

    # The root crontab should be used to perform accounting data collection.
    10 3 * * * /usr/sbin/logadm
    15 3 * * 0 [ -x /usr/lib/fs/nfs/nfsfind ] && /usr/lib/fs/nfs/nfsfind
    30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
    30 0,9,12,18,21 * * * /usr/lib/update-manager/update-refresh.sh
    10 2 * * * ( find /samms_recovery/dumps -type f -mtime +72 -print | xargs -l1 rm -f; \ cd /samms ; /opt/SUNWsamfs/sbin/samfsdump -f /zfs1/samms_recovery/'date +\%y\%m\%d') 
    15 3 * * 0 ( mv /var/adm/samms.archive.log /var/samms_archlogs/"date +%y%m%d";\ touch /var/adm/samms.archive.log ) 
    :wq
    root@solaris:~# 
    
  11. 파일 시스템에서 WORM(Write Once Read Many) 기능을 사용으로 설정해야 할 경우 WORM(Write Once Read Many) 파일 지원을 사용으로 설정을 참조하십시오.

  12. LTFS를 사용하는 시스템과 상호 작용해야 하거나 원격 사이트 간에 많은 양의 데이터를 전송해야 할 경우 LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정을 참조하십시오.

  13. 아카이브 테이프 볼륨의 데이터 무결성을 확인할 수 있어야 하는 경우 아카이브 매체 검증 구성으로 이동합니다.

  14. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

  15. 그렇지 않은 경우 알림 및 로깅 구성으로 이동합니다.

아카이브 매체 검증 구성

매체 검증은 SCSI verify 명령을 사용하여 테이프 매체의 데이터 무결성을 평가하는 기술입니다. 호스트의 SCSI 드라이버는 드라이브에 기록하는 데이터의 논리적 블록에 대한 CRC 체크섬을 계산하고 verify 명령을 보냅니다. 드라이브는 데이터 블록을 읽고 고유한 체크섬을 계산한 다음 결과를 드라이브에 의해 제공된 값과 비교합니다. 불일치가 있는 경우 오류를 반환합니다. 드라이브는 체크섬이 완료되자마자 자신이 읽은 데이터를 삭제하므로 호스트에 추가 I/O 관련 오버헤드가 없습니다.

Oracle HSM는 다음과 같은 두 가지 방법으로 매체 검증을 지원합니다.

DIV(데이터 무결성 검증)를 지원하도록 Oracle HSM 구성

DIV(데이터 무결성 검증)는 Oracle HSM 소프트웨어와 함께 작동하여 저장된 데이터의 무결성을 보장하는 Oracle StorageTek 테이프 드라이브의 기능입니다. 이 기능이 사용으로 설정된 경우(div = on 또는 div = verify) 서버 호스트 및 드라이브 모두는 I/O 도중 체크섬을 계산 및 비교합니다. 쓰기 작업 도중 서버는 각 데이터 블록에 대해 4바이트 체크섬을 계산하고 체크섬을 데이터와 함께 드라이브에 전달합니다. 그런 다음 테이프 드라이브는 체크섬을 재계산하고 결과를 서버에 의해 제공된 값과 비교합니다. 값이 일치할 경우 드라이브는 데이터 블록 및 체크섬 둘 다를 테이프에 기록합니다. 읽기 작업 도중 드라이브 및 호스트 둘 다는 데이터 블록 및 연관된 해당 체크섬을 테이프에서 읽습니다. 각각은 데이터 블록에서 체크섬을 재계산하고 결과를 저장된 체크섬과 비교합니다. 특정 시점에 체크섬이 일치하지 않을 경우 드라이브는 오류가 발생했다는 것을 응용 프로그램 소프트웨어에 알립니다.

div = verify 옵션은 데이터를 기록할 때 추가적 보호 계층을 제공합니다. 쓰기 작업이 완료된 경우 호스트는 데이터를 재확인할 것을 테이프 드라이브에 요청합니다. 그런 다음 드라이브는 데이터를 다시 스캔하고 체크섬을 재계산한 다음 결과를 테이프에 저장된 체크섬과 비교합니다. 드라이브는 추가 I/O 없이(데이터가 삭제됨) 모든 작업을 내부적으로 수행하므로 호스트 시스템에 추가 오버헤드가 없습니다. 또한 Oracle HSM tpverify(테이프 확인) 명령을 사용하여 이 단계를 요구 시 수행할 수 있습니다.

데이터 무결성 검증을 구성하려면 다음과 같이 하십시오.

  1. Oracle HSM 서버에 root로 로그인합니다.

    예제에서는 메타데이터 서버의 이름이 samfs-mds로 지정됩니다.

    [samfs-mds]root@solaris:~#  
    
  2. 메타데이터 서버가 Oracle Solaris 11 이상을 실행 중인지 확인합니다.

    [samfs-mds]root@solaris:~# uname -r
    5.11
    [samfs-mds]root@solaris:~# 
    
  3. Oracle HSM mcf 파일에 정의된 아카이브 스토리지 장비에 호환되는 테이프 드라이브인 StorageTek T10000C(최소 펌웨어 레벨 1.53.315) 또는 T10000D가 포함되어 있는지 확인합니다.

  4. 모든 아카이빙 프로세스를 유휴 설정합니다(있는 경우). samcmd aridle 명령을 사용합니다.

    이 명령은 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다.

    [samfs-mds]root@solaris:~# samcmd aridle
    [samfs-mds]root@solaris:~# 
    
  5. 모든 스테이징 프로세스를 유휴 설정합니다(있는 경우). samcmd stidle 명령을 사용합니다.

    이 명령은 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다.

    [samfs-mds]root@solaris:~# samcmd stidle
    [samfs-mds]root@solaris:~# 
    
  6. 모든 활성 아카이빙 작업이 완료될 때까지 기다립니다. samcmd a 명령을 사용하여 아카이빙 프로세스의 상태를 확인합니다.

    아카이빙 프로세스가 Waiting for :arrun이면 아카이빙 프로세스가 유휴 상태임을 나타냅니다.

    [samfs-mds]root@solaris:~# samcmd a
    Archiver status samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samfs-mds
    sam-archiverd:  Waiting for :arrun
    sam-arfind: ...
    Waiting for :arrun
    
  7. 모든 활성 스테이징 작업이 완료될 때까지 기다립니다. samcmd u 명령을 사용하여 스테이징 프로세스의 상태를 확인합니다.

    스테이징 프로세스가 Waiting for :strun이면 스테이징 프로세스가 유휴 상태임을 나타냅니다.

    [samfs-mds]root@solaris:~# samcmd u
    Staging queue samcmd      6.0 14:20:34 Feb 22 2015
    samcmd on solaris.demo.lan
    Staging queue by media type: all
    sam-stagerd:  Waiting for :strun
    root@solaris:~# 
    
  8. 더 진행하기 전에 모든 이동식 매체 드라이브를 유휴 설정합니다. 각 드라이브에 대해 samcmd equipment-number idle 명령을 사용합니다. 여기서 equipment-number/etc/opt/SUNWsamfs/mcf 파일에서 드라이브에 지정된 장비 순서 번호입니다.

    이 명령은 드라이브를 off로 설정하기 전에 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다. 예제에서는 순서 번호 801, 802, 803, 804를 가진 4개 드라이브를 유휴 설정합니다.

    [samfs-mds]root@solaris:~# samcmd 801 idle
    [samfs-mds]root@solaris:~# samcmd 802 idle
    [samfs-mds]root@solaris:~# samcmd 803 idle
    [samfs-mds]root@solaris:~# samcmd 804 idle
    [samfs-mds]root@solaris:~# 
    
  9. 실행 중인 작업이 완료될 때까지 기다립니다.

    samcmd r 명령을 사용하여 드라이브의 상태를 확인할 수 있습니다. 모든 드라이브가 notrdyempty이면 진행할 준비가 된 것입니다.

    [samfs-mds]root@solaris:~# samcmd r
    Removable media samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samqfs1host
    ty   eq   status      act  use  state  vsn
    li  801   ---------p    0   0%  notrdy
              empty
    li  802   ---------p    0   0%  notrdy
              empty
    li  803   ---------p    0   0%  notrdy
              empty
    li  804   ---------p    0   0%  notrdy
              empty
    [samfs-mds]root@solaris:~# 
    
  10. 아카이버 및 스테이저 프로세스가 유휴 상태이고 테이프 드라이버가 모두 notrdy이면 라이브러리 제어 데몬을 중지합니다. samd stop 명령을 사용합니다.

    [samfs-mds]root@solaris:~# samd stop
    [samfs-mds]root@solaris:~# 
    
  11. 텍스트 편집기에서 /etc/opt/SUNWsamfs/defaults.conf 파일을 엽니다. 필요한 경우 #div = off 라인의 주석 처리를 해제하거나 없는 경우 이 라인을 추가합니다.

    기본적으로 div(데이터 무결성 검증)는 off(사용 안함)입니다.

    예제에서는 vi 편집기에서 파일을 열고 행 주석 처리를 해제합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf 
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character from the beginning of the line)
    # and change the value.
    ...
    div = off
    
  12. 데이터 무결성 검증 읽기, 쓰기 및 확인 작업을 사용으로 설정하려면 #div = off 라인을 div = on으로 변경하고 파일을 저장합니다.

    각 블록을 읽고 쓸 때 데이터가 확인되지만 Oracle HSM 아카이버 소프트웨어는 아카이브된 후의 완료된 파일 복사본을 확인하지 않습니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf 
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character from the beginning of the line)
    # and change the value.
    ...
    div = on
    :wq
    [samfs-mds]root@solaris:~# 
    
  13. 데이터 무결성 검증 기능의 쓰기 후 확인 옵션을 사용으로 설정하려면 #div = off 라인을 div = verify로 변경하고 파일을 저장합니다.

    각 블록을 읽거나 쓸 때 호스트와 드라이브는 데이터 무결성 검증을 수행합니다. 또한 완료된 아카이브 요청이 테이프에 기록될 때마다 드라이브는 새로 저장된 데이터 및 체크섬을 다시 읽고 재계산한 다음 저장된 결과와 계산된 결과를 비교합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf 
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character from the beginning of the line)
    # and change the value.
    ...
    div = verify
    :wq
    [samfs-mds]root@solaris:~# 
    
  14. Oracle HSM 소프트웨어에 defaults.conf 파일을 다시 읽고 그에 따라 재구성하도록 지시합니다. samd config 명령을 사용합니다.

    [samfs-mds]root@solaris:~# /opt/SUNWsamfs/sbin/samd config
    
  15. 이전 단계에서 Oracle HSM 작업을 중지한 경우 이제 samd start 명령을 사용하여 다시 시작합니다.

    [samfs-mds]root@solaris:~# samd start
    [samfs-mds]root@solaris:~# 
    

    이제 데이터 무결성 검증이 구성되었습니다.

  16. 데이터 무결성 검증을 자동화해야 할 경우 Oracle HSM 주기적 매체 확인 구성으로 이동합니다.

  17. 파일 시스템에서 WORM(Write Once Read Many) 기능을 사용으로 설정해야 할 경우 WORM(Write Once Read Many) 파일 지원을 사용으로 설정을 참조하십시오.

  18. LTFS를 사용하는 시스템과 상호 작용해야 하거나 원격 사이트 간에 많은 양의 데이터를 전송해야 할 경우 LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정을 참조하십시오.

  19. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

Oracle HSM 주기적 매체 확인 구성

Oracle HSM 아카이빙 파일 시스템을 위한 PMV(주기적 매체 확인)를 설정할 수 있습니다. 주기적 매체 확인은 파일 시스템에서 이동식 매체의 데이터 무결성을 자동으로 검사합니다. StorageTek T10000 매체는 StorageTek 데이터 무결성 검증을 사용하여 검사되고 다른 드라이브는 널리 지원되는 SCSI verify(6) 명령을 사용하여 검사됩니다.

주기적 매체 확인 기능은 tpverify 명령을 주기적으로 적용하여 감지된 모든 오류를 기록하고 관리자에게 알리며 지정된 복구 작업을 자동으로 수행하는 Oracle HSM 데몬인 verifyd를 추가합니다. 구성 파일 verifyd.cmd에서 정책 지시어를 설정하여 주기적 매체 확인을 구성합니다. 정책은 확인 스캔이 실행되는 시점, 수행되는 스캔의 유형, 사용할 수 있는 라이브러리 및 드라이브, 스캔해야 하는 테이프 볼륨, 오류가 감지된 경우 Oracle HSM에서 수행하는 작업 등을 지정할 수 있습니다. 예를 들어, Oracle HSM은 오류가 포함된 파일을 자동으로 다시 아카이브하고 오류가 포함된 테이프 볼륨을 재활용할 수 있습니다.

  1. Oracle HSM 서버에 root로 로그인합니다.

    예제에서는 메타데이터 서버의 이름이 samfs-mds로 지정됩니다.

    [samfs-mds]root@solaris:~#  
    
  2. 아직 수행하지 않은 경우 계속하기 전에 DIV(데이터 무결성 검증)를 지원하도록 Oracle HSM 구성을 수행합니다.

  3. 메타데이터 서버가 Oracle Solaris 11 이상을 실행 중인지 확인합니다.

    [samfs-mds]root@solaris:~# uname -r
    5.11
    [samfs-mds]root@solaris:~# 
    
  4. 텍스트 편집기에서 /etc/opt/SUNWsamfs/verifyd.cmd 파일을 엽니다.

    예제에서는 vi 편집기에서 파일을 엽니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    # For additional information about the format of the verifyd.cmd file,
    # type "man verifyd.cmd".
    # Enable Oracle HSM Periodic Media Validation (PMV)
    pmv = off
    
  5. 주기적 매체 확인을 사용으로 설정하려면 pmv = on 라인을 입력합니다.

    기본적으로 주기적 매체 확인은 off입니다. 예제에서는 on으로 설정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    # For additional information about the format of the verifyd.cmd file,
    # type "man verifyd.cmd".
    # Enable Oracle HSM Periodic Media Validation (PMV)
    pmv = on
    
  6. 실행 시간을 설정합니다. run_time = always 라인을 입력하여 확인을 연속적으로 실행하거나 run_time = HHMM hhmm DD dd를 입력합니다. 여기서 HHMMhhmm은 각각 시작 및 종료 시간이고 DD dd는 선택적 시작 및 종료 날짜입니다.

    HHhh00-24 범위의 시간이고 MMmm00-60 범위의 분 수이며 DDdd[0-6] 범위의 요일입니다(0은 일요일이고 6은 토요일). 기본값은 2200 0500 6 0입니다.

    그러나 확인 프로세스는 직접적으로 더 중요한 파일 시스템 작업과 경쟁하지 않습니다. 확인 프로세스는 아카이버 및 스테이저에 필요한 테이프 볼륨 및/또는 드라이브를 자동으로 양보합니다. 따라서 예제에서는 실행 시간을 always로 설정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    # For additional information about the format of the verifyd.cmd file,
    # type "man verifyd.cmd".
    # Enable Oracle HSM Periodic Media Validation (PMV)
    pmv = on
    # Run all of the time.  PMV will yield VSNs and drives when
    # resources are wanted by the SAM-QFS archiver and stager.
    run_time = always
    
  7. 확인 방법을 지정합니다. pmv_method = specified-method 라인을 입력합니다. 여기서 specified-method는 다음 중 하나입니다.

    • standard 방법은 특히 Oracle StorageTek T10000C 이상 버전의 테이프 드라이브에 사용됩니다. standard 방법은 속도에 최적화된 방식으로 매체의 모서리, 시작, 끝과 처음 1,000개 블록을 확인합니다.

    • complete 방법도 Oracle StorageTek T10000C 이상 버전의 테이프 드라이브에 사용됩니다. 이 방법은 매체의 모든 블록에 대한 매체 ECC(오류 수정 코드)를 확인합니다.

    • complete plus도 Oracle StorageTek T10000C 이상 버전의 테이프 드라이브에 사용됩니다. 이 방법은 매체의 각 블록에 대한 매체 ECC(오류 수정 코드) 및 데이터 무결성 검증 체크섬을 둘 다 확인합니다(DIV(데이터 무결성 검증)를 지원하도록 Oracle HSM 구성 참조).

    • legacy 방법은 다른 모든 테이프 드라이브에 사용할 수 있으며 매체가 카탈로그에서 불량으로 표시되거나 드라이브가 verifyd.cmd 파일에 지정된 방법을 지원하지 않을 경우 자동으로 사용됩니다. 이 방법은 6바이트 고정 블록 모드 SCSI 확인 명령을 실행하고 이전에 기록된 결함을 건너뜁니다. 새 영구 매체 오류가 발견될 경우 legacy 방법은 다음 파일로 건너뛰고 새로 검색된 오류를 매체 결함 데이터베이스에 기록합니다.

    • mir rebuild 방법은 MIR(매체 정보 영역)이 누락되거나 손상된 경우 Oracle StorageTek 테이프 카트리지의 MIR을 재작성합니다. 이 방법은 매체 카탈로그에서 불량으로 표시된 매체와 함께 작동하며 MIR 손상이 감지된 경우 자동으로 지정됩니다.

    예제에서는 LTO 드라이브를 사용하므로 legacy를 지정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    # resources are wanted by the SAM-QFS archiver and stager.
    run_time = always
    pmv_method = legacy
    
  8. 사용 가능한 모든 라이브러리와 드라이브를 확인에 사용하려면 pmv_scan = all 라인을 입력합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = all
    
  9. 지정된 라이브러리의 사용 가능한 모든 드라이브를 확인에 사용하려면 pmv_scan = library equipment-number 라인을 입력합니다. 여기서 equipment-number는 파일 시스템의 mcf 파일에 있는 라이브러리에 지정된 장비 번호입니다.

    예제에서는 800 라이브러리의 모든 드라이브가 확인 프로세스에 사용되도록 합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = library 800 
    
  10. 지정된 라이브러리에서 확인 프로세스에 사용될 수 있는 드라이브 수를 제한하려면 pmv_scan = library equipment-number max_drives number 라인을 입력합니다. 여기서 equipment-number는 파일 시스템의 mcf 파일에 있는 라이브러리에 지정된 장비 번호이고 number는 사용할 수 있는 최대 드라이브 수입니다.

    예제에서는 800 라이브러리에 있는 최대 2개의 드라이브가 확인 프로세스에 사용되도록 합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = library 800 max_drives 2 
    
  11. 지정된 라이브러리에서 확인 프로세스에 사용될 수 있는 드라이브를 지정하려면 pmv_scan = library equipment-number drive drive-numbers 라인을 입력합니다. 여기서 equipment-number는 파일 시스템의 mcf 파일에 있는 라이브러리에 지정된 장비 번호이고 drive-numbersmcf 파일에서 지정된 드라이브에 지정된 공백으로 구분된 장비 번호 목록입니다.

    예제에서는 900 라이브러리에 있는 903904 드라이브가 확인 프로세스에 사용되도록 합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = library 900 drive 903 904 
    
  12. 둘 이상의 라이브러리에서 확인 프로세스에 사용될 수 있는 드라이브를 지정하려면 pmv_scan = library-specification library-specification... 라인을 입력합니다. 여기서 equipment-number는 파일 시스템의 mcf 파일에 있는 라이브러리에 지정된 장비 번호이고 drive-numbersmcf 파일에 있는 라이브러리에 지정된 공백으로 구분된 장비 번호 목록입니다.

    예제에서는 800 라이브러리에 있는 최대 2개의 드라이브와 900 라이브러리에 있는 903904 드라이브가 확인 프로세스에 사용되도록 합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = library 800 max_drives 2 library 900 drive 903 904 
    
  13. 주기적 매체 확인을 사용 안함으로 설정하고 어떠한 장비도 사용하지 않게 하려면 pmv_scan = off 라인을 입력합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_method = legacy
    pmv_scan = off
    
  14. 주기적 매체 확인에서 지정된 수의 영구 오류가 감지되고 나서 매체가 재활용 대상이라는 플래그를 자동으로 지정하려면 action = recycle perms number-errors 라인을 입력합니다. 여기서 number-errors는 오류 수입니다.

    예제에서는 10개의 오류가 감지된 후 매체가 재활용 대상이라는 플래그를 지정하도록 Oracle HSM를 구성합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_scan = all
    action = recycle perms 10 
    
  15. 지정된 기간 동안 오류가 누적된 후 불량 블록을 포함하는 파일을 자동으로 다시 아카이브하려면 action = rearch age  time 라인을 입력합니다. 여기서 time은 임의로 조합한 SECONDSs, MINUTESm, HOURSh, DAYSd 및/또는 YEARSy의 공백으로 구분된 목록이고 SECONDS, MINUTES, HOURS, DAYSYEARS는 정수입니다.

    파일 시스템에서 아카이빙이 필요한 파일이 스캔되기 전에 가장 오래된 매체 결함이 지정된 기간을 경과했어야 합니다. 예제에서는 다시 아카이빙 수명을 1분으로 설정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_scan = all
    action = rearch age 1m  
    
  16. 주기적 매체 확인에서 영구 매체 오류를 감지한 경우 매체를 불량으로 표시하고 그렇지 않은 경우 아무 조치도 수행하지 않으려면 action = none 라인을 입력합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_scan = all
    action = none 
    
  17. 주기적으로 확인해야 하는 테이프 볼륨을 지정합니다. pmv_vsns = selection-criterion 라인을 입력합니다. 여기서 selection-criterionall 또는 하나 이상의 VSN(볼륨 일련 번호)을 지정하는 공백으로 구분된 정규 표현식 목록입니다.

    기본값은 all입니다. 예제에서는 정규 표현식 3개가 제공되는데 ˆVOL0[01][0-9]ˆVOL23[0-9]는 각각 VOL000 - VOL019VOL230 - VOL239 범위의 볼륨 일련 번호를 가진 두 세트의 볼륨을 지정하고 VOL400은 해당 특정 볼륨 일련 번호를 가진 볼륨을 지정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_scan = all
    action = none
    pmv_vsns = ˆVOL0[01][0-9] ˆVOL23[0-9] VOL400
    

    Oracle HSM은 감사해야 하는지 여부, 재활용이 예약되어 있는지 여부, 사용할 수 없는지 여부, 외래(비Oracle HSM) 볼륨인지 여부 또는 데이터가 포함되지 않았는지 여부를 볼륨에서 확인하지 않습니다. 청소 카트리지, 레이블이 지정되지 않은 볼륨 및 중복된 볼륨 일련 번호를 가진 볼륨도 제외됩니다.

  18. 원하는 확인 정책을 정의합니다. pmv_policy = verified age vertime [modified age modtime] [mounted age mnttime] 라인을 입력합니다. 설명:

    • verified age는 볼륨이 마지막으로 확인된 이후로 경과해야 하는 최소 시간을 지정합니다.

    • modified age(선택사항)는 볼륨이 마지막으로 수정된 이후로 경과해야 하는 최소 시간을 지정합니다.

    • mounted age(선택사항)는 볼륨이 마지막으로 마운트된 이후로 경과해야 하는 최소 시간을 지정합니다.

    • 매개변수 값 vertime, modtimemnttime은 음수가 아닌 정수와 시간 단위 y(년), m(월), d(일), H(시), M(분), S(초)의 조합입니다.

    Oracle HSM는 볼륨이 마지막으로 확인되고 선택적으로 수정 및/또는 마운트된 이후에 경과한 시간에 기초하여 확인 후보를 식별하고 순위를 지정합니다. 기본 정책은 단일 매개변수 verified age 6m(6개월)입니다. 예제에서는 verified age를 3개월로 설정하고 modified age를 15개월로 설정합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_scan = all
    action = none
    pmv_vsns = ˆVOL0[01][0-9] ˆVOL23[0-9] VOL400
    pmv_policy = verified age 3m modified age 15m   
    
  19. /etc/opt/SUNWsamfs/verifyd.cmd 파일을 저장하고 편집기를 닫습니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/verifyd.cmd
    ...
    pmv_vsns = ˆVOL0[01][0-9] ˆVOL23[0-9] VOL400
    pmv_policy = verified age 3m modified age 15m
    :wq
    root@solaris:~# 
    
  20. tpverify -x 명령을 입력하여 verifyd.cmd 파일에 오류가 있는지 확인합니다. 발견된 모든 오류를 수정합니다.

    tpverify -x 명령은 verifyd.cmd를 읽고 오류를 발견할 경우 중지됩니다.

    root@solaris:~# tpverify -x
    Reading '/etc/opt/SUNWsamfs/verifyd.cmd'.
    PMV: off
         Run-time:
         Start Time: 2200
    End Time: 0500
    PMV Scan: all
    PMV Method: legacy
    STA Scan: off
    Action: none
    PMV VSNs: all
    PMV Policy:
         Last Verified Age: 6m
    root@solaris:~# 
    
  21. 새로운 verifyd.cmd 파일을 사용하여 확인 서비스를 다시 시작합니다. tpverify -r 명령을 입력합니다.

    root@solaris:~# tpverify -r
    root@solaris:~# 
    

    주기적 매체 확인의 구성이 끝났습니다.

  22. 파일 시스템에서 WORM(Write Once Read Many) 기능을 사용으로 설정해야 할 경우 WORM(Write Once Read Many) 파일 지원을 사용으로 설정을 참조하십시오.

  23. LTFS를 사용하는 시스템과 상호 작용해야 하거나 원격 사이트 간에 많은 양의 데이터를 전송해야 할 경우 LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정을 참조하십시오.

  24. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

  25. 그렇지 않은 경우 알림 및 로깅 구성으로 이동합니다.

WORM(Write Once Read Many) 파일 지원을 사용으로 설정

WORM(Write Once Read Many) 파일은 법률상 아카이브 목적으로 많은 응용 프로그램에서 사용됩니다. WORM 가능 Oracle HSM 파일 시스템은 기본/사용자 정의 가능 파일 보존 기간, 데이터 및 경로 불변성, 하위 디렉토리의 WORM 설정 상속을 지원합니다. 두 가지 WORM 모드 중 하나를 사용할 수 있습니다.

  • 표준 준수 모드(기본값)

    표준 WORM 모드는 사용자가 디렉토리나 비실행 파일에 UNIX setuid 권한을 설정할 때 WORM 보존 기간을 시작합니다(chmod 4000 directory|file). setuid (set user ID upon execution) 권한을 실행 파일에 설정하면 보안 위험에 노출되므로 이 모드를 사용하여 UNIX 실행 권한을 가진 파일을 보관할 수 없습니다.

  • 에뮬레이션 모드

    WORM 에뮬레이션 모드는 사용자가 쓰기 가능 파일이나 디렉토리를 읽기 전용으로 만들 때 WORM 보존 기간을 시작하므로(chmod 444 directory|file) 실행 파일을 보관할 수 있습니다.

표준 및 에뮬레이션 모드는 엄격한 WORM 구현과 root 사용자의 제한을 완화하는 덜 제한적인 라이트 구현을 지원합니다. 엄격한 구현과 라이트 구현 모두 파일이나 디렉토리에 보존 기간이 트리거된 이후 데이터나 경로 변경을 허용하지 않습니다. 엄격한 구현에서는 누구도 지정된 보존 기간(기본값 43,200분/30일)을 단축하거나 보존 기간이 끝나기 전에 파일이나 디렉토리를 삭제할 수 없습니다. 또한 누구도 sammkfs를 사용하여 현재 보관된 파일과 디렉토리를 보유한 볼륨을 삭제할 수 없습니다. 따라서 엄격한 구현은 법적 규정 준수 요구 사항을 충족하기에 매우 적합합니다. 라이트 구현에서는 root 사용자가 보존 기간을 단축하고, 파일 및 디렉토리를 삭제하고, 파일 시스템 만들기 명령 sammkfs를 사용하여 볼륨을 삭제할 수 있습니다. 따라서 데이터 무결성 및 유연한 관리가 주요 요구 사항인 경우 라이트 구현이 더 나은 선택일 수 있습니다.

WORM 구현을 선택하고 파일에서 보존을 사용으로 설정할 때 주의합니다. 일반적으로 요구 사항과 일치하는 가장 덜 제한적인 옵션을 사용합니다. 표준 모드에서 에뮬레이션 모드로 변경하거나 그 반대로 변경할 수 없으므로 신중하게 선택해야 합니다. 관리 유연성이 우선시되거나 보존 요구 사항이 이후에 변경될 수 있는 경우 라이트 구현을 선택합니다. 나중에 필요한 경우 라이트 버전의 WORM 모드에서 엄격한 버전으로 업그레이드할 수 있습니다. 그러나 엄격한 구현을 라이트 구현으로 변경할 수는 없습니다. 엄격한 WORM 구현이 적용되고 나면 지정된 전체 보존 기간 동안 파일을 보존해야 합니다. 따라서 요구 사항과 일치하는 가장 짧은 값으로 보존을 설정합니다.

Oracle HSM 파일 시스템에서 WORM 지원을 사용으로 설정

마운트 옵션을 사용하여 파일 시스템에서 WORM 지원을 사용으로 설정할 수 있습니다. 다음과 같이 하십시오.

  1. root로 로그인합니다.

    root@solaris:~# 
    
  2. 운영체제의 /etc/vfstab 파일을 백업합니다.

    root@solaris:~# cp /etc/vfstab /etc/vfstab.backup
    
  3. 텍스트 편집기에서 /etc/vfstab 파일을 열고 WORM 지원을 사용으로 설정하려는 Oracle HSM 파일 시스템에 대한 항목을 찾습니다.

    예제에서는 /etc/vfstab 파일을 vi 편집기에서 열고 아카이빙 파일 시스템 worm1을 찾습니다.

    root@solaris:~# vi /etc/vfstab 
    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -       /worm1   samfs  -    yes     -
    
  4. 표준 WORM 준수 모드의 엄격한 구현을 사용으로 설정하려면 worm_capable 옵션을 vfstab 파일의 Mount Options 열에 입력합니다.

    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -       /worm1   samfs  -    yes     worm_capable
    
  5. 표준 WORM 준수 모드의 라이트 구현을 사용으로 설정하려면 worm_lite 옵션을 vfstab 파일의 Mount Options 열에 입력합니다.

    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -       /worm1   samfs  -    yes     worm_lite
    
  6. WORM 에뮬레이션 모드의 엄격한 구현을 사용으로 설정하려면 worm_emul 옵션을 vfstab 파일의 Mount Options 열에 입력합니다.

    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -       /worm1   samfs  -    yes     worm_emul
    
  7. WORM 에뮬레이션 모드의 라이트 구현을 사용으로 설정하려면 emul_lite 옵션을 vfstab 파일의 Mount Options 열에 입력합니다.

    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -      /worm1    samfs  -    yes     emul_lite
    
  8. 보존 기간이 명시적으로 지정되지 않은 파일에 대한 기본 보존 기간을 변경하려면 def_retention=period 옵션을 vfstab 파일의 Mount Options 열에 추가합니다. 여기서 period는 다음 단락에 설명된 형태 중 하나입니다.

    period 값은 다음 세 가지 형태 중 하나일 수 있습니다.

    • permanent 또는 0은 영구 보존을 지정합니다.

    • YEARSyDAYSdHOURShMINUTESm. 여기서 YEARS, DAYS, HOURSMINUTES는 음수가 아닌 정수이고 지정자는 생략할 수 있습니다. 따라서 예를 들어, 5y3d1h4m, 2y12h365d는 모두 유효합니다.

    • MINUTES. 여기서 MINUTES[1-2147483647] 범위의 정수입니다.

    2038년을 넘어가는 보존 기간을 설정해야 할 경우 기본 보존 기간을 설정합니다. touch와 같은 UNIX 유틸리티는 부호 있는 32비트 정수를 사용하여 1970년 1월 1일 이후로 경과된 시간을 초 단위로 나타냅니다. 32비트 정수가 표현할 수 있는 가장 큰 초 수는 2038년 1월 18일 오후 10시 14분으로 변환됩니다.

    값이 제공되지 않은 경우 def_retention은 기본적으로 43200분(30일)으로 설정됩니다. 예제에서는 표준 WORM 가능 파일 시스템에 대한 보존 기간을 777600분(540일)으로 설정합니다.

    #File
    #Device   Device  Mount    System fsck Mount   Mount
    #to Mount to fsck Point    Type   Pass at Boot Options
    #-------- ------- -------- ------ ---- ------- -------------------------
    /devices  -       /devices devfs  -    no      -
    /proc     -       /proc    proc   -    no      -
    ...
    worm1     -       /worm1   samfs  -    no     worm_capable,def_retention=777600
    
  9. vfstab 파일을 저장하고 편집기를 닫습니다.

    파일 시스템에 WORM이 사용으로 설정됩니다. 하나 이상의 WORM 파일이 파일 시스템에 상주하면 Oracle HSM 소프트웨어는 WORM 기능을 반영하기 위해 파일 시스템 수퍼 블록을 업데이트합니다. 엄격한 worm_capable 또는 worm_emul 마운트 옵션을 사용하여 파일 시스템이 마운트된 경우 sammkfs를 사용하여 파일 시스템을 재작성하려는 이후의 모든 시도가 실패합니다.

  10. LTFS를 사용하는 시스템과 상호 작용해야 하거나 원격 사이트 간에 많은 양의 데이터를 전송해야 할 경우 LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정을 참조하십시오.

  11. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

  12. 그렇지 않은 경우 알림 및 로깅 구성으로 이동합니다.

LTFS(Linear Tape File System)에 대한 지원을 사용으로 설정

Oracle HSM은 데이터를 LTFS(Linear Tape File System) 볼륨에서 가져오고 LTFS 볼륨으로 내보낼 수 있습니다. 이 기능으로 인해 LTFS를 표준 테이프 형식으로 사용하는 시스템과의 상호 작용이 용이해집니다. 또한 일반 WAN(Wide Area Network) 연결이 너무 느리거나 비싸서 작업에 적합하지 않은 경우 이 기능을 사용하여 원격 Oracle HSM 사이트 간에 매우 많은 양의 데이터를 쉽게 전송할 수 있습니다.

Oracle HSM 소프트웨어는 LTFS 기능을 지원하지만 포함하고 있지는 않습니다. LTFS 파일 시스템을 사용하려면 호스트의 Solaris 운영체제에 SUNWltfs 패키지가 포함되어 있어야 합니다. 필요한 경우 계속하기 전에 SUNWltfs 패키지를 다운로드하고 설치하십시오.

LTFS 볼륨 사용 및 관리에 대한 자세한 내용은 samltfs 매뉴얼 페이지 및 Oracle Hierarchical Storage Manager and StorageTek QFS Software 유지 관리 및 관리 설명서를 참조하십시오.

Oracle HSM LTFS 지원을 사용으로 설정하려면 다음과 같이 하십시오.

  1. Oracle HSM 메타데이터 서버에 root로 로그인합니다.

    [samfs-mds]root@solaris:~# 
    
  2. 모든 아카이빙 프로세스를 유휴 설정합니다(있는 경우). samcmd aridle 명령을 사용합니다.

    이 명령은 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다.

    [samfs-mds]root@solaris:~# samcmd aridle
    [samfs-mds]root@solaris:~# 
    
  3. 모든 스테이징 프로세스를 유휴 설정합니다(있는 경우). samcmd stidle 명령을 사용합니다.

    이 명령은 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다.

    [samfs-mds]root@solaris:~# samcmd stidle
    [samfs-mds]root@solaris:~# 
    
  4. 모든 활성 아카이빙 작업이 완료될 때까지 기다립니다. samcmd a 명령을 사용하여 아카이빙 프로세스의 상태를 확인합니다.

    아카이빙 프로세스가 Waiting for :arrun이면 아카이빙 프로세스가 유휴 상태임을 나타냅니다.

    [samfs-mds]root@solaris:~# samcmd a
    Archiver status samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samfs-mds
    sam-archiverd:  Waiting for :arrun
    sam-arfind: ...
    Waiting for :arrun
    
  5. 모든 활성 스테이징 작업이 완료될 때까지 기다립니다. samcmd u 명령을 사용하여 스테이징 프로세스의 상태를 확인합니다.

    스테이징 프로세스가 Waiting for :strun이면 스테이징 프로세스가 유휴 상태임을 나타냅니다.

    [samfs-mds]root@solaris:~# samcmd u
    Staging queue samcmd      6.0 14:20:34 Feb 22 2015
    samcmd on solaris.demo.lan
    Staging queue by media type: all
    sam-stagerd:  Waiting for :strun
    root@solaris:~# 
    
  6. 더 진행하기 전에 모든 이동식 매체 드라이브를 유휴 설정합니다. 각 드라이브에 대해 samcmd equipment-number idle 명령을 사용합니다. 여기서 equipment-number/etc/opt/SUNWsamfs/mcf 파일에서 드라이브에 지정된 장비 순서 번호입니다.

    이 명령은 드라이브를 off로 설정하기 전에 현재 아카이빙 및 스테이징 작업이 완료되도록 허용하지만, 새로운 작업을 시작하지는 않습니다. 예제에서는 순서 번호 801, 802, 803, 804를 가진 4개 드라이브를 유휴 설정합니다.

    [samfs-mds]root@solaris:~# samcmd 801 idle
    [samfs-mds]root@solaris:~# samcmd 802 idle
    [samfs-mds]root@solaris:~# samcmd 803 idle
    [samfs-mds]root@solaris:~# samcmd 804 idle
    [samfs-mds]root@solaris:~# 
    
  7. 실행 중인 작업이 완료될 때까지 기다립니다.

    samcmd r 명령을 사용하여 드라이브의 상태를 확인할 수 있습니다. 모든 드라이브가 notrdyempty이면 진행할 준비가 된 것입니다.

    [samfs-mds]root@solaris:~# samcmd r
    Removable media samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samqfs1host
    ty   eq   status      act  use  state  vsn
    li  801   ---------p    0   0%  notrdy
              empty
    li  802   ---------p    0   0%  notrdy
              empty
    li  803   ---------p    0   0%  notrdy
              empty
    li  804   ---------p    0   0%  notrdy
              empty
    [samfs-mds]root@solaris:~# 
    
  8. 아카이버 및 스테이저 프로세스가 유휴 상태이고 테이프 드라이버가 모두 notrdy이면 라이브러리 제어 데몬을 중지합니다. samd stop 명령을 사용합니다.

    [samfs-mds]root@solaris:~# samd stop
    [samfs-mds]root@solaris:~# 
    
  9. 텍스트 편집기에서 /etc/opt/SUNWsamfs/defaults.conf를 엽니다.

    예제에서는 vi 편집기에서 파일을 엽니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf 
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character from the beginning of the line)
    # and change the value.
    ...
    
  10. defaults.conf 파일에서 ltfs = mountpoint workers volumes 라인을 추가합니다. 여기서 마운트 지점은 LTFS 파일 시스템을 마운트해야 하는 호스트 파일 시스템의 디렉토리이고 workers는 LTFS에 사용할 선택적인 최대 드라이브 수이며 volumes는 선택적인 드라이브당 최대 테이프 볼륨 수입니다. 그런 다음 파일을 저장하고 편집기를 닫습니다.

    예제에서는 LTFS 마운트 지점을 /mnt/ltfs로 지정하고 다른 매개변수에는 기본값을 사용합니다.

    [samfs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf 
    # These are the defaults.  To change the default behavior, uncomment the
    # appropriate line (remove the '#' character from the beginning of the line)
    # and change the value.
    ...
    ltfs = /mnt/ltfs
    :wq
    [samfs-mds]root@solaris:~# 
    
  11. Oracle HSM 소프트웨어에 defaults.conf 파일을 다시 읽고 그에 따라 재구성하도록 지시합니다. 보고된 모든 오류를 수정하고 필요에 따라 반복합니다.

    [samfs-mds]root@solaris:~# /opt/SUNWsamfs/sbin/samd config
    
  12. 이전 단계에서 Oracle HSM 작업을 중지한 경우 이제 samd start 명령을 사용하여 다시 시작합니다.

    [samfs-mds]root@solaris:~# samd start
    
  13. 이제 LTFS에 대한 Oracle HSM 지원이 사용으로 설정되었습니다. 다중 호스트 파일 시스템 액세스 또는 고가용성 구성과 같은 추가 요구 사항이 있는 경우 기본 과정 이후를 참조하십시오.

  14. 그렇지 않은 경우 알림 및 로깅 구성으로 이동합니다.

기본 과정 이후

Oracle HSM 파일 시스템의 기본 설치 및 구성이 완료되었습니다. 이제 광범위한 목적을 위해 최적으로 구성된 완벽하게 작동하는 파일 시스템이 설정되었습니다.

이 설명서의 나머지 장에서는 더 특수한 요구 사항을 다룹니다. 따라서 아래에 설명된 추가 조정 및 기능 구현 작업을 시작하기 전에 요구 사항을 신중하게 평가해야 합니다. 그런 다음 고가용성 및 공유 파일 시스템 구성과 같은 추가 기능이 필요한 경우 기본 구성부터 시작하여 추가 기능을 적절하게 구현할 수 있습니다. 그러나 지금까지 수행한 작업으로 요구 사항을 충족할 수 있는 경우 추가 변경사항으로 개선되지는 않을 것입니다. 단지 이로 인해 유지 관리 및 관리가 복잡해질 수 있습니다.