
新しいサーバー(ZFSからNFSへ)にNFSをマウントしています。
ところで、ディレクトリに入ろうとすると権限が拒否されます。
すべてのプラットフォームはOracle Linux 7.8です。
/etc/fstab:
IP_OF_ZFS:/ZFS_PATH/ZFS_PATH /OS_LEVEL_PATH/OS_LEVEL_PATH/OS_LEVEL_PATH nfs rw,bg,hard,nointr,rsize=1048576,wsize=1048576,tcp,actimeo=0,vers=3 0 0
/etc/mtab:
IP_OF_ZFS:/ZFS_PATH/ZFS_PATH /OS_LEVEL_PATH/OS_LEVEL_PATH/OS_LEVEL_PATH nfs rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,acregmin=0,acregmax=0,acdirmin=0,acdirmax=0,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=IP_OF_ZFS,mountvers=3,mountport=20048,mountproto=tcp,local_lock=none,addr=IP_OF_ZFS 0 0
/etc/export:
/OS_LEVEL_PATH/OS_LEVEL_PATH/OS_LEVEL_PATH IP_OF_ZFS (rw,sync,no_root_squash)
マウントコマンド:
mount -t nfs IP_OF_ZFS:/ZFS_PATH/ZFS_PATH /OS_LEVEL_PATH/OS_LEVEL_PATH/OS_LEVEL_PATH -o rw,bg,hard,nointr,rsize=1048576,wsize=1048576,tcp,actimeo=0,vers=3
成功したインストール:
[root@hostname ~]# df -hP
Filesystem Size Used Avail Use% Mounted on
IP_OF_ZFS:/ZFS_PATH/ZFS_PATH 50T 2.6T 48T 6% /OS_LEVEL_PATH/OS_LEVEL_PATH/OS_LEVEL_PATH
ただし、権限拒否エラーが発生します。
オペレーティングシステムレベルのエラー:
[root@hostname ~]# cd /OS_LEVEL_PATH_1/
[root@hostname OS_LEVEL_PATH_1]# ls -ltrh
total 0
drwxr-xr-x 3 oracle oinstall 22 Dec 28 18:00 OS_LEVEL_PATH_2
[root@hostname OS_LEVEL_PATH_1]# cd OS_LEVEL_PATH_2
[root@hostname OS_LEVEL_PATH_2]# ls -ltrh
total 8.5K
drwx------+ 4 1001 grid 24 Jan 20 12:23 OS_LEVEL_PATH_3
[root@hostname OS_LEVEL_PATH_2]# cd OS_LEVEL_PATH_3
-bash: cd: OS_LEVEL_PATH_3: Permission denied
oracle、グリッド、またはルートを使用してOS_LEVEL_PATH_3を入力しようとしたとき。拒否する権限を付与します。
このエラーをどのように解決できますか?
挨拶、
答え1
NFSバージョン3を使用しているため、ユーザーはUID / GID番号で識別されます。no_root_squash
エクスポートオプションを使用しても、root
NFS クライアントホストのユーザーは、NFS サーバーホストに関して特別な意味を持つわけではありません。このNFS共有では、root
NFSクライアントユーザーは厳格な権限しか持つことができないため、root
アクセス権を付与する必要があります。他のユーザー権限と同様に
このOS_LEVEL_PATH_3
ディレクトリは、サーバーのUID 1001が所有しています。クライアントには、このUIDに対応するユーザーがなく、+
権限文字列の末尾にあるシンボルで識別されるACLがディレクトリにあります。getfacl /OS_LEVEL_PATH_1/OS_LEVEL_PATH_2/OS_LEVEL_PATH_3
完全なACLを表示するには実行してください。
ACLが他のユーザーにアクセスを許可しない限り、UID 1001を持つユーザーだけがディレクトリにアクセスできますOS_LEVEL_PATH_3
。 NFSサーバーで実行してid 1001
UID 1001を持つユーザーを確認し、サーバーと同じユーザー名でクライアントからユーザー#1001を作成するか、OS_LEVEL_PATH_3
NFSサーバー上のディレクトリのACLを変更する必要があります(setfacl
Linuxの場合はコマンドを使用)。 、実際に存在し、アクセスが必要なクライアントに一致するUID / GIDを持つユーザー/グループにアクセスを許可する他のシステム(Linux以外の場合)があります。