Oracle® Solaris 11.2의 네트워크 파일 시스템 관리

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

공통 디렉토리 아래에서 프로젝트 관련 파일을 통합하는 방법

autofs를 사용하여 여러 시스템에서 공통으로 사용되는 디렉토리에 파일을 통합할 수 있습니다. 프로젝트 관련 파일의 디렉토리 구조를 공통 디렉토리에 대한 autofs 맵에 추가할 수 있습니다. 이 디렉토리 구조를 통해 사용자는 시스템의 물리적 및 하드웨어 변경 사항에 관계없이 프로젝트 파일을 사용할 수 있습니다.

  1. 관리자가 됩니다.

    자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

  2. 공통 디렉토리에 대한 항목을 auto_master 맵에 추가합니다.
    /common-dir     auto_common-dir     -nosuid

    auto_common-dir 맵에서 공통 디렉토리의 내용이 결정됩니다.

  3. -nosuid 옵션을 예방 조치로 추가하여 사용자가 작업 공간에 있을 수 있는 setuid 프로그램을 실행하지 못하게 합니다.
  4. auto_common-dir 맵에 항목을 추가합니다.

    auto_common-dir 맵은 각 항목이 하위 프로젝트를 설명하는 방식으로 구성됩니다. 첫번째 시도에서는 다음과 같은 맵이 생성됩니다.

    project1   system1:/export/common-dir/&
    project2    system1:/export/common-dir/&
    app1      system2:/export/common-dir/&

    각 항목 끝의 앰퍼센드(&)는 항목 키의 약어입니다.

예 4-1  /ws 아래에서 프로젝트 관련 파일 통합

사용자가 대규모 소프트웨어 개발 프로젝트의 관리자라고 가정해 보겠습니다. 이 관리자는 모든 프로젝트 관련 파일을 /ws라는 디렉토리 아래에서 제공하려고 합니다. 사이트의 모든 워크스테이션에서 이 디렉토리를 공통으로 사용할 것입니다.

/ws 디렉토리에 대한 항목을 사이트 auto_master 맵에 추가합니다.

/ws     auto_ws     -nosuid 

auto_ws 맵에서 /ws 디렉토리의 내용이 결정됩니다. –nosuid는 작업 영역에 있을 수 있는 setuid 프로그램을 사용자가 실행할 수 없도록 합니다. 각 항목이 하위 프로젝트를 설명하도록 auto_ws 맵에 항목을 추가합니다. 첫번째 시도에서는 다음과 같은 맵이 생성됩니다.

compiler   alpha:/export/ws/&
windows    alpha:/export/ws/&
files      bravo:/export/ws/&
drivers    alpha:/export/ws/&
man        bravo:/export/ws/&
tools      delta:/export/ws/&

각 항목 끝의 앰퍼센드(&)는 항목 키의 약어입니다. 예를 들어 첫번째 항목은 다음에 해당합니다.

compiler		alpha:/export/ws/compiler 

이 첫 시도에서는 간단하게 나타나지만 추가적인 구체화가 필요한 맵이 제공됩니다. 프로젝트 구성기는 man 항목의 설명서를 각 하위 프로젝트 아래 하위 디렉토리로 제공해야 함을 결정합니다. 또한 각 하위 프로젝트에서는 하위 디렉토리가 여러 소프트웨어 버전을 설명해야 합니다. 이러한 각 하위 디렉토리는 서버의 전체 디스크 파티션에 지정해야 합니다.

맵의 항목을 다음과 같이 수정합니다.

compiler \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /vers2.0    bravo:/export/ws/&/vers2.0 \
    /man        bravo:/export/ws/&/man
windows \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /man        bravo:/export/ws/&/man
files \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /vers2.0    bravo:/export/ws/&/vers2.0 \
    /vers3.0    bravo:/export/ws/&/vers3.0 \
    /man        bravo:/export/ws/&/man
drivers \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /man        bravo:/export/ws/&/man
tools \
    /           delta:/export/ws/&

이제 맵은 훨씬 더 크게 표시되지만 아직 포함된 항목은 5개뿐입니다. 각 항목은 여러 마운트를 포함하므로 이전보다 크기가 커졌습니다. 예를 들어 /ws/compiler를 참조하려면 vers1.0, vers2.0man 디렉토리에 대한 3개의 마운트가 필요합니다.

각 행의 끝에 오는 백슬래시는 입력 내용이 다음 행으로 이어진다는 것을 나타냅니다. 효율성을 위해 한 행에 모두 입력했지만 가독성을 위해 줄바꿈과 들여쓰기가 부분적으로 사용되었습니다.

tools 디렉토리에는 모든 하위 프로젝트에 대한 소프트웨어 개발 도구가 포함되어 있으므로 이 디렉토리는 같은 하위 디렉토리 구조를 따르지 않습니다. tools 디렉토리는 계속 단일 마운트로 유지됩니다.

디렉토리가 이와 같이 배열되므로 관리자는 작업을 훨씬 유동적으로 수행할 수 있습니다. 일반적으로 소프트웨어 프로젝트는 디스크 공간을 많이 사용합니다. 프로젝트 수명 동안 여러 디스크 파티션을 재배치 및 확장해야 할 수 있습니다. 이러한 변경 사항이 auto_ws 맵에 반영되어도 사용자에게 알릴 필요가 없습니다. /ws 아래의 디렉토리 계층은 변경되지 않기 때문입니다.

alphabravo 서버는 동일한 autofs 맵을 확인하므로, 이러한 시스템에 로그인하는 사용자는 /ws 이름 공간을 정상적으로 찾을 수 있습니다. 이러한 사용자에게는 NFS 마운트가 아닌 루프백 마운트를 통해 로컬 파일에 대한 직접 액세스 권한이 제공됩니다.