NFS : NFS 4 ACL ツール2020/05/04 |
NFS 4 ACL ツールをインストールすると、NFS(v4) ファイルシステム上でも ACL の設定が可能となります。
使用方法は ACL ツール (例は Ubuntu 18.04) と似た感じの使い勝手です。
|
|
[1] | NFSv4 で NFS 共有領域をマウントしている NFS クライアント上で NFS 4 ACL ツールをインストールします。 |
root@node01:~# apt -y install nfs4-acl-tools
|
[2] | 例として、[node01.srv.world] 上で [dlp.srv.world:/var/lib/nfs/share] の領域を NFSv4 で [/mnt] にマウントしているとします。 |
root@node01:~# df -hT /mnt Filesystem Type Size Used Avail Use% Mounted on dlp.srv.world:/var/lib/nfs/share nfs4 71G 1.3G 70G 2% /mntroot@node01:~# ll /mnt total 4 drwx------. 2 root root 26 May 20 19:12 testdir -rwx------. 1 root root 10 May 20 19:11 test.txt |
[3] | NFSv4 ファイルシステム上の ファイル/ディレクトリの ACL を表示する。 |
root@node01:~# nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcyroot@node01:~# nfs4_getfacl /mnt/testdir # file: /mnt/testdir A::OWNER@:rwaDxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy # 表示される ACL は [:] 区切りで下記の項目を表示 # ACE = Access Control Entry # (ACE Type):(ACE Flags):(ACE Principal):(ACE Permissions)
|
各項目の意味です。
|
[4] | ACE を追加/削除する。 |
root@node01:~# ll /mnt total 4 drwx------. 2 root root 26 Dec 20 19:12 testdir -rwx------. 1 root root 10 Dec 20 19:11 test.txtroot@node01:~# nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy # [/mnt/test.txt] ファイルへの一般的な読み取り/実行権を [ubuntu] ユーザーに付与 root@node01:~# nfs4_setfacl -a A::ubuntu@srv.world:rxtncy /mnt/test.txt
nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::1000:rxtcy A::GROUP@:tcy A::EVERYONE@:tcy # [ubuntu] ユーザーで確認 ubuntu@node01:~$ ll /mnt total 4 drwx------. 2 root root 26 Dec 21 10:12 testdir -rwxr-x---. 1 root root 10 Dec 21 10:11 test.txt
ubuntu@node01:~$ cat /mnt/test.txt test file # [/mnt/test.txt] ファイルへの一般的な読み取り/実行権を [ubuntu] ユーザーから削除 root@node01:~# nfs4_setfacl -x A::1000:rxtcy /mnt/test.txt
nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy |
[5] | ACL を直接編集する。 |
root@node01:~# nfs4_setfacl -e /mnt/test.txt
# $EDITOR にセットされたエディター (null の場合のデフォルトは vi) が起動し、ACL を直接編集できる
## Editing NFSv4 ACL for file: /mnt/test.txt
A::OWNER@:rwaxtTcCy
A::GROUP@:tcy
A::EVERYONE@:tcy
|
[6] | ACE をファイルから追加する。 |
A::ubuntu@srv.world:RX A::debian@srv.world:RWX # ファイルを指定して ACL 付与 root@node01:~# nfs4_setfacl -A acl.txt /mnt/test.txt
nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::1000:rxtcy A::1001:rwaxtcy A::GROUP@:tcy A::EVERYONE@:tcy |
[7] | 既存の ACE を新しい ACE で置き換える。 |
A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy # ファイルを指定して ACL 置換 root@node01:~# nfs4_setfacl -S acl.txt /mnt/test.txt
nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy |
[8] | 特定の ACE を新しい ACE で置き換える。 |
root@node01:~# nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:tcy A::EVERYONE@:tcy # EVERYONE の ACE を読み取り/実行可に置き換え root@node01:~# nfs4_setfacl -m A::EVERYONE@:tcy A::EVERYONE@:RX /mnt/test.txt
nfs4_getfacl /mnt/test.txt # file: /mnt/test.txt A::OWNER@:rwaxtTcCy A::GROUP@:rxtcy A::EVERYONE@:rxtcy |
Sponsored Link |
|