jbaseico.jpg (1294 bytes) jRFS configuration for NT

Man Page Index

jRFS Quick Start
Server configuration
Client configuration
Directory access
Remote file configuration
Select configuration
Unix access

Server Configuration

As Administrator

1. Create directory to contain jRFS configuration files.



2. Copy template files from jBASE release directory to configuration directory.

JCOPY C:\JBASE30\config jnet_config jrfs_config jnet_map jnet_env


3. Create directory to contain jRFS security file.



4. Copy template file from jBASE release directory to security directory.

JCOPY C:\JBASE30\config jnet_access


5. Add environment variables to SYSTEM environment.

PATH add C:\JBASE30\bin


6. Add jRFS service name to services file.


Add entry jRFS 5001/tcp


7. Configure jRFS security file.

JED/ED C:\JNETACCESS jnet_access

e.g. To enable client user ‘greg’ on machine ‘large’ to access files on this machine, ‘slim’, as user ‘jim’ then add the following entry to the jnet_access file.

large greg jim jRFS Password

Where Password is the clear text password for local user ‘jim’. If machine ‘large’ is part of a network domain then you may need to add the domain extension as well. This depends on how the local machine resolves the IP address, i.e. via a domain name server or local /etc/host file.

large.jac.co.uk greg jim jRFS Password

If the connect request information does not EXACTLY match the jnet_access information then connection will not be allowed. The C:\JNETACCESS directory should be made read only for service/administrator processes.


8. Add jRFS to available services.

JRFSINSTALL jRFS "jBASE Remote File Service" C:\JBASE30\bin\jRFS.exe

Note: To uninstall use jRFSREMOVE jRFS


9. Enable jRFS service.

From Control Panel choose Services, select jRFS entry, select startup, tick automatic then ok then close. To enable service proper need to reboot system so that system environment variables are picked up by service. The jRFS service should be started automatically.

Note: Before commencing and upgrade of jBASE, the the jRFS service must be stopped.



Client Configuration

1. Add jRFS service name to services file.

WIN95 ED/JED C:\WINDOWS services

Add entry jRFS 5001/tcp


2. Configure Client map file.

Client user names can be mapped to network/server names using the jnet_map configuration file used by the client system. For example, to map user name ‘greg’ on client machine ‘large’ to use user name ‘jim’ on machine ‘slim’, add the following entries to the jnet_map file.

LOCAL: slim jRFS greg greg
REMOTE:slim.jac.co.uk jRFS jim

This entry maps machine name ‘slim’ to use the full domain name ‘slim.jac.co.uk’, for example purposes only, leaves the required service name as ‘jRFS’ and maps the local client name ‘greg’ to invoke a network/server local user name of ‘jim’. Thus client user ‘greg’ will use network/server name ‘jim’ to read/update files on target server. The client system can be configured to use the JBCNETDIR environment variable with a UNC name which points to the server configuration directory, which must be shared. Thus all configuration can be done on Server if required.

Client environment variable JBCNETDIR set to \\slim.jac.co.uk\JNETCONFIG



Directory Access

When the server gets a connection it will attempt to change to the specified network/server name, and also change current directory as specified for the user. To allow this user access to files in other directories you may need to set the JEDIFILEPATH. This can be done in the jnet_env file in the %JBCNETDIR% directory.

ENV: jRFS jim greg




Remote file configuration

Remote Files can be configured by creating a JEDIFILENAME_SYSTEM file, with Rpointer entries. e.g.


001  R
004  slim - Machine name or IP address

And invoked via JEDIFILENAME_MD Qpointers. e.g.


001  Q
002  SLIM
003  FILEX

Or alternatively use REMOTE File Pointers direct, e.g.

001 JBC__SOB JediInitREMOTE FILEX slim


001 JBC__SOB JediInitREMOTE \\slim\ShareName\FILEX slim

Note: Release 3.1 should allow ED \\slim\ShareName\FILEX via the jRFS mechanism.



Select configuration

Use RSELECT to execute select statement remotely. This will be determined automatically by Queries in Release 3.1, tunable via an environment variable.

RSELECT will check for both Dict and Data file being type REMOTE before invoking the select statement on the server otherwise the RSELECT will defer to normal SELECT action. Therefore if using direct Remote File Pointers ( i.e. JBC__SOB types) then you must define both DICT and DATA Remote File Pointers, e.g. REMOTEFILE and REMOTEFILE]D. For remote Q pointers this should be resolved automatically unless the DICT or DATA section is not remote.

When using RSELECT, by default it will use the internal Select command. This can be overridden if required by setting JBCNOINTERNAL to 1 as a system environment variable.

It appears that environment variables are only picked up by service processes after rebooting, so any change targeted for the jRFS service will require a reboot.



Unix Access

Access to NT via jRFS from Unix can be achieved by using same sort of ShareName format, although it uses forward slashes rather than backslashes.

e.g. REMOTEFILE ( File Pointer on UNIX)
001 JBC__SOB JediInitREMOTE //slim/ShareName/FILEX slim

Access to Unix via jRFS from Windows also allows access using the Samba demon configuration file if configured, e.g.

REMOTEFILE (File Pointer on Windows)
001 JBC__SOB JediInitREMOTE \\JACBOY1\SambaShareName\FILEX

To enable, set sambapath to samba configuration path in UNIX jrfs_config file, e.g.