<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Hunting for NFSv4 illegal filename in Network and Storage Protocols</title>
    <link>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109282#M7945</link>
    <description>&lt;P&gt;Context: cDot 8.3 serving data mostly over NFS, volumes langage set to fr.UTF-8&lt;/P&gt;
&lt;P&gt;We work in a mixed NFSv3 (old legacy UNIX clients) and NFSv4 (EL5, EL6 &amp;amp; Ubuntu clients) environment.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sometimes an ISO encoded filename is created by a user from a NFSv3 client. Such filename is invalid for NFSv4 and not displayed with the ls command, this is expected as UTF8 encoding of filenames is mandatory with NFSv4.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My problem is to spot the invalid filenames to fix them, and also correct user environment/application/system configuration on the NFSv3 client, to prevent further illegal names in the future. I know the convmv command in Linux, but scanning about 200M files is quite a challenge, so I am searching for something more direct to detect the invalid filenames.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When an illegal filename is refused to an NFSv4 client, the filer generated an event like those below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;&amp;gt; event log show -node * -messagename Nblade.Nfs4IllegalDirentName&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;Time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Node&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Severity&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Event&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;------------------- ---------------- ------------- ---------------------------&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;9/1/2015 09:24:39&amp;nbsp;&amp;nbsp; XXX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nblade.Nfs4IllegalDirentName: Directory entry with file ID '10546843' on the volume with MSID '2147484683' cannot be listed. Directory entry name is illegal for NFSv4.&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;9/1/2015 08:12:59&amp;nbsp;&amp;nbsp; XXX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nblade.Nfs4IllegalDirentName: Directory entry with file ID '9898938' on the volume with MSID '2147484680' cannot be listed. Directory entry name is illegal for NFSv4.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would like to make use of these events to catch those illegal filenames : the MSID giving the volume name (easy with &lt;FONT face="terminal,monaco" color="#333399"&gt;volume show -vserver nasc2 -msid xxxx&lt;/FONT&gt;), but how to use the file ID to retreive the file path ? As far as I have understood, the File ID is different from the inode number, so I do not know how to use this File ID. Any idea ?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;
&lt;P&gt;JL&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 04 Jun 2025 23:24:44 GMT</pubDate>
    <dc:creator>jld</dc:creator>
    <dc:date>2025-06-04T23:24:44Z</dc:date>
    <item>
      <title>Hunting for NFSv4 illegal filename</title>
      <link>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109282#M7945</link>
      <description>&lt;P&gt;Context: cDot 8.3 serving data mostly over NFS, volumes langage set to fr.UTF-8&lt;/P&gt;
&lt;P&gt;We work in a mixed NFSv3 (old legacy UNIX clients) and NFSv4 (EL5, EL6 &amp;amp; Ubuntu clients) environment.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sometimes an ISO encoded filename is created by a user from a NFSv3 client. Such filename is invalid for NFSv4 and not displayed with the ls command, this is expected as UTF8 encoding of filenames is mandatory with NFSv4.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My problem is to spot the invalid filenames to fix them, and also correct user environment/application/system configuration on the NFSv3 client, to prevent further illegal names in the future. I know the convmv command in Linux, but scanning about 200M files is quite a challenge, so I am searching for something more direct to detect the invalid filenames.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When an illegal filename is refused to an NFSv4 client, the filer generated an event like those below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;&amp;gt; event log show -node * -messagename Nblade.Nfs4IllegalDirentName&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;Time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Node&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Severity&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Event&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;------------------- ---------------- ------------- ---------------------------&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;9/1/2015 09:24:39&amp;nbsp;&amp;nbsp; XXX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nblade.Nfs4IllegalDirentName: Directory entry with file ID '10546843' on the volume with MSID '2147484683' cannot be listed. Directory entry name is illegal for NFSv4.&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="terminal,monaco" color="#333399"&gt;9/1/2015 08:12:59&amp;nbsp;&amp;nbsp; XXX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nblade.Nfs4IllegalDirentName: Directory entry with file ID '9898938' on the volume with MSID '2147484680' cannot be listed. Directory entry name is illegal for NFSv4.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would like to make use of these events to catch those illegal filenames : the MSID giving the volume name (easy with &lt;FONT face="terminal,monaco" color="#333399"&gt;volume show -vserver nasc2 -msid xxxx&lt;/FONT&gt;), but how to use the file ID to retreive the file path ? As far as I have understood, the File ID is different from the inode number, so I do not know how to use this File ID. Any idea ?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;
&lt;P&gt;JL&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Jun 2025 23:24:44 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109282#M7945</guid>
      <dc:creator>jld</dc:creator>
      <dc:date>2025-06-04T23:24:44Z</dc:date>
    </item>
    <item>
      <title>Re: Hunting for NFSv4 illegal filename</title>
      <link>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109291#M7946</link>
      <description>&lt;P&gt;try:&lt;/P&gt;&lt;P&gt;volume file show-inode -vserver &amp;lt;vserver&amp;gt; -volume &amp;lt;volume&amp;gt; -inode-number &amp;lt;file ID&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 01 Sep 2015 15:57:44 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109291#M7946</guid>
      <dc:creator>shatfield</dc:creator>
      <dc:date>2015-09-01T15:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: Hunting for NFSv4 illegal filename</title>
      <link>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109294#M7948</link>
      <description>&lt;P&gt;NetApp support gave me this alternate solution this afternoon:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;gt; set diag&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; *&amp;gt; volume explore -format inode &amp;lt;msid.fileid&amp;gt; -dump name&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;but I prefer your way that is simpler and nicer.&lt;/P&gt;&lt;P&gt;Many thanks. This will help me a lot to cleanup my volumes.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;JL&lt;/P&gt;</description>
      <pubDate>Tue, 01 Sep 2015 16:53:16 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Network-and-Storage-Protocols/Hunting-for-NFSv4-illegal-filename/m-p/109294#M7948</guid>
      <dc:creator>jld</dc:creator>
      <dc:date>2015-09-01T16:53:16Z</dc:date>
    </item>
  </channel>
</rss>

