JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1에서 네트워크 파일 시스템 관리     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

1.  네트워크 파일 시스템 관리(개요)

2.  네트워크 파일 시스템 관리(작업)

3.  네트워크 파일 시스템 액세스(참조)

NFS 파일

/etc/default/nfslogd 파일

/etc/nfs/nfslog.conf 파일

NFS 데몬

automountd 데몬

lockd 데몬

mountd 데몬

nfs4cbd 데몬

nfsd 데몬

nfslogd 데몬

nfsmapid 데몬

구성 파일 및 nfsmapid

우선 순위 규칙

nfsmapid 및 DNS TXT 레코드

NFS 버전 4 도메인 확인

NFS 버전 4 기본 도메인 구성

Oracle Solaris 11 릴리스에서 NFS 버전 4 기본 도메인 구성

Solaris 10 릴리스에서 NFS 버전 4 기본 도메인 구성

nfsmapid 관련 추가 정보

reparsed 데몬

statd 데몬

NFS 명령

automount 명령

clear_locks 명령

fsstat 명령

mount 명령

NFS 파일 시스템용 mount 옵션

mount 명령 사용

umount 명령

mountall 명령

umountall 명령

sharectl 명령

set 하위 명령

get 하위 명령

status 하위 명령

share 명령

파일 시스템과 관련이 없는 share 옵션

NFS 특정 share 옵션

share 명령을 사용하여 액세스 목록 설정

unshare 명령

shareall 명령

unshareall 명령

showmount 명령

nfsref 명령

FedFS 명령

NFS 문제 해결용 명령

nfsstat 명령

pstack 명령

rpcinfo 명령

snoop 명령

truss 명령

RDMA를 통한 NFS

NFS 서비스의 작동 방식

NFS의 버전 협상

NFS 버전 4의 기능

NFS 버전 4에서 파일 시스템 공유 해제 및 다시 공유

NFS 버전 4의 파일 시스템 이름 공간

NFS 버전 4의 휘발성 파일 핸들

NFS 버전 4의 클라이언트 복구

NFS 버전 4의 OPEN 공유 지원

NFS 버전 4의 위임

NFS 버전 4의 ACL 및 nfsmapid

ID 매핑 실패 이유

ACL을 사용한 ID 매핑 문제 방지

매핑되지 않은 사용자 또는 그룹 ID 확인

ACL 또는 nfsmapid에 대한 추가 정보

UDP 및 TCP 협상

파일 전송 크기 협상

파일 시스템 마운트 방법

마운트 시 -public 옵션과 NFS URL의 효과

클라이언트측 페일오버

페일오버 용어

복제된 파일 시스템이란?

페일오버 및 NFS 잠금

NFS 버전 4의 클라이언트측 페일오버

NFS 서버 로깅의 작동 방식

WebNFS 서비스의 작동 방식

WebNFS 보안 협상의 작동 방식

웹 브라우저 사용 시의 WebNFS 제한

보안 NFS 시스템

보안 RPC

DH 인증

KERB 인증

NFS에서 보안 RPC 사용

미러 마운트의 작동 방식

미러 마운트를 사용하는 경우

미러 마운트를 사용하여 파일 시스템 마운트

미러 마운트를 사용하여 파일 시스템 마운트 해제

NFS 참조의 작동 방식

NFS 참조를 사용하는 경우

NFS 참조 만들기

NFS 참조 제거

autofs 맵

마스터 Autofs 맵

마운트 지점 /home

마운트 지점 /net

마운트 지점 /nfs4

직접 autofs 맵

마운트 지점 /-

간접 autofs 맵

autofs의 작동 방식

autofs가 네트워크(맵)를 탐색하는 방법

autofs에서 탐색 프로세스를 시작하는 방법(마스터 맵)

autofs 마운트 프로세스

단순 autofs 마운트

계층적 마운트

autofs 마운트 해제

autofs에서 클라이언트에 대해 가장 가까운 읽기 전용 파일을 선택하는 방법(여러 위치)

autofs 및 가중치

autofs 맵 항목의 변수

다른 맵을 참조하는 맵

실행 가능 autofs 맵

autofs가 네트워크를 탐색하는 방법 수정(맵 수정)

이름 서비스에 대한 기본 autofs 동작

autofs 참조

autofs 및 메타 문자

앰퍼센드(&)

별표(*)

autofs 및 특수 문자

색인

NFS 명령

이러한 명령이 완전히 효과를 보려면 root로 실행되어야 합니다. 하지만 정보 요청은 모든 사용자가 할 수 있습니다.

또한 FedFS 서비스와 관련된 명령은 FedFS 명령을 참조하십시오.

automount 명령

이 명령은 autofs 마운트 지점을 설치하고 automaster 파일의 정보를 각 마운트 지점과 연관시킵니다. 명령의 구문은 다음과 같습니다.

automount [ -t duration ] [ - v ]

-t duration은 파일 시스템이 마운트된 상태로 유지되는 시간(초)을 설정하고 -v는 Verbose 모드를 선택합니다. 이 명령을 Verbose 모드로 실행하면 문제를 보다 쉽게 해결할 수 있습니다.

구체적으로 설정하지 않는 경우 기간의 값은 5분으로 설정됩니다. 대부분의 경우에는 기본값을 사용하면 됩니다. 그러나 자동 마운트된 파일 시스템이 많은 시스템에서는 기간 값을 높여야 할 수 있습니다. 특히, 서버의 활성 사용자가 많은 경우에는 5분마다 자동 마운트된 파일 시스템을 확인하는 것은 효율적이지 않을 수 있습니다. autofs 파일 시스템을 1800초(30분)마다 확인하는 것이 보다 적절할 수 있습니다. 파일 시스템의 마운트를 5분마다 해제하지 않으면 /etc/mnttab가 커질 수 있습니다. df/etc/mnttab 의 각 항목을 확인할 때 출력을 줄이려면 -F 옵션을 사용하거나(df(1M) 매뉴얼 페이지 참조) egrep를 사용하여 df에서 출력을 필터링할 수 있습니다.

기간을 변경하면 자동 마운트 맵에 변경 내용이 반영되는 속도도 변경된다는 점을 고려해야 합니다. 파일 시스템 마운트를 해제해야 변경 내용을 확인할 수 있습니다. 자동 마운트 맵을 수정하는 방법의 지침은 맵 수정을 참조하십시오.

sharectl 명령을 통해서도 명령줄에서 지정하는 것과 같은 항목을 지정할 수 있습니다. 그러나 명령줄 옵션과는 달리 SMF 저장소에서는 서비스 다시 시작, 시스템 재부트 및 시스템 업그레이드 시에도 지정 내용이 보존됩니다. 다음과 같은 매개변수를 automount 명령에 대해 설정할 수 있습니다.

timeout

파일 시스템 마운트를 해제할 때까지 파일 시스템이 유휴 상태로 유지되는 기간을 설정합니다. 이 키워드는 automount 명령용 -t 인수와 동등합니다. 기본값은 600입니다.

automount_verbose

autofs 마운트, 마운트 해제 및 기타 필수적이지 않은 이벤트에 대한 알림을 제공합니다. 이 키워드는 automountd-v 인수와 동등합니다. 기본값은 FALSE입니다.

clear_locks 명령

이 명령을 사용하면 NFS 클라이언트에 대한 모든 파일, 레코드 및 공유 잠금을 제거할 수 있습니다. 이 명령은 root에서 실행해야 합니다. NFS 서버에서 특정 클라이언트에 대한 잠금을 지울 수 있습니다. NFS 클라이언트에서 특정 서버의 해당 클라이언트에 대한 잠금을 지울 수 있습니다. 다음 예제에서는 현재 시스템에서 이름이 tulip인 NFS 클라이언트에 대한 잠금을 지웁니다.

# clear_locks tulip

-s 옵션을 사용하면 잠금을 지울 NFS 호스트를 지정할 수 있습니다. 이 옵션은 잠금을 만든 NFS 클라이언트에서 실행해야 합니다. 이 경우 클라이언트의 잠금은 bee라는 NFS 서버에서 제거됩니다.

# clear_locks -s bee

주의

주의 - 이 명령은 클라이언트가 충돌하여 잠금을 지울 수 없는 경우에만 실행해야 합니다. 데이터 손상 문제를 방지하려면 활성 클라이언트에 대한 잠금을 지우지 마십시오.


fsstat 명령

fsstat 유틸리티를 사용하면 파일 시스템 유형 및 마운트 지점별로 파일 시스템 작업을 모니터링할 수 있습니다. 다양한 옵션을 통해 출력을 사용자 정의할 수 있습니다. 다음 예를 참조하십시오.

이 예에서는 NFS 버전 3, 버전 4 및 root 마운트 지점에 대한 출력을 보여줍니다.

% fsstat nfs3 nfs4 /
  new     name   name    attr    attr   lookup   rddir   read   read   write   write
 file    remov   chng     get     set      ops     ops    ops  bytes     ops   bytes
3.81K       90  3.65K   5.89M   11.9K    35.5M   26.6K   109K   118M   35.0K   8.16G  nfs3
  759      503    457   93.6K   1.44K     454K   8.82K  65.4K   827M     292    223K  nfs4
25.2K    18.1K  1.12K   54.7M    1017     259M   1.76M  22.4M  20.1G   1.43M   3.77G  /

이 예에서는 -i 옵션을 사용하여 NFS 버전 3, 버전 4 및 root 마운트 지점의 I/O 작업에 대한 통계를 제공합니다.

% fsstat -i nfs3 nfs4 /
 read    read    write   write   rddir   rddir   rwlock   rwulock
  ops   bytes      ops   bytes     ops   bytes      ops       ops
 109K    118M    35.0K   8.16G   26.6K   4.45M     170K      170K  nfs3
65.4K    827M      292    223K   8.82K   2.62M    74.1K     74.1K  nfs4
22.4M   20.1G    1.43M   3.77G   1.76M   3.29G    25.5M     25.5M  /

이 예에서는 -n 옵션을 사용하여 NFS 버전 3, 버전 4 및 root 마운트 지점의 이름 지정 작업에 대한 통계를 보여줍니다.

% fsstat -n nfs3 nfs4 /
lookup   creat   remov  link   renam  mkdir  rmdir   rddir  symlnk  rdlnk
 35.5M   3.79K      90     2   3.64K      5      0   26.6K      11   136K  nfs3
  454K     403     503     0     101      0      0   8.82K     356  1.20K  nfs4
  259M   25.2K   18.1K   114    1017     10      2   1.76M      12  8.23M  /

자세한 내용은 fsstat(1M) 매뉴얼 페이지를 참조하십시오.

mount 명령

이 명령을 사용하면 이름이 지정된 파일 시스템(로컬 또는 원격)을 지정된 마운트 지점에 연결할 수 있습니다. 자세한 내용은 mount(1M) 매뉴얼 페이지를 참조하십시오. 인수 없이 사용되는 mount는 컴퓨터에 현재 마운트되어 있는 파일 시스템 목록을 표시합니다.

대부분의 파일 시스템 유형은 표준 Oracle Solaris 설치에 포함되어 있습니다. 각 파일 시스템 유형에는 해당 파일 시스템 유형에 적합한 mount용 옵션이 나열되는 특정 매뉴얼 페이지가 있습니다. NFS 파일 시스템의 매뉴얼 페이지는 mount_nfs(1M)입니다. UFS 파일 시스템의 경우 mount_ufs(1M)을 참조하십시오.

Solaris 7 릴리스에는 표준 server:/pathname구문 대신 NFS URL을 사용하여 NFS 서버에서 마운트할 경로 이름을 선택하는 기능이 포함되어 있습니다. 자세한 내용은 NFS URL을 사용하여 NFS 파일 시스템을 마운트하는 방법을 참조하십시오.


주의

주의 - mount 명령 버전에서는 잘못된 옵션에 대한 경고를 표시하지 않습니다. 명령은 해석할 수 없는 옵션을 자동으로 무시합니다. 예기치 않은 동작을 방지하려면 사용된 모든 옵션을 확인하십시오.


NFS 파일 시스템용 mount 옵션

이후 내용에서는 NFS 파일 시스템을 마운트할 때 -o 플래그 뒤에 올 수 있는 몇 가지 옵션에 대해 소개합니다. 전체 옵션 목록은 mount_nfs(1M) 매뉴얼 페이지를 참조하십시오.

bg|fg

이 옵션을 사용하여 마운트 실패 시의 재시도 동작을 선택할 수 있습니다. bg 옵션을 사용하는 경우 마운트 시도를 백그라운드에서 실행합니다. fg 옵션을 사용하는 경우 마운트 시도를 전경에서 실행합니다. 기본값은 fg입니다.사용 가능해야 하는 파일 시스템에서는 이 옵션이 가장 적합합니다. 이 옵션을 선택하면 마운트가 완료될 때까지 추가 처리를 수행할 수 없습니다. 중요하지 않은 파일 시스템의 경우에는 bg를 선택하는 것이 좋은데, 마운트 요청이 완료되도록 기다리는 동안 클라이언트가 다른 처리를 수행할 수 있기 때문입니다.

forcedirectio

이 옵션은 큰 순차적 데이터 전송의 성능을 개선합니다. 데이터는 사용자 버퍼로 직접 복사됩니다. 클라이언트의 커널에서는 캐싱이 수행되지 않습니다. 이 옵션은 기본적으로 해제됩니다.

이전에는 모든 쓰기 요청이 NFS 클라이언트와 NFS 서버에 의해 일련화되었습니다. NFS 클라이언트는 응용 프로그램이 동시 쓰기뿐만 아니라 동시 읽기와 쓰기를 단일 파일에 수행할 수 있도록 수정되었습니다. forcedirectio 마운트 옵션을 사용하여 클라이언트에서 이 기능을 사용으로 설정할 수 있습니다. 이 옵션을 사용하면 마운트된 파일 시스템 내에서 모든 파일에 대해 이 기능을 사용할 수 있게 됩니다. 또한 directio() 인터페이스를 사용하여 클라이언트의 단일 파일에서 이 기능을 사용 가능하게 할 수 있었습니다. 이 기능을 사용으로 설정하지 않으면 파일에 대한 쓰기가 일련화됩니다. 또한 동시 쓰기나 동시 읽기 및 쓰기가 발생하는 경우 해당 파일에 대해 더 이상 POSIX 의미가 지원되지 않습니다.

이 옵션을 사용하는 방법의 예제는 mount 명령 사용을 참조하십시오.

largefiles

이 옵션을 사용하면 2GB보다 큰 파일에 액세스할 수 있습니다. 큰 파일에 액세스할 수 있는지 여부는 서버에서만 제어할 수 있으므로 NFS 버전 3 마운트에서는 이 옵션이 자동으로 무시됩니다. 기본적으로 모든 UFS 파일 시스템은 largefiles를 사용하여 마운트됩니다. NFS 버전 2 프로토콜을 사용하는 마운트의 경우 largefiles o옵션을 사용하면 마운트가 실패하고 오류가 발생합니다.

nolargefiles

UFS 마운트에 대해 이 옵션을 사용하면 파일 시스템에 큰 파일이 없도록 할 수 있습니다. mount_ufs(1M) 매뉴얼 페이지를 참조하십시오. 큰 파일의 존재 여부는 NFS 서버에서만 제어할 수 있으므로 NFS 마운트를 사용할 때는 nolargefiles에 대한 옵션이 없습니다. 이 옵션을 사용하여 파일 시스템 NFS 마운트를 시도하면 작업이 거부되고 오류가 발생합니다.

nosuid|suid

nosuid 옵션은 nosetuid 옵션과 함께 nodevices 옵션을 지정하는 것에 해당합니다. nodevices 옵션이 지정된 경우에는 마운트된 파일 시스템에서 장치 특정 파일을 열 수 없습니다. nosetuid 옵션이 지정된 경우 파일 시스템에 있는 이진 파일의 setuid 비트 및 setgid 비트가 무시됩니다. 프로세스는 이진 파일을 실행하는 사용자의 권한으로 실행됩니다.

suid 옵션은 setuid 옵션과 함께 devices 옵션을 지정하는 것에 해당합니다. devices 옵션이 지정된 경우에는 마운트된 파일 시스템에서 장치 특정 파일을 열 수 없습니다. setuid 옵션이 지정된 경우 파일 시스템에 있는 이진 파일의 setuid 비트 및 setgid 비트가 커널에 의해 적용됩니다.

두 옵션이 모두 지정되지 않은 경우의 기본 옵션은 suid입니다. 이 옵션은 setuid 옵션과 함께 devices 옵션을 지정하는 기본 동작을 제공합니다.

아래 표에서는 nosuid 또는 suiddevices 또는 nodevicessetuid 또는 nosetuid와 결합하는 경우의 효과에 대해 설명합니다. 각 옵션을 결합할 때는 가장 제한적인 옵션에 따라 동작이 결정됩니다.

결합된 옵션의 동작
옵션
옵션
옵션
nosetuidnodevices를 결합한 경우에 해당하는 옵션
nosuid
nosetuid
nodevices
nosetuidnodevices를 결합한 경우에 해당하는 옵션
nosuid
nosetuid
devices
nosetuidnodevices를 결합한 경우에 해당하는 옵션
nosuid
setuid
nodevices
nosetuidnodevices를 결합한 경우에 해당하는 옵션
nosuid
setuid
devices
nosetuidnodevices를 결합한 경우에 해당하는 옵션
suid
nosetuid
nodevices
nosetuiddevices를 결합한 경우에 해당하는 옵션
suid
nosetuid
devices
setuidnodevices를 결합한 경우에 해당하는 옵션
suid
setuid
nodevices
setuiddevices를 결합한 경우에 해당하는 옵션
suid
setuid
devices

nosuid 옵션은 잠재적으로 신뢰되지 않는 서버에 액세스하는 NFS 클라이언트에 대해 추가적인 보안을 제공합니다. 이 옵션을 사용하여 원격 파일 시스템을 마운트하면 신뢰되지 않는 장치 또는 setuid 이진 파일 가져오기를 통한 권한 승격 가능성이 줄어듭니다. 모든 Oracle Solaris 파일 시스템에서 이러한 옵션을 모두 사용할 수 있습니다.

public

이 옵션은 NFS 서버에 연결할 때 공용 파일 핸들을 사용하도록 강제 지정합니다. 서버에서 공용 파일 핸들을 지원하는 경우 MOUNT 프로토콜이 사용되지 않으므로 마운트 작업 속도가 빨라집니다. 또한 MOUNT 프로토콜이 사용되지 않으므로 공용 옵션을 사용하여 방화벽을 통해 마운트를 수행할 수 있습니다.

rw|ro

-rw- ro 옵션은 파일 시스템을 읽기/쓰기로 마운트할지 읽기 전용으로 마운트할지를 나타냅니다. 기본값은 읽기/쓰기입니다. 이 옵션은 원격 홈 디렉토리, 메일 스풀링 디렉토리 또는 사용자가 변경해야 하는 기타 파일 시스템에 적합합니다. 읽기 전용 옵션은 사용자가 변경해서는 안 되는 디렉토리에 적합합니다. 예를 들어 매뉴얼 페이지 공유 복사본은 사용자가 쓸 수 없어야 합니다.

sec=mode

이 옵션을 사용하여 마운트 트랜잭션 중에 사용할 인증 방식을 지정할 수 있습니다. mode의 값은 다음 중 하나일 수 있습니다.

  • Kerberos 버전 5 인증 서비스의 경우 krb5를 사용합니다.

  • Kerberos 버전 5(무결성 포함)의 경우 krb5i를 사용합니다.

  • Kerberos 버전 5(프라이버시 포함)의 경우 krb5p를 사용합니다.

  • 인증을 사용하지 않으려면 none을 사용합니다.

  • Diffie-Hellman(DH) 인증의 경우 dh를 사용합니다.

  • 표준 UNIX 인증의 경우 sys를 사용합니다.

/etc/nfssec.conf에서도 모드가 정의됩니다.

soft|hard

soft 옵션을 사용하여 NFS 파일 시스템을 마운트한 경우 서버가 응답하지 않으면 오류가 반환됩니다. hard 옵션을 사용하면 서버가 응답할 때까지 마운트를 계속 재시도합니다. 기본값은 hard로, 대부분의 파일 시스템에서는 이 옵션을 사용해야 합니다. 응용 프로그램에서는 soft 옵션을 사용하여 마운트된 파일 시스템의 반환 값을 확인하지 않는 경우가 많아 오류가 발생하거나 파일이 손상될 수 있습니다. 응용 프로그램이 반환 값을 확인하는 경우에도 soft 옵션을 사용하면 경로 지정 문제와 기타 상황으로 인해 응용 프로그램 사용 시 혼란을 초래하거나 파일이 손상될 수 있습니다. 대부분의 경우에는 soft 옵션을 사용해서는 안 됩니다. hard 옵션을 사용하여 마운트한 파일 시스템을 사용할 수 없게 되면 파일 시스템을 다시 사용할 수 있을 때까지 해당 파일 시스템을 사용하는 응용 프로그램이 정지됩니다.

mount 명령 사용

다음 예제를 참조하십시오.

umount 명령

이 명령을 사용하면 현재 마운트된 원격 파일 시스템을 제거할 수 있습니다. umount 명령은 테스트 허용을 위해 -V 옵션을 지원합니다. -a 옵션을 사용하여 여러 파일 시스템을 한 번에 마운트 해제할 수도 있습니다. mount-points-a 옵션과 함께 포함되어 있으면 해당 파일 시스템이 마운트 해제됩니다. 마운트 지점이 포함되어 있지 않으면 /, /usr, /var, /proc, /dev/fd, /tmp 등의 “필수” 파일 시스템을 제외하고 /etc/mnttab에 나열되어 있는 모든 파일 시스템을 마운트 해제하려고 시도합니다. 파일 시스템은 이미 마운트되어 있으며 /etc/mnttab에 해당 항목이 있으므로, 파일 시스템 유형에 대한 플래그를 포함할 필요가 없습니다.

-f 옵션은 사용 중인 파일 시스템을 마운트 해제하도록 강제 지정합니다. 이 옵션을 사용하여 마운트할 수 없는 파일 시스템 마운트를 시도하는 동안 정지된 클라이언트의 정지를 해제할 수 있습니다.


주의

주의 - 파일을 쓰는 중인 경우 파일 시스템을 강제로 마운트 해제하면 데이터가 손실될 수 있습니다.


다음 예를 참조하십시오.

예 3-1 파일 시스템 마운트 해제

이 예제에서는 /usr/man에 마운트되어 있는 파일 시스템 마운트를 해제합니다.

# umount /usr/man

예 3-2 umount에서 옵션 사용

이 예에서는 umount - a -V 실행 결과를 보여줍니다.

# umount -a -V
umount /home/kathys
umount /opt
umount /home
umount /net

이 명령은 실제로 파일 시스템 마운트를 해제하지는 않습니다.

mountall 명령

파일 시스템 표에 나열되어 있는 특정 파일 시스템 그룹이나 모든 파일 시스템을 마운트하려면 이 명령을 사용합니다. 이 명령을 통해 다음 작업을 수행할 수 있습니다.

NFS 파일 시스템 유형으로 레이블이 지정된 모든 파일 시스템은 원격 파일 시스템이므로, 이러한 일부 옵션 중 일부는 중복됩니다. 자세한 내용은 mountall(1M) 매뉴얼 페이지를 참조하십시오.

다음의 두 사용자 입력 예는 동일합니다.

# mountall -F nfs
# mountall -F nfs -r

umountall 명령

파일 시스템 그룹 마운트를 해제하려면 이 명령을 사용합니다. -k 옵션은 fuser -k mount-point 명령을 실행하여 mount-point와 연관된 모든 프로세스를 강제 종료합니다. -s 옵션은 마운트 해제가 병렬로 수행되지 않음을 나타냅니다. -l은 로컬 파일 시스템만 사용하도록 지정하고 -r은 원격 파일 시스템만 사용하도록 지정합니다. -h host 옵션은 명명된 호스트의 모든 파일 시스템을 마운트 해제해야 함을 나타냅니다. -h 옵션을 -l 또는 -r과 결합하여 사용할 수는 없습니다.

원격 호스트에서 마운트된 모든 파일 시스템을 마운트 해제하는 예제는 다음과 같습니다.

# umountall -r

bee 서버에서 현재 마운트되어 있는 모든 파일 시스템을 마운트 해제하는 예제는 다음과 같습니다.

# umountall -h bee

sharectl 명령

이 릴리스에는 NFS 등의 파일 공유 프로토콜을 구성 및 관리할 수 있는 관리 도구인 sharectl 유틸리티가 포함되어 있습니다. 이 명령을 사용하여 다음을 수행할 수 있습니다.

sharectl 유틸리티는 다음 구문을 사용합니다.

# sharectl subcommand [option] [protocol]

sharectl 유틸리티는 다음 하위 명령을 지원합니다.

표 3-2 sharectl 유틸리티의 하위 명령

하위 명령
설명
set
파일 공유 프로토콜의 등록 정보를 정의합니다. 등록 정보 및 등록 정보 값 목록은 nfs(4) 매뉴얼 페이지에 설명되어 있는 매개변수를 참조하십시오.
get
지정된 프로토콜의 등록 정보 및 등록 정보 값을 표시합니다.
status
지정된 프로토콜이 사용으로 설정되어 있는지 여부를 표시합니다. 프로토콜이 지정되어 있지 않으면 모든 파일 공유 프로토콜의 상태가 표시됩니다.

sharectl 유틸리티에 대한 자세한 내용은 다음을 참조하십시오.

set 하위 명령

set 하위 명령은 파일 공유 프로토콜의 등록 정보를 정의하며 다음 옵션을 지원합니다.

-h

온라인 도움말 설명을 제공합니다.

-p

프로토콜의 등록 정보를 정의합니다.

set 하위 명령은 다음 구문을 사용합니다.

# sharectl set [-h] [-p property=value] protocol

주 -


다음 예제에서는 클라이언트의 최소 NFS 프로토콜 버전을 3으로 설정합니다.

# sharectl set -p client_versmin=3 nfs

get 하위 명령

get 하위 명령은 지정된 프로토콜의 등록 정보 및 등록 정보 값을 표시하며 다음 옵션을 지원합니다.

-h

온라인 도움말 설명을 제공합니다.

-p

지정된 등록 정보의 등록 정보 값을 식별합니다. -p 옵션을 사용하지 않으면 모든 등록 정보 값이 표시됩니다.

get 하위 명령은 다음 구문을 사용합니다.

# sharectl get [-h] [-p property] protocol

주 - get 하위 명령을 사용하려면 root 권한이 있어야 합니다.


다음 예에서는 동시 NFS 요청의 최대 수를 지정할 수 있는 등록 정보인 servers를 사용합니다.

# sharectl get -p servers nfs
servers=1024

다음 예에서는 -p 옵션을 사용하지 않았으므로 모든 등록 정보 값이 표시됩니다.

# sharectl get nfs
servers=1024
listen_backlog=32
protocol=ALL
servers=32
lockd_listen_backlog=32
lockd_servers=20
lockd_retransmit_timeout=5
grace_period=90
nfsmapid_domain=company.com
server_versmin=2
server_versmax=4
client_versmin=2
client_versmax=4
server_delegation=on
max_connections=-1
device=

status 하위 명령

status 하위 명령은 지정된 프로토콜이 사용으로 설정되어 있는지 여부를 표시하며 다음 옵션을 지원합니다.

-h

온라인 도움말 설명을 제공합니다.

status 하위 명령은 다음 구문을 사용합니다.

# sharectl status [-h] [protocol]

다음 예에서는 NFS 프로토콜의 상태를 보여줍니다.

# sharectl status nfs
nfs       enabled

share 명령

이 명령을 사용하면 NFS 서버의 로컬 파일 시스템을 마운트 가능하도록 지정할 수 있습니다. share 명령을 사용하여 시스템에서 현재 공유 중인 파일 시스템 목록을 표시할 수도 있습니다. NFS 서버가 실행 중이어야 share 명령이 작동합니다.

공유할 수 있는 객체에는 모든 디렉토리 트리가 포함됩니다. 그러나 각 파일 시스템 계층은 파일 시스템이 있는 파티션이나 디스크 슬라이스에 의해 제한됩니다.

이미 공유 중인 더 큰 파일 시스템의 일부분인 파일 시스템은 공유할 수 없습니다. 예를 들어 /usr/usr/local이 한 디스크 슬라이스에 있는 경우 /usr을 공유하거나 /usr/local을 공유할 수 있습니다. 그러나 서로 다른 공유 옵션을 사용하여 두 디렉토리를 모두 공유해야 하는 경우에는 /usr/local을 별도의 디스크 슬라이스로 이동해야 합니다.

읽기/쓰기 공유된 파일 시스템의 파일 핸들을 통해 읽기 전용 공유인 파일 시스템에 액세스할 수 있습니다. 그러나 이 경우 두 파일 시스템이 같은 디스크 슬라이스에 있어야 합니다. 이보다 안전한 방법을 사용할 수 있습니다. 즉, 읽기/쓰기로 지정해야 하는 파일 시스템을 읽기 전용으로 공유해야 하는 파일 시스템과 다른 별도의 파티션이나 디스크 슬라이스에 배치합니다.


주 - 파일 시스템 공유를 해제했다가 다시 공유할 때 NFS 버전 4가 작동하는 방식에 대한 자세한 내용은 NFS 버전 4에서 파일 시스템 공유 해제 및 다시 공유를 참조하십시오.


파일 시스템과 관련이 없는 share 옵션

-o 플래그와 함께 포함할 수 있는 몇 가지 옵션은 다음과 같습니다.

rw|ro

pathname 파일 시스템은 모든 클라이언트에 대해 읽기/쓰기 또는 읽기 전용으로 공유됩니다.

rw=accesslist

파일 시스템이 나열된 클라이언트에 한해 읽기/쓰기로 공유됩니다. 다른 모든 요청은 거부됩니다. Solaris 2.6 릴리스부터는 accesslist에서 정의되는 클라이언트 목록이 확장되었습니다. 자세한 내용은 share 명령을 사용하여 액세스 목록 설정을 참조하십시오. 이 옵션을 사용하여 -ro 옵션을 대체할 수 있습니다.

NFS 특정 share 옵션

NFS 파일 시스템에서 사용 가능한 옵션은 다음과 같습니다.

aclok

이 옵션을 사용하면 NFS 버전 2 프로토콜을 지원하는 NFS 서버에서 NFS 버전 2 클라이언트의 액세스를 제어하도록 구성할 수 있습니다. 이 옵션을 사용하지 않으면 모든 클라이언트에 최소한의 액세스 권한이 제공됩니다. 이 옵션을 사용하면 클라이언트에 최대한의 액세스 권한이 제공됩니다. 예를 들어 -aclok 옵션을 통해 공유되는 파일 시스템에서는 특정 사용자에게 읽기 권한이 있으면 모든 사용자에게 읽기 권한이 있는 것입니다. 그러나 이 옵션을 사용하지 않는 경우에는 액세스 권한을 가져야 하는 클라이언트에 대한 액세스를 거부할 수 있습니다. 이미 사용되고 있는 보안 시스템에 따라 허용할 액세스 권한 레벨을 결정합니다. ACL(액세스 제어 목록)에 대한 자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 액세스 제어 목록을 사용하여 UFS 파일 보호를 참조하십시오.


주 - ACL을 사용하려면 클라이언트와 서버에서 NFS 버전 3 및 NFS_ACL 프로토콜을 지원하는 소프트웨어를 실행하는지 확인합니다. 소프트웨어에서 NFS 버전 3 프로토콜만 지원하는 경우에는 클라이언트가 올바른 액세스 권한을 얻지만 ACL을 조작할 수는 없습니다. 소프트웨어에서 NFS_ACL 프로토콜을 지원하는 경우 클라이언트는 올바른 액세스 권한을 얻으며 ACL을 조작할 수 있습니다.


anon=uid

uid를 사용하여 인증되지 않은 사용자의 사용자 ID를 선택합니다. uid-1로 설정하면 서버에서 인증되지 않은 사용자의 액세스를 거부합니다. anon=0을 설정하여 루트 액세스 권한을 부여할 수는 있지만, 이 옵션을 사용하면 인증되지 않은 사용자도 루트 액세스 권한을 가지게 되므로 대신 root 옵션을 사용하십시오.

index=filename

사용자가 NFS URL에 액세스하면 -index= filename 옵션은 디렉토리 목록을 표시하는 대신 HTML 파일을 강제로 로드합니다. 이 옵션은 HTTP URL이 액세스하는 디렉토리에서 index.html 파일을 찾으면 현재 브라우저의 동작을 모방합니다. 이 옵션은 httpd에 대해 DirectoryIndex 옵션을 설정하는 것과 동등합니다. 예를 들어 share 명령의 결과가 다음과 같다고 가정합니다.

export_web /export/web   nfs sec=sys,public,index=index.html,ro

이러한 URL은 같은 정보를 표시합니다.

nfs://<server>/<dir>
nfs://<server>/<dir>/index.html
nfs://<server>//export/web/<dir>
nfs://<server>//export/web/<dir>/index.html
http://<server>/<dir>
http://<server>/<dir>/index.html
log=tag

이 옵션은 /etc/nfs/nfslog.conf에서 파일 시스템에 대한 NFS 서버 로깅 구성 정보가 포함된 태그를 지정합니다. NFS 서버 로깅을 사용으로 설정하려면 이 옵션을 선택해야 합니다.

nosuid

이 옵션은 setuid 또는 setgid 모드를 사용으로 설정하려는 모든 시도를 무시해야 함을 나타냅니다. NFS 클라이언트는 setuid 또는 setgid 비트가 설정되어 있으면 파일을 만들 수 없습니다.

public

WebNFS 찾아보기를 수행할 수 있도록 -public 옵션이 share 명령에 추가되었습니다. 이 옵션을 사용하는 경우 서버의 파일 시스템 하나만 공유할 수 있습니다.

root=accesslist

서버에서 목록의 호스트에 대한 루트 액세스 권한을 부여합니다. 기본적으로 서버에서는 원격 호스트에 대한 루트 액세스 권한을 부여하지 않습니다. 선택한 보안 모드가 -sec=sys 이외의 모드인 경우에는 accesslist에 클라이언트 호스트 이름만 포함할 수 있습니다. Solaris 2.6 릴리스부터는 accesslist에서 정의되는 클라이언트 목록이 확장되었습니다. 자세한 내용은 share 명령을 사용하여 액세스 목록 설정을 참조하십시오.


주의

주의 - 다른 호스트에 대한 루트 액세스 권한을 부여하는 것은 보안상 다양한 사항을 의미합니다. -root= 옵션을 사용할 때는 주의해야 합니다.


root=client-name

client-name 값은 exportfs(1B)에서 제공되는 주소 목록에 대해 클라이언트 IP 주소를 확인하기 위해 AUTH_SYS 인증에서 사용됩니다. 일치하는 항목이 있으면 공유 중인 파일 시스템에 대한 root 액세스 권한이 부여됩니다.

root=host-name

AUTH_SYS 또는 RPCSEC_GSS와 같은 보안 NFS 모드에서는 서버가 액세스 목록에서 파생되는 호스트 기반 기본 이름 목록에 대해 클라이언트의 기본 이름을 확인합니다. 클라이언트 기본 이름의 일반 구문은 root@hostname입니다. Kerberos V의 경우 구문은 root/ hostname.fully.qualified@REALM입니다. host-name 값을 사용하는 경우 액세스 목록의 클라이언트에 기본 이름에 대한 자격 증명이 있어야 합니다. Kerberos V의 경우 클라이언트에는 해당 root/hostname.fully.qualified @REALM 기본 이름에 대한 유효한 keytab 항목이 있어야 합니다. 자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 Kerberos 클라이언트 구성을 참조하십시오.

sec=mode[:mode ]

mode는 파일 시스템 액세스 권한을 얻는 데 필요한 보안 모드를 선택합니다. 기본 보안 모드는 UNIX 인증입니다. 여러 모드를 지정할 수는 있지만 명령줄당 각 보안 모드를 한 번씩만 사용해야 합니다. 각 -mode 옵션은 다른 -mode가 발견될 때까지 모든 후속 -rw, -ro, -rw=, -ro=, -root=-window= 옵션에 적용됩니다. -sec=none을 사용하는 경우 모든 사용자가 nobody 사용자에게 매핑됩니다.

window=value

value는 NFS 서버에서 자격 증명의 최대 수명(초)을 선택합니다. 기본값은 30000초(8.3시간)입니다.

share 명령을 사용하여 액세스 목록 설정

accesslist에는 도메인 이름, 서브넷 번호 또는 액세스를 거부할 항목은 물론 표준 -ro=, -rw= 또는 -root= 옵션도 포함될 수 있습니다. 이러한 확장을 사용하면 긴 클라이언트 목록을 유지 관리하거나 이름 공간을 변경할 필요 없이 단일 서버에서 파일 액세스를 간편하게 제어할 수 있습니다.

이 명령은 대부분의 시스템에서는 읽기 전용 액세스 권한을 제공하지만 roselilac에 대해서는 읽기/쓰기 액세스 권한을 허용합니다.

# share -F nfs -o ro,rw=rose:lilac /usr/src

다음 예제에서는 eng 넷 그룹의 모든 호스트에 대한 읽기 전용 액세스 권한이 지정됩니다. rose 클라이언트에만 읽기/쓰기 액세스 권한이 부여됩니다.

# share -F nfs -o ro=eng,rw=rose /usr/src

주 - 인수를 사용하지 않고는 rwro를 모두 지정할 수 없습니다. 읽기/쓰기 옵션이 지정되어 있지 않으면 모든 클라이언트에 대해 기본적으로 읽기/쓰기가 사용됩니다.


하나의 파일 시스템을 여러 클라이언트와 공유하려면 같은 행에 모든 옵션을 입력해야 합니다. 같은 객체에 대해 share 명령을 여러 번 호출해도 마지막으로 실행한 명령만 “저장”됩니다. 이 명령을 사용하면 3개 클라이언트 시스템에 읽기/쓰기 권한으로 액세스할 수 있지만, rosetulip에만 루트 파일 시스템 액세스 권한이 부여됩니다.

# share -F nfs -o rw=rose:lilac:tulip,root=rose:tulip /usr/src

여러 인증 방식을 사용하는 파일 시스템을 공유할 때는 올바른 보안 모드 뒤에 -ro, -ro=, -rw, -rw=, -root-window 옵션을 포함하십시오. 이 예에서는 이름이 eng인 넷 그룹의 모든 호스트에 대해 UNIX 인증을 선택합니다. 이러한 호스트는 읽기 전용 모드에서만 파일 시스템을 마운트할 수 있습니다. tuliplilac 호스트는 Diffie-Hellman 인증을 사용하는 경우 파일 시스템을 읽기/쓰기로 마운트할 수 있습니다. 이러한 옵션을 사용하는 경우 tuliplilac은 DH 인증을 사용하지 않아도 파일 시스템을 읽기 전용으로 마운트할 수 있습니다. 그러나 이 경우에는 eng 넷 그룹에 호스트 이름이 포함되어 있어야 합니다.

# share -F nfs -o sec=dh,rw=tulip:lilac,sec=sys,ro=eng /usr/src

UNIX 인증이 기본 보안 모드이기는 하지만 -sec 옵션을 사용하는 경우에는 UNIX 인증이 포함되지 않습니다. 따라서 UNIX 인증을 다른 인증 방식과 함께 사용하려는 경우에는 -sec=sys 옵션을 포함해야 합니다.

실제 도메인 이름과 마침표를 앞에 붙여서 액세스 목록에서 DNS 도메인 이름을 사용할 수 있습니다. 마침표 뒤의 문자열은 정규화된 호스트 이름이 아닌 도메인 이름입니다. 다음 항목에서는 eng.example.com 도메인의 모든 호스트에 대한 마운트 액세스를 허용합니다.

# share -F nfs -o ro=.:.eng.example.com /export/share/man

이 예제에서는 단일 “.”가 NIS 이름 공간을 통해 일치되는 모든 호스트와 일치합니다. 이러한 이름 서비스에서 반환되는 결과에는 도메인 이름이 포함되지 않습니다. “.eng.example.com” 항목은 이름 공간 확인을 위해 DNS를 사용하는 모든 호스트와 일치합니다. DNS는 항상 정규화된 호스트 이름을 반환합니다. 따라서 DNS와 다른 이름 공간을 결합하여 사용하는 경우에는 더 긴 항목이 필요합니다.

실제 네트워크 번호 또는 네트워크 이름과 “@”를 앞에 붙여 액세스 목록에서 서브넷 번호를 사용할 수 있습니다. 이 문자는 네트워크 이름을 넷 그룹이나 정규화된 호스트 이름과 구분합니다. 서브넷은 /etc/networks 또는 NIS 이름 공간에서 식별해야 합니다. 다음 항목을 사용하는 경우 192.168 서브넷을 eng 네트워크로 식별한 경우와 같은 효과를 얻을 수 있습니다.

# share -F nfs -o ro=@eng /export/share/man
# share -F nfs -o ro=@192.168 /export/share/man
# share -F nfs -o ro=@192.168.0.0 /export/share/man

마지막 두 항목은 전체 네트워크 주소를 포함하지 않아도 됨을 보여줍니다.

CIDR(Classless Inter-Domain Routing)에서와 같이 네트워크 접두어가 바이트 맞춤되어 있지 않으면 명령줄에서 마스크 길이를 명시적으로 지정할 수 있습니다. 마스크 길이는 주소 접두어에서 네트워크 이름이나 네트워크 번호(슬래시 포함) 및 중요한 비트 번호를 따라 정의됩니다. 예를 들면 다음과 같습니다.

# share -f nfs -o ro=@eng/17 /export/share/man
# share -F nfs -o ro=@192.168.0/17 /export/share/man

이 예제에서 “/17”은 주소의 첫 17비트가 마스크로 사용됨을 나타냅니다. CIDR에 대한 추가 정보는 RFC 1519를 참조하십시오.

항목 앞에 “-”를 배치하여 음수 액세스를 선택할 수도 있습니다. 항목은 왼쪽부터 오른쪽으로 읽습니다. 따라서 음수 액세스 항목이 적용되는 항목 앞에 음수 액세스 항목을 배치해야 합니다.

# share -F nfs -o ro=-rose:.eng.example.com /export/share/man

이 예제에서는 이름이 rose인 호스트를 제외하고 eng.example.com 도메인의 모든 호스트에 대한 액세스를 허용합니다.

unshare 명령

이 명령을 사용하면 이전에 사용 가능했던 파일 시스템을 클라이언트가 마운트할 수 없도록 지정할 수 있습니다. NFS 파일 시스템 공유를 해제하면 기존 마운트를 사용한 클라이언트로부터의 액세스가 금지됩니다. 파일 시스템을 클라이언트에 마운트할 수는 있지만 파일에는 액세스할 수 없습니다. unshare 명령은 -t 옵션을 사용하여 파일 시스템 공유를 일시적으로 해제하는 경우가 아니면 공유를 영구적으로 삭제합니다.


주 - 파일 시스템 공유를 해제했다가 다시 공유할 때 NFS 버전 4가 작동하는 방식에 대한 자세한 내용은 NFS 버전 4에서 파일 시스템 공유 해제 및 다시 공유를 참조하십시오.


다음은 특정 파일 시스템의 공유를 해제하는 예입니다.

# unshare /usr/src

shareall 명령

이 명령을 사용하면 여러 파일 시스템을 공유할 수 있습니다. 옵션을 포함하지 않고 사용하는 경우 이 명령은 SMF 저장소의 모든 항목을 공유합니다. 파일 이름을 포함하여 share 명령줄이 나열되는 파일 이름을 지정할 수 있습니다.

다음은 로컬 파일에 나열되는 모든 파일 시스템을 나열하는 예입니다.

# shareall /etc/dfs/special_dfstab

unshareall 명령

이 명령은 현재 공유되는 모든 리소스를 사용할 수 없도록 지정합니다. -F FSType 옵션은 /etc/dfs/fstypes에 정의되어 있는 파일 시스템 유형 목록을 선택합니다. 이 플래그를 사용하면 공유 해제할 특정 파일 시스템 유형을 선택할 수 있습니다. 기본 파일 시스템 유형은 /etc/dfs/fstypes에서 정의됩니다. 특정 파일 시스템을 선택하려면 unshare 명령을 사용합니다.

다음은 모든 NFS 유형 파일 시스템을 공유 해제하는 예입니다.

# unshareall -F nfs

showmount 명령

이 명령은 다음 중 하나를 표시합니다.


주 - showmount 명령은 NFS 버전 2 및 버전 3 내보내기만 표시합니다. 이 명령은 NFS 버전 4 내보내기는 표시하지 않습니다.


명령 구문은 다음과 같습니다.

showmount [ -ade ] [ hostname ]

-a

모든 원격 마운트 목록을 인쇄합니다. 각 항목에는 클라이언트 이름과 디렉토리가 포함됩니다.

-d

클라이언트가 원격으로 마운트한 디렉토리 목록을 인쇄합니다.

-e

공유되거나 내보낸 파일 목록을 인쇄합니다.

hostname

정보를 수집할 NFS 서버를 선택합니다.

hostname을 지정하지 않으면 로컬 호스트를 질의합니다.

다음 명령은 클라이언트 및 클라이언트가 마운트한 모든 로컬 디렉토리를 나열합니다.

# showmount -a bee
lilac:/export/share/man
lilac:/usr/src
rose:/usr/src
tulip:/export/share/man

다음 명령은 마운트된 디렉토리를 나열합니다.

# showmount -d bee
/export/share/man
/usr/src

다음 명령은 공유된 파일 시스템을 나열합니다.

# showmount -e bee
/usr/src                                (everyone)
/export/share/man                    eng

/network/nfs/server:default 서비스의 nfs_props/showmount_info 등록 정보는 showmount 명령으로 클라이언트에 표시되는 정보의 양을 제어합니다. 기본값은 full입니다. 이 값을 none으로 설정하면 클라이언트는 클라이언트가 마운트할 수 있는 서버의 원격 파일 시스템만 볼 수 있습니다. 다른 클라이언트에 대한 정보는 표시되지 않습니다. 이 등록 정보를 변경하는 방법은 예 2-3을 참조하십시오.

nfsref 명령

nfsref 명령은 NFSv4 참조를 추가, 삭제 또는 나열하는 데 사용됩니다. 명령 구문은 다음과 같습니다.

nfsref add path location [ location … ]

nfsref remove path

nfsref lookup path

path

구문 재분석 지점의 이름을 선택합니다.

location

구문 재분석 지점과 연관시킬 NFS 또는 SMB 공유 파일 시스템을 하나 이상 식별합니다.

FedFS 명령

다음은 FedFS 서비스와 관련된 명령입니다.

nsdb-list

LDAP 서버에 저장된 모든 FedFS 데이터를 나열합니다.

nsdb-nces

LDAP 서버의 이름 지정 컨텍스트 및 관련 식별 이름을 나열합니다.

nsdb-resolve-fsn

선택한 파일 세트 이름의 파일 세트 위치를 보여 줍니다.

nsdb-update-nci

FedFS 데이터의 식별 이름을 관리합니다.

nsdbparams

FedFS 연결을 관리합니다.

명령 사용 방법의 예를 보려면 FedFS 관리를 참조하십시오.