NFS3: NFS3 Operation Errors
Scan Type: Errors, Severity: High
Column value nfs.procedure_v3: procedure number
Column value nfs.status3: returned result with every procedure
https://www.rfc-editor.org/rfc/rfc1813
The nfsstat3 type is returned with every procedure's results except for the NULL procedure. A value of NFS3_OK indicates that the call completed successfully. Any other value indicates that some error occurred on the call, as identified by the error code.
nfsstat3
enum nfsstat3 {
NFS3_OK = 0,
NFS3ERR_PERM = 1,
NFS3ERR_NOENT = 2,
NFS3ERR_IO = 5,
NFS3ERR_NXIO = 6,
NFS3ERR_ACCES = 13,
NFS3ERR_EXIST = 17,
NFS3ERR_XDEV = 18,
NFS3ERR_NODEV = 19,
NFS3ERR_NOTDIR = 20,
NFS3ERR_ISDIR = 21,
NFS3ERR_INVAL = 22,
NFS3ERR_FBIG = 27,
NFS3ERR_NOSPC = 28,
NFS3ERR_ROFS = 30,
NFS3ERR_MLINK = 31,
NFS3ERR_NAMETOOLONG = 63,
NFS3ERR_NOTEMPTY = 66,
NFS3ERR_DQUOT = 69,
NFS3ERR_STALE = 70,
NFS3ERR_REMOTE = 71,
NFS3ERR_BADHANDLE = 10001,
NFS3ERR_NOT_SYNC = 10002,
NFS3ERR_BAD_COOKIE = 10003,
NFS3ERR_NOTSUPP = 10004,
NFS3ERR_TOOSMALL = 10005,
NFS3ERR_SERVERFAULT = 10006,
NFS3ERR_BADTYPE = 10007,
NFS3ERR_JUKEBOX = 10008
};
program NFS_PROGRAM {
version NFS_V3 {
void
NFSPROC3_NULL(void) = 0;
GETATTR3res
NFSPROC3_GETATTR(GETATTR3args) = 1;
SETATTR3res
NFSPROC3_SETATTR(SETATTR3args) = 2;
LOOKUP3res
NFSPROC3_LOOKUP(LOOKUP3args) = 3;
ACCESS3res
NFSPROC3_ACCESS(ACCESS3args) = 4;
READLINK3res
NFSPROC3_READLINK(READLINK3args) = 5;
READ3res
NFSPROC3_READ(READ3args) = 6;
WRITE3res
NFSPROC3_WRITE(WRITE3args) = 7;
CREATE3res
NFSPROC3_CREATE(CREATE3args) = 8;
MKDIR3res
NFSPROC3_MKDIR(MKDIR3args) = 9;
SYMLINK3res
NFSPROC3_SYMLINK(SYMLINK3args) = 10;
MKNOD3res
NFSPROC3_MKNOD(MKNOD3args) = 11;
REMOVE3res
NFSPROC3_REMOVE(REMOVE3args) = 12;
RMDIR3res
NFSPROC3_RMDIR(RMDIR3args) = 13;
RENAME3res
NFSPROC3_RENAME(RENAME3args) = 14;
LINK3res
NFSPROC3_LINK(LINK3args) = 15;
READDIR3res
NFSPROC3_READDIR(READDIR3args) = 16;
READDIRPLUS3res
NFSPROC3_READDIRPLUS(READDIRPLUS3args) = 17;
FSSTAT3res
NFSPROC3_FSSTAT(FSSTAT3args) = 18;
FSINFO3res
NFSPROC3_FSINFO(FSINFO3args) = 19;
PATHCONF3res
NFSPROC3_PATHCONF(PATHCONF3args) = 20;
COMMIT3res
NFSPROC3_COMMIT(COMMIT3args) = 21;
} = 3;
} = 100003;
Out of range (undefined) procedure numbers result in RPC errors. Refer to [RFC1057] for more detail.
Scenario #1
NFS3ERR_NOENT = 2
No such file or directory. The file or directory name
specified does not exist.
NFS3ERR_NOENT is expected if file was removed before lookup.
Example:
27880 192.168.20.33 192.168.20.38 683 2049 2024-12-17 07:54:43.631188 13.108070 0.000130 NFS V3 CREATE Call (Reply In 27881), DH: 0x4a22a0eb/.xxxx-uidlist.lock Mode: EXCLUSIVE 246 180
27881 192.168.20.38 192.168.20.33 2049 683 2024-12-17 07:54:43.631545 13.108427 0.000357 NFS V3 CREATE Reply (Call In 27880) 366 300
27905 192.168.20.33 192.168.20.38 683 2049 2024-12-17 07:54:43.635962 13.112844 0.000087 NFS V3 REMOVE Call (Reply In 27906), DH: 0x4a22a0eb/.xxxx-uidlist.lock 234 168
27906 192.168.20.38 192.168.20.33 2049 683 2024-12-17 07:54:43.637228 13.114110 0.001266 NFS V3 REMOVE Reply (Call In 27905) 214 148
27913 192.168.20.33 192.168.20.38 683 2049 2024-12-17 07:54:43.639273 13.116155 0.000052 NFS V3 LOOKUP Call (Reply In 27916), DH: 0x4a22a0eb/.xxxx-uidlist.lock 234 168
27916 192.168.20.38 192.168.20.33 2049 683 2024-12-17 07:54:43.639413 13.116295 0.000010 NFS V3 LOOKUP Reply (Call In 27913) Error: NFS3ERR_NOENT 186 120