Add the missing pieces for the NFS filesystem: registry information.
Register the pnfs service (nfsd) as manual, so that it only gets started when user wants/needs it.
Same goes to the nfs41_driver service (driver). nfsd as a code modification specific to ReactOS so that it loads the driver
as soon as it gets started.

That means, in order to use NFS in ReactOS, you need to start the nfsd service: net start nfsd
Then, you can mount your remote share: net use * \\IP\path (you can replace * by a letter, e.g. z:)
There's no GUI stuff implemented yet for this in MPR.

If you want to access the share without mounting it in ReactOS (like, in Explorer), you've to be aware of a small detail:
after you start pnfs service, in explorer bar, type \\IP\nfs4\path. This is required so that NFS driver can claim the path
without troubles.

Something else you've to know: so far, tests where conducted with a remote share being 777, read-only and anonymously mounted.
Other scenarii are likely to fail (auth, rw, server?!, etc.).

Also note that if you attempt to mount a share on which you don't have traverse right, mounting will succeed but any later
operation will fail, refused by the remote NFS server. This is a bit different than the behavior on Linux where mount is denied
if traverse is not granted.

Final thing: this is highly experimental and not fully implemented yet: expect not working stuff, broken asserts, deadlocks, etc.

CORE-8204

svn path=/trunk/; revision=75120
This commit is contained in:
Pierre Schweitzer
2017-06-19 11:36:17 +00:00
parent 5ef4290a15
commit b3312ecfdf
+19 -1
View File
@@ -850,7 +850,7 @@ HKLM,"SYSTEM\CurrentControlSet\Control\Network\{4D36E974-E325-11CE-BFC1-08002BE1
HKLM,"SYSTEM\CurrentControlSet\Control\Network\{4D36E974-E325-11CE-BFC1-08002BE10318}","Class",0x00000000,"NetService"
HKLM,"SYSTEM\CurrentControlSet\Control\Network\{4D36E975-E325-11CE-BFC1-08002BE10318}",,0x00000000,"Network Protocol"
HKLM,"SYSTEM\CurrentControlSet\Control\Network\{4D36E975-E325-11CE-BFC1-08002BE10318}","Class",0x00000000,"NetTrans"
HKLM,"SYSTEM\CurrentControlSet\Control\NetworkProvider\Order","ProviderOrder",0x00000000,""
HKLM,"SYSTEM\CurrentControlSet\Control\NetworkProvider\Order","ProviderOrder",0x00000000,"nfs41_driver"
; NLS Files
HKLM,"SYSTEM\CurrentControlSet\Control\Nls\CodePage","37",0x00000000,"c_037.nls"
@@ -2092,6 +2092,24 @@ HKLM,"SYSTEM\CurrentControlSet\Services\ffs","ImagePath",0x00020000,"system32\dr
HKLM,"SYSTEM\CurrentControlSet\Services\ffs","Start",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\ffs","Type",0x00010001,0x00000002
; NFS Filesystem driver
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver","ErrorControl",0x00010001,0x00000000
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver","Group",0x00000000,"Network"
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver","ImagePath",0x00020000,"system32\drivers\nfs41_driver.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver","Start",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver","Type",0x00010001,0x00000002
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider","DeviceName",0x00000000,\Device\nfs41_driver
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider","Name",0x00000000,"NFS41 Network"
HKLM,"SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider","ProviderPath",0x00000000,System32\nfs41_np.dll
; NFS daemon
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","DisplayName",0x00000000,"NFSv4.1 Client"
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","ErrorControl",0x00010001,0x00000001
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","ImagePath",0x00020000,"%SystemRoot%\system32\nfsd.exe --noldap"
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","ObjectName",0x00000000,"LocalSystem"
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","Start",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\pnfs","Type",0x00010001,0x00000010
; Filesystem Filter Manager driver
HKLM,"SYSTEM\CurrentControlSet\Services\fltmgr","ErrorControl",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\fltmgr","Group",0x00000000,"FSFilter Infrastructure"