RI Title
RI logo

OS/2 and its sister eComStation are modern operating systems that provides many connectivity options. One popular means of transferring information between an OS/2 system and a host computer is with the "file transfer protocol" or FTP. The FTP daemon provides for both client and server capabilities, and OS/2 supports both. To enable a host computer to "pull" or fetch data from the OS/2 computer at any time, running the FTP server on the OS/2 system is the best choice.

UPDATE: Please download and install FtpServer that provides a simpler interface and may work with more FTP clients.


1. Unzip the distribution file into a directory of your choice, for example D:\Apps\FtpServer. If you're upgrading from a previous version, you should normally unzip into the directory you were already using to hold FtpServer - that way the new version will continue to use the existing INI file settings.
2. Optional: to create an FtpServer folder on your desktop, run FOLDER.CMD. This folder can subsequently be moved into another suitable place, for example your "Programs" folder.
3. Read the INF file.
4. Run Setup or VIOSetup to create users. (Alternatively, but only if you're too impatient to read the manual, run QuickStart.CMD as a "poor man's setup" to create one sample user.)

NOTE The graphical FTP client that comes with MS Windows, Internet Explorer does not handle the particular way the FTP Server shares the "d:/" drive. Please install a 3rd party program like FileZilla and open "d:/" or use Windown's FTP command line utility with "cd d:/" to access the resources.

All TCP/IP setup on OS/2 is done through the "TCP/IP Configuration (Local)" icon. The icon is found in the "System Setup" folder of OS/2, which is inside a folder called "Local Settings". These folders may be moved from their default locations, so look around the desktop for the icons. As an alternative, you can open an OS/2 Command Window and type the name of the program, "TCPCFG2" followed by Enter.

After opening the notebook, the first change to make is to enable the FTP server program, "ftpd", and cause it to start automatically whenever OS/2 is started. Choose the "Autostart" tab at the top of the dialog box to select the service. It is best to set FTP up as a "detached" (background) service, otherwise it will have its own window on the display which may be confusing to users. Select the "ftpd" entry, check the box "Autostart Service" and choose "Detached."

Before any FTP activity can take place, you must define one or more "user names" to use as logons to the FTP service. Each user name can have different permissions to access parts of the OS/2 file system. User names are defined with the "Security" tab of the dialog box. Press the "Add" button at the bottom of the dialog box.

Define a user name, a comment (if desired), and a password for the user name. The "home directory" will be the default directory chosen when this user logs into the FTP service. In the example below, the default directory is the directory where STDF logfiles are saved automatically by the tester. You might instead choose to make the parent "d:\riapps\testdata" directory the default, and require your script to specify the STDF subdirectory during the FTP session. Choose "OK" to save your changes and return to the dialog box.

The final step in setting up FTP is to specify the permissions for each "user name" defined. Select the user name in the list and press the "Configure" button next to "FTP Server" to configure its permission to access the file system.

The dialog box below grants the user permission to access the OS/2 filesystem. First check the box "Enable FTP access for this user". Then fill in the directories you want to permit the user to read and write files from. (Write permission is required to erase files under FTP.) In the simple case below, the user name is granted read and write access to only the directory d:\riapps\testdata\stdf. This is the most restrictive permission and it will prevent the user from using FTP commands to navigate to another directory, for example ..\csv for CSV files.

If you instead use the path "d:\riapps\testdata" for read and write permission, the user can access any file within the directory tree, including the STDF, CSV, and other subdirectories of d:\riapps\testdata. Even though the user can access the other subdirectories, the logon will still start in the "home" directory already chosen for the "user name" dialog -- d:\riapps\testdata\stdf. But it will permit the user to navigate to the other directories using FTP commands during the session.

The dialog box below shows a less restrictive way to set permissions for the user. In the "Directory Access for Read [Write]" fields, we have specified the part of the filesystem that we do NOT want the user to access, in this case the C: drive of the OS/2 system which contains all of the operating system itself. To invert the meaning of the field the box "Deny Read [Write] access to directories listed", just below the entry field, is checked. This permission would allow the user to navigate to any directory on the D: drive to read and write files during the FTP session.

Press "OK" to close this box and return to the previous dialog box.

At this point you may add more "user names" to the Security panel of the TCP/IP configuration. Each user name is given a different password and home directory. Each user name must be configured for FTP access separately as well. When you have configured all of the user names you need, press the OK box at the bottom of the dialog and you will get the confirmation message shown below.

When you press OK on this message box, a second confirmation dialog offers a choice of saving and rebooting the computer immediately, or saving the changes and letting you reboot the system later. The new FTP settings and ftpd server process will not work until OS/2 is rebooted.

WARNING If using the command line FTP client, remember to ALWAYS transfer files in "binary" mode. (type "binary" before "get" or "put" commands.)

PrintEmail Link
©2007-2022 Roos Instruments, Inc. All rights reserved.