Dell Unity:Unity OE 5.5にアップグレードした後、NFSエクスポートのファイルまたはフォルダーにアクセスできません

概要: LinuxユーザーはUnity OE 5.5にアップグレードした後、Network File System (NFS)エクスポートの一部のファイルまたはフォルダーにアクセスできない場合があります。

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

現象

  • Unityを操作環境(OE)5.5にアップグレードした後、一部のファイルにアクセスできない、またはフォルダーを一覧表示できないことにユーザーが気付くことがあります。
  • この問題は、次の条件下でのみ発生します。 
    • クライアントは、次を使用してNFSエクスポートをマウントします。 NFSv4.2の場合、アクセスは良好です。クライアントは、次の方法でNFSエクスポートをマウントします。 NFSv3、または NFSv4.0、または NFSv 4.1の詳細を確認してください。  
    • SELinux Linuxクライアントで有効になっています。 

次に例を示します。

  • ユーザー test_user NFSマウント ポイントのコンテンツを一覧表示できません /mnt を使用してマウントする場合 NFSv4.2の詳細を確認してください。 
[test_user@RHEL4 ~]$ mount -v | grep -i mnt
10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,seclabel,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.60.15.48)

[test_user@RHEL4 ~]$ ls -al /mnt
ls: cannot open directory '/mnt': Permission denied
  • ユーザー test_user を使用して、クライアントがNFSエクスポートを再マウントした後に、同じフォルダーを一覧表示できます。 NFSv4.1の詳細を確認してください。
[test_user@RHEL4 ~]$ mount -v | grep -i mnt
10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.60.15.48)


[test_user@RHEL4 ~]$ ls -al /mnt
total 16
drwxrwxrwx.  6 root root 8192 Jun 18 03:21 .
dr-xr-xr-x. 20 root root  271 Jun  8 19:07 ..
dr-xr-xr-x.  2 root bin   152 Apr 14 03:56 .etc
drwxr-xr-x.  2 root root  152 Jun 18 03:20 folder
drwxr-xr-x.  2 root root 8192 Apr 14 03:56 lost+found

原因

  • Unityのサポートを追加 NFSv4.2 Unity OE 5.5以降。 NFSv4.2 プロトコルのサポートにより、セキュリティとパフォーマンスが向上し、スペア ファイルとNFSラベル付けのNFS属性がサポートされます。
  • セキュリティラベル機能 NFSV4.2 セキュリティラベル ( SELinux コンテキスト) を NFS 共有経由で保存し、適用します。この機能は、Unity NASサーバーではデフォルトで有効になっています。 
  • 「When(時間)」 SELinux がLinuxクライアントで有効になっている場合、ファイル、フォルダー、プロセス、ポート、デバイスなど、システム内のすべてのオブジェクトにセキュリティ ラベルが割り当てられます。 
  • 既定のセキュリティ コンテキスト SELinux 次を使用してマウントされたNFSエクスポート内のファイルに割り当てます。 NFS v3 V4.0、または v4.1system_u:object_r:nfs_t:s0の詳細を確認してください。
[root@rhel8 test]# ls -alZ testv4.1
-rw-r--r--. 1 root root system_u:object_r:nfs_t:s0 0 Jun  1 21:47 testv4.1
  • クライアントがを使用してNFSエクスポートをマウントする場合 NFS v4.2の場合、NFS ファイルのデフォルトのセキュリティコンテキストは unconfined_u:object_r:default_t:s0の詳細を確認してください。
[root@rhel8 test]# ls -alZ testv4.2
-rw-r--r--. 1 root root unconfined_u:object_r:default_t:s0 0 Jun  1  2025 testv4.2
  • セキュリティ コンテキストの変更、特にセキュリティ タイプを nfs_t の出力を default_t 次のようなアクセスの問題が発生する可能性があります。 SELinux ユーザーまたはプロセスとファイルまたはフォルダーのセキュリティの種類を計算するポリシールールに基づいて、アクセス許可を決定します。

解決方法

    ユーザーは、セキュリティ、シンプルさ、機能要件などの優先順位に基づいて、1つのソリューションを選択する必要があります。 
     

    • 次のコマンドを使用してNFSエクスポートを再マウントします。 NFSv4.1, NFSv4.0, or NFSv3 クライアントから:
    mount -o vers=4.1 <nas server IP>:/<export> /<localmountpoint>
    • を使用したNFSエクスポートのマウント NFSv4.2 ただし、セキュリティ コンテキストを指定します。
    mount -o context=system_u:object_r:nfs_t:s0 <nas server IP>:/<export> /<localmountpoint>
    • NFSエクスポート内のファイルのセキュリティ タイプを、要件に基づいて適切なものに変更します。
    chcon <user>:<role>:<type>:<level> <file/folders>
    
    For example, change the file type to nfs_t. 
    
    [root@RHEL4 /]# ls -alZ /mnt/nfsv4.2
    -rw-r--r--. 1 root root system_u:object_r:default_t:s0 0 Jun 17 00:53 /mnt/nfsv4.2
    [root@RHEL4 /]# chcon -t nfs_t /mnt/nfsv4.2
    [root@RHEL4 /]# ls -alZ /mnt/nfsv4.2
    -rw-r--r--. 1 root root system_u:object_r:nfs_t:s0 0 Jun 17 00:53 /mnt/nfsv4.2
    

    その他の情報

    次の手順に従って、トラブルシューティングを行うことができます SELinux アクセスの問題。 

    1.ユーザーのセキュリティ コンテキストを確認します。

    [test_user@RHEL4 ~]$ id -Z
    user_u:user_r:user_t:s0
    
    1. を使用してNFSエクスポートがマウントされていることを確認します。 NFSv4.2seclabel が有効になっている場合:
    [test_user@RHEL4 ~]$ mount -v | grep mnt
    10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,seclabel,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.xx.xx.48)
    1. ファイルのセキュリティ コンテキストを確認し、問題を再現します。
    [test_user@RHEL4 ~]$ ls -aldZ /mnt
    drwxrwxrwx. 6 root root system_u:object_r:default_t:s0 8192 Jun 17 07:44 /mnt
    
    [test_user@RHEL4 ~]$ ls -al /mnt
    ls: cannot open directory '/mnt': Permission denied
    1. 確認 auditlog コマンドが失敗する理由を確認するには、次のようにします。
    [root@RHEL4 ~]# ausearch -m avc -ts recent | tail
    ----
    time->Tue Jun 17 18:30:59 2025
    type=PROCTITLE msg=audit(1750xxxx59.577:8407): proctitle=6C73002D2D636F6C6F723Dxxxxx46F002D616C002F6D6E74
    type=SYSCALL msg=audit(1750203059.577:8407): arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=5563f160ca70 a2=90800 a3=0 items=0 ppid=104637 pid=104661 auid=10086 uid=10086 gid=10086 euid=10086 suid=10086 fsuid=10086 egid=10086 sgid=10086 fsgid=10086 tty=pts1 ses=246 comm="ls" exe="/usr/bin/ls" subj=user_u:user_r:user_t:s0 key=(null)
    type=AVC msg=audit(1750xxxx59.577:8407): avc:  denied  { read } for  pid=104661 comm="ls" name="/" dev="0:47" ino=2 scontext=user_u:user_r:user_t:s0 tcontext=system_u:object_r:default_t:s0 tclass=dir permissive=0
    1. ユーザーが ls で、 /mntの場合、 ls process はユーザーのセキュリティタイプを継承し、 SELinux システムにより、セキュリティ タイプが user_t ファイルの種類に対する読み取り権限を持ちます default_tの詳細を確認してください。この場合、 ls コマンドが失敗しました。ソース セキュリティ タイプ user_t ファイルのセキュリティ タイプに対する読み取り権限がありません default_tの詳細を確認してください。 

    これは、次のセキュリティ ポリシー ルールを確認することで確認できます。

    root@RHEL4 ~]# sesearch -A -s user_t -t default_t -p read
    [root@RHEL4 ~]#
    1. 次のコマンドを実行すると、すべての権限タイプが一覧表示されます user_t ある型 default_tの詳細を確認してください。
    [root@RHEL4 ~]# sesearch -A -s user_t -t default_t
    allow domain base_file_type:dir { getattr open search };  
    allow domain file_type:blk_file map; [ domain_can_mmap_files ]:True
    allow domain file_type:chr_file map; [ domain_can_mmap_files ]:True
    allow domain file_type:file map; [ domain_can_mmap_files ]:True
    allow domain file_type:lnk_file map; [ domain_can_mmap_files ]:True
    allow user_usertype file_type:filesystem getattr;
    1. 上記の出力では、 user_t ドメインに属しており、かつ default_t に属している base_file_typeの詳細を確認してください。
      だから user_t 持っているもののみ getattr、開く、ディレクトリの検索権限を default_t 型。
    [root@RHEL4 mnt]# seinfo -t default_t -x
    
    Types: 1
       type default_t, base_file_type, file_type, mountpoint, non_auth_file_type, non_security_file_type;
    
    
    [root@RHEL4 mnt]# seinfo -t user_t -x | grep domain
       type user_t, application_domain_type, nsswitch_domain, corenet_unlabeled_type, domain, kernel_system_state_reader, netlabel_peer_type, privfd, process_user_target, scsi_generic_read, scsi_generic_write, syslog_client_type, pcmcia_typeattr_1, user_usertype, login_userdomain, userdomain, unpriv_userdomain, userdom_home_reader_type, userdom_filetrans_type, xdmhomewriter, x_userdomain, x_domain, dridomain, xdrawable_type, xcolormap_type;
    /pre>
    1. ユーザーは次のことができます cd の出力を /mnt オープンが許可されているためです。 
    >allow domain base_file_type:dir { getattr open search };   <<<<
    
    [test_user@RHEL4 ~]$ cd /mnt
    [test_user@RHEL4 mnt]$ ls
    ls: cannot open directory '.': Permission denied

    対象製品

    Dell EMC Unity, Dell Unity Operating Environment (OE)
    文書のプロパティ
    文書番号: 000334013
    文書の種類: Solution
    最終更新: 17 4月 2026
    バージョン:  4
    質問に対する他のDellユーザーからの回答を見つける
    サポート サービス
    お使いのデバイスがサポート サービスの対象かどうかを確認してください。