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

문서 정보

머리말

1.  Oracle Solaris ZFS 파일 시스템(소개)

2.  Oracle Solaris ZFS 시작하기

3.  Oracle Solaris ZFS 저장소 풀 관리

4.  ZFS 루트 풀 구성 요소 관리

5.  Oracle Solaris ZFS 파일 시스템 관리

6.  Oracle Solaris ZFS 스냅샷 및 복제 작업

7.  ACL 및 속성을 사용하여 Oracle Solaris ZFS 파일 보호

8.  Oracle Solaris ZFS 위임 관리

ZFS 위임 관리 개요

ZFS 위임 권한을 사용 안함으로 설정

ZFS 권한 위임

ZFS 권한 위임(zfs allow)

ZFS 위임 권한 제거(zfs unallow)

ZFS 권한 위임(예)

ZFS 위임 권한 표시(예)

ZFS 위임 권한 제거(예)

9.  Oracle Solaris ZFS 고급 주제

10.  Oracle Solaris ZFS 문제 해결 및 풀 복구

11.  스냅샷 아카이브 및 루트 풀 복구

12.  Oracle Solaris ZFS 권장 방법

A.  Oracle Solaris ZFS 버전 설명

색인

ZFS 권한 위임(예)

예 8-1 개별 사용자에게 권한 위임

개별 사용자에게 createmount 권한을 위임할 때는 사용자가 기본 마운트 지점에 대한 권한을 가지도록 해야 합니다.

예를 들어, 사용자 mark에게 tank 파일 시스템에 대한 createmount 권한을 위임하려면 먼저 권한을 설정하십시오.

# chmod A+user:mark:add_subdirectory:fd:allow /tank/home

그런 다음 zfs allow 명령을 사용하여 create, destroymount 권한을 위임하십시오. 예를 들면 다음과 같습니다.

# zfs allow mark create,destroy,mount tank/home

그러면 사용자 marktank/home 파일 시스템에 고유한 파일 시스템을 만들 수 있습니다. 예를 들면 다음과 같습니다.

# su mark
mark$ zfs create tank/home/mark
mark$ ^D
# su lp
$ zfs create tank/home/lp
cannot create 'tank/home/lp': permission denied

예 8-2 그룹에 createdestroy 권한 위임

다음 예에서는 staff 그룹의 모두가 tank/home 파일 시스템에 파일 시스템을 만들고 마운트하며 고유한 파일 시스템을 삭제할 수 있도록 파일 시스템을 설정하는 방법을 보여줍니다. 단, staff 그룹 구성원이 다른 사람의 파일 시스템을 삭제할 수는 없습니다.

# zfs allow staff create,mount tank/home
# zfs allow -c create,destroy tank/home
# zfs allow tank/home
---- Permissions on tank/home ----------------------------------------
Create time permissions:
        create,destroy
Local+Descendent permissions:
        group staff create,mount
# su cindy
cindy% zfs create tank/home/cindy/files
cindy% exit
# su mark
mark% zfs create tank/home/mark/data
mark% exit
cindy% zfs destroy tank/home/mark/data
cannot destroy 'tank/home/mark/data': permission denied

예 8-3 올바른 파일 시스템 레벨에서 권한 위임

올바른 파일 시스템 레벨에서 사용자 권한을 위임해야 합니다. 예를 들어, 사용자 mark에게는 로컬 및 종속 파일 시스템에 대한 create, destroymount 권한이 위임되었습니다. 사용자 marktank/home 파일 시스템의 스냅샷을 만들 수 있는 로컬 권한을 위임 받았지만 고유 파일 시스템의 스냅샷을 만들 수 없습니다. 따라서 올바른 파일 시스템 레벨에서 snapshot 권한을 위임 받은 것이 아닙니다.

# zfs allow -l mark snapshot tank/home
# zfs allow tank/home
---- Permissions on tank/home ----------------------------------------
Create time permissions:
        create,destroy
Local permissions:
        user mark snapshot
Local+Descendent permissions:
        group staff create,mount
# su mark
mark$ zfs snapshot tank/home@snap1
mark$ zfs snapshot tank/home/mark@snap1
cannot create snapshot 'tank/home/mark@snap1': permission denied

종속 파일 시스템 레벨에서 사용자 mark에게 권한을 위임하려면 zfs allow -d 옵션을 사용하십시오. 예를 들면 다음과 같습니다.

# zfs unallow -l mark snapshot tank/home
# zfs allow -d mark snapshot tank/home
# zfs allow tank/home
---- Permissions on tank/home ----------------------------------------
Create time permissions:
        create,destroy
Descendent permissions:
        user mark snapshot
Local+Descendent permissions:
        group staff create,mount
# su mark
$ zfs snapshot tank/home@snap2
cannot create snapshot 'tank/home@snap2': permission denied
$ zfs snapshot tank/home/mark@snappy

그러면 사용자 marktank/home 파일 시스템 레벨 아래에만 스냅샷을 만들 수 있습니다.

예 8-4 복잡한 위임 권한 정의 및 사용

사용자 또는 그룹에 특정 권한을 위임할 수 있습니다. 예를 들어, 다음 zfs allow 명령은 staff 그룹에 특정 권한을 위임합니다. 또한 tank/home 파일 시스템이 만들어진 후 destroysnapshot 권한이 위임됩니다.

# zfs allow staff create,mount tank/home
# zfs allow -c destroy,snapshot tank/home
# zfs allow tank/home
---- Permissions on tank/home ----------------------------------------
Create time permissions:
        create,destroy,snapshot
Local+Descendent permissions:
        group staff create,mount

사용자 markstaff 그룹에 속하므로 tank/home에서 파일 시스템을 만들 수 있습니다. 또한 사용자 mark는 관련 권한을 가지고 있으므로 tank/home/mark2의 스냅샷을 만들 수 있습니다. 예를 들면 다음과 같습니다.

# su mark
$ zfs create tank/home/mark2
$ zfs allow tank/home/mark2
---- Permissions on tank/home/mark2 ----------------------------------
Local permissions:
        user mark create,destroy,snapshot
---- Permissions on tank/home ----------------------------------------
Create time permissions:
        create,destroy,snapshot
Local+Descendent permissions:
        group staff create,mount

하지만 사용자 mark는 관련 권한을 가지고 있지 않으므로 tank/home/mark에서 스냅샷을 만들 수 없습니다. 예를 들면 다음과 같습니다.

$ zfs snapshot tank/home/mark@snap1
cannot create snapshot 'tank/home/mark@snap1': permission denied

이 예에서 사용자 mark는 자신의 홈 디렉토리에 대한 create 권한을 가지고 있으므로 스냅샷을 만들 수 있습니다. 이 시나리오는 파일 시스템이 NFS 마운트 시스템인 경우 유용합니다.

$ cd /tank/home/mark2
$ ls
$ cd .zfs
$ ls
shares snapshot
$ cd snapshot
$ ls -l
total 3
drwxr-xr-x   2 mark    staff          2 Sep 27 15:55 snap1
$ pwd
/tank/home/mark2/.zfs/snapshot
$ mkdir snap2
$ zfs list
# zfs list -r tank/home
NAME                    USED  AVAIL  REFER  MOUNTPOINT
tank/home/mark           63K  62.3G    32K  /tank/home/mark
tank/home/mark2          49K  62.3G    31K  /tank/home/mark2
tank/home/mark2@snap1    18K      -    31K  -
tank/home/mark2@snap2      0      -    31K  -
$ ls
snap1  snap2
$ rmdir snap2
$ ls
snap1

예 8-5 ZFS 위임 권한 세트 정의 및 사용

다음 예에서는 권한 세트 @myset를 만들고 tank 파일 시스템에 대해 staff 그룹에 이 권한 세트와 rename 권한을 위임하는 방법을 보여 줍니다. 사용자 cindystaff 그룹에 속하며 tank에서 파일 시스템을 만들 수 있는 권한을 가지고 있지만, 사용자 lptank에서 파일 시스템을 만들 수 있는 권한을 가지고 있지 않습니다.

# zfs allow -s @myset create,destroy,mount,snapshot,promote,clone,readonly tank
# zfs allow tank
---- Permissions on tank ---------------------------------------------
Permission sets:
        @myset clone,create,destroy,mount,promote,readonly,snapshot
# zfs allow staff @myset,rename tank
# zfs allow tank
---- Permissions on tank ---------------------------------------------
Permission sets:
        @myset clone,create,destroy,mount,promote,readonly,snapshot
Local+Descendent permissions:
        group staff @myset,rename
# chmod A+group:staff:add_subdirectory:fd:allow tank
# su cindy
cindy% zfs create tank/data
cindy% zfs allow tank
---- Permissions on tank ---------------------------------------------
Permission sets:
        @myset clone,create,destroy,mount,promote,readonly,snapshot
Local+Descendent permissions:
        group staff @myset,rename
cindy% ls -l /tank
total 15
drwxr-xr-x   2 cindy   staff          2 Jun 24 10:55 data
cindy% exit
# su lp
$ zfs create tank/lp
cannot create 'tank/lp': permission denied