hyung@cup.portal.com (Henry K Yung) (08/09/89)
Sorry if this question has been addressed before... I've heard rumors that someone has written a public domain NFS server. Is there such a thing? If yes, where can I get this PD source? Thanks in advance for any info. Hank
hyung@cup.portal.com (Henry K Yung) (08/16/89)
Thanks for all the responses to my recent query regarding a public domain NFS server. However, mainly because of my fault for not specifying what platform I am interested in, all the responses I received pointed to PC's SOS NFS server. What I am really looking for is a Unix based public domain NFS server. Or for that matter, even a VMS based version is fine. Any ideas as to where I can find such a server? Thanks very much in advance Hank
neil@gid.co.uk (Neil Todd) (08/19/89)
From article <21340@cup.portal.com>, by hyung@cup.portal.com (Henry K Yung): : : Thanks for all the responses to my recent query regarding : a public domain NFS server. However, mainly because of my fault : for not specifying what platform I am interested in, all the : responses I received pointed to PC's SOS NFS server. : : What I am really looking for is a Unix based public domain : NFS server. Or for that matter, even a VMS based version is fine. : Any ideas as to where I can find such a server? : Der Mouse did such a thing for a 4.3 kernel, runs very nicely (I post details in a couple of days when i dig them out) Neil
neil@ist.CO.UK (Neil Todd) (08/23/89)
From article <2363@istop.ist.CO.UK>, by neil@gid.co.uk (Neil Todd): > From article <21340@cup.portal.com>, by hyung@cup.portal.com (Henry K Yung): > : (stuff deleted) > : What I am really looking for is a Unix based public domain > : NFS server. Or for that matter, even a VMS based version is fine. > : Any ideas as to where I can find such a server? > : > > Der Mouse did such a thing for a 4.3 kernel, runs very nicely (I post > details in a couple of days when i dig them out) > > Neil As promised:- der Mouse (mouse@mcgill-vision.uucp) Here is an extract from the top level README - remember this was for 4.3BSD and operates at the kernel level. You also get a pmapd, an nfsd and a mountd. I attach the README to show that installation is easy and well thought out, I RTFM'd and it worked first time. Neil (The rest is README) `` ...To install, first install the patches found in the sys subdirectory. There are some patch files there; each of these is a patch that should be applied to its corresponding file under /sys (for example, h/inode.h.patch is a patch for /sys/h/inode.h). Apply these patches (you should probably keep copies of the originals so you can back things out if you want to). If you have Larry Wall's patch program, you can feed the patches to it. If not, you can get patch or simply apply them by hand (none of them are very complicated). Make a directory /sys/mnfs and copy the contents of sys/mnfs to it. The Makefiles in some of the subdirectories assume that this directory is called /sys/mnfs for purposes of a -I option so the compiler can find three include files; you can change the name, but you will have to change the Makefiles to match and you will have to change a file name when editing the conf/files.MACHINENAME file during the kernel installation. As distributed, the mount daemon reads a file /local/etc/exports which is similar to Sun's /etc/exports file. If you wish to change the pathname the mount daemon uses to find this file, edit user/mountd.c and change the initialization of exportlist[], right at the top just after all the includes (line 20 or so). Now you can run `make' in each of the subdirectories aux, librpc, libxdr, and user; but note that the other three must be finished before it will succeed in user. It is essential that you patch the .h files in the previous step before attempting this step. You now have the user level built. Now to install the kernel changes. First, configure it in. In /sys/conf you should have a file named after your machine (this is the argument you give to /etc/config). Edit this file and add a line options MNFS Now edit another file (create it if necessary) in /sys/conf, files.MACHINENAME (where MACHINENAME is your machine's name), and add a line mnfs/mnfs.c standard Now rerun config and remake your kernel. Test it, and when you are sure that installing the kernel support hasn't broken anything, you can continue. (It is OK to have the line in files.MACHINENAME for a non-NFS machine, because if the "options MNFS" line is not present, mnfs.c is effectively empty.) Notice that your machine name is specified two places. One is the name of the config file, the argument you give to config, and the other is on the "ident" line in the config file. I am not sure which one config uses as the machine name when it looks for the files.MACHINENAME file. '' ... `` The rsize and wsize options to mount are necessary because 4.3 limits UDP datagrams to a size smaller than Sun uses for NFS. This limit is easy to raise; in netinet/udp_usrreq.c, change the values for the udp_sendspace and udp_recvspace variables (on both the server and client machines). We have udp_sendspace set to 10240 and udp_recvspace set to 20512 and find there's no need for the restricted rsize and wsize. The rsize and wsize can probably be bigger than above for stock 4.3, but I am not sure how much bigger. If you have any problems, questions, whatever, just send me mail. der Mouse (mouse@mcgill-vision.uucp)