In a recent article about the Integrated File System (IFS), I wrote the following:
"The CA/400 Shared Folders function is no longer just a connection to the QDLS file system; it is a connection to the entire IFS. And it is no longer called Shared Folders. In fact, it is not called anything. The whole function has been put under the covers of CA/400 and has been integrated right into Windows networking. Now, the PC sees the IFS on the AS/400 as just another network hard drive waiting to be assigned. Drive letters can be assigned to the entire IFS system, specific file systems, or specific subdirectories within specific file systems.
"Here is an example of the power of integration. Suppose a PC has drive letter I mapped to the entire IFS system. The following MS-DOS Make Directory command directed at the OS/400 library system would result in the creation of library MYLIB:
"The DOS MD command is interpreted by the IFS as an IFS CRTDIR command, which the QSYS.LIB file system translates to an OS/400 CRTLIB command. Recall, the first level directory "QSYS.LIB" is the name of the OS/400 library system. The ".LIB" extension on the library name "MYLIB" is required; it is not a DOS file extension, it tells the IFS that MYLIB is a library.
"You can do the same thing in Windows using any one of its many interfaces, such as Windows Explorer."
This prompted the following question from a reader:
"I recently read an article by Ron Turull and he mentioned having 'a PC has drive letter I mapped to the entire IFS system.' I cannot figure out how to do this. We are on V5R1 and our system name is ALPHA. I have mapped like this G:ALPHAQDLS. How do you map the entire IFS? I tried I:alpha but that does not work."
This is a very good question, one that warrants its own tip.
To answer that question, we must qualify it, or at least break it into two parts: before Client Access Express and after Client Access Express. That is, the process is different depending on which version of Client Access you are running.
The process is actually simpler for versions of Client Access without the Express moniker (i.e., older versions). Begin with Start->Find->Computer…. In the Named box on the Find dialogue, type an asterisk (*) and press Enter. Find your AS/400 (iSeries) in the resulting list of computers, right-click on it and then, select Map Network Drive… and continue with mapping the drive.
If the Map Network Drive… option is not available on the pop-up menu of the Find dialogue, then pull up Windows Explorer. Right-click on My Computer in the left-hand panel, then select Map Network Drive… from the pop-up menu. In the resulting Map Network Drive dialogue, select the drive letter you want to assign and then, in the Path box, type "AS400Name", where AS400Name is your AS/400's computer name as shown in the Find Computer dialogue.
For example, if you haven't changed your system's name, it is probably still the default, which is the serial number. So, your system's name is something like S104JHSA. In this case, you would type "S104JHSA" in the Path box. Alternatively, you can pull down the Path drop-down list and look for you system there.
To map a drive to a specific IFS files system, you would enter "AS400NameFileSystem" for the path. For example, to map the QDLS file system, you would enter "S104JHSAQDLS". Note, when you do this, that mapped drive letter can access only that file system and anything below it in the file structure, but nothing above it.
CA Express changes some things
With V5R1 of OS/400 and Client Access Express, you no longer see your AS/400 as a computer in the Network Neighbor. You can still map its network drives through the Windows Explorer process just discussed, but you need to share its drive first.
This is done by launching Operations Navigator. Once it is running and you see your AS/400 listed under Primary Environment, expand it by clicking the plus-sign next to it. Next, expand File Systems, then click on File Shares to check if a share has already been established for the file system you want to map (e.g., if you want to map the entire IFS, look for a share whose associated Path is "/".
If a share does not already exist, you will need to set one up. Do this by clicking on Integrated File System under File Systems. On the right-hand side of the screen, right-click the file system you want to map (note, click on Root if you want to map the entire IFS). On the resulting pop-up menu, select Sharing->New Share. Fill out the required information, which is fairly self-explanatory. Note the Share name you give it -- you will need it later when you map the drive.
Now you can map the drive as before with the Map Network Drive dialogue. Select the drive letter, then pull down the Path drop-down list. Look for the AS/400 name followed by the share name. For example, suppose you give the share name "EntireIFS" to a share of the Root. When you pull down the Path list in the Map Network Drive dialogue, you will see something like this: S104JHSAENTIREIFS.
Perhaps an easier way to map the drive is to click on File Shares under File Systems. Then, on the right-hand pane, right-click on the share you want to map and select Map Network Drive… on the pop-up menu. All you will need to do then is select the drive letter or just accept the defaults. Note, this mapping dialogue includes the initial log-on information.
- Ten things to remember when using the IFS
Using the IFS can be a little tricky. Ron Turull gives you 10 things to keep in mind.
- Understanding and taking advantage of the IFS
It's an old story, but if you are involved in any way with your iSeries' administration duties, you will want to be sure you understand your system's Integrated File System (IFS). Understanding what it is and how it works will allow you to take full advantage of the IFS. You also need to have a fairly comprehensive understanding of the IFS to perform routine saves and restores.
- List the contents of the IFS directory
Search400.com member Denzil D'Souza had a hurdle in one of his projects to list the contents of an IFS directory -- in the root system. The solutions he found on the Internet were all oriented to using C function, which is interesting, but was not feasible to use as the client had restricted the development language to ILE RPG and CLLE. So through a little bit of 'fiddling around', he found this method.
About the author: Ron Turull is editor of Inside Version 5. He has more than 20 years experience programming for and managing AS/400-iSeries systems.