User-defined file systems (UDFSs)
The user-defined file systems (UDFSs) reside on the auxiliary storage pool (ASP) or independent auxiliary storage pool (ASP) of your choice. You can create and manage these file systems.
In addition, they:
- Provide a hierarchical directory structure similar to PC operating systems such as DOS and OS/2®
- Are optimized for stream file input and output
- Support multiple hard links and symbolic links
- Support local sockets
- Support threadsafe APIs
- Support *FIFO objects
- Support the journaling of object changes
- Support the scanning of objects using the integrated file system scan-related exit points
You can create multiple UDFSs by giving each a unique name. You can specify other attributes for a UDFS during its creation, including:
- An ASP number or independent ASP name where the objects that are located in the UDFS are stored.
- The case-sensitivity characteristics of the object names that are located within a UDFS.
The case-sensitivity of a UDFS determines whether uppercase and lowercase characters will match when searching for object names within the UDFS.
- The create object scanning attribute which defines what the scan attribute should be for objects created in a UDFS.
- The restrict rename and unlink attribute.
- The auditing value for a UDFS.
- The different stream file formats, *TYPE1 and *TYPE2.
User-defined file system concepts
In a user-defined file system (UDFS), as in the "root" (/) and QOpenSys file systems, you can create directories, stream files, symbolic links, local sockets, and *FIFO objects.
A single block special file object (*BLKSF) represents a UDFS. As you create UDFSs, you also automatically create block special files. The block special file is only accessible to the user through the integrated file system generic commands, APIs, and the QFileSvr.400 interface.
A UDFS exists only in two states: mounted and unmounted. When you mount a UDFS, the objects within it are accessible. When you unmount a UDFS, the objects within it become inaccessible.
In order to access the objects within a UDFS, mount the UDFS on a directory (for example, /home/JON). When you mount a UDFS on a directory, the original contents of that directory, including objects and subdirectories, become inaccessible. When you mount a UDFS, the contents of the UDFS become accessible through the directory path that you mount the UDFS over. For example, the /home/JON directory contains a file /home/JON/payroll. A UDFS contains three directories mail, action, and outgoing. After mounting the UDFS on /home/JON, the /home/JON/payroll file is inaccessible, and the three UDFS directories become accessible as /home/JON/mail, /home/JON/action, and /home/JON/outgoing. After unmounting the UDFS, the /home/JON/payroll file is accessible again, and the three directories in the UDFS become inaccessible. An initial program load (IPL) of the system unmounts all UDFSs. Therefore, the UDFSs need to be remounted after any IPL.
A UDFS on an independent ASP cannot be mounted over.
To learn more about mounting file systems, see OS/400® Network File System Support
.
Accessing a user-defined file system through the integrated file system interface
A user-defined file system (UDFS) can be accessed through the integrated file system interface using either the i5/OS® file server or the integrated file system commands, user displays, and APIs.
In using the integrated file system interface, you should be aware of the following considerations and limitations.
- Case-sensitivity in an integrated file system user-defined file system
You can specify whether object names in the user-defined file system (UDFS) are case-sensitive or case-insensitive when you create it.
- Path names in an integrated file system user-defined file system
A block special file (*BLKSF) represents a user-defined file system (UDFS) when the entire UDFS and all of the objects within it need to be manipulated.
- Links in an integrated file system user-defined file system
A user-defined file system (UDFS) allows multiple hard links to the same object and fully supports symbolic links.
- Integrated file system commands in a user-defined file system
All of the commands that are listed in the Accessing using CL commands topic and the displays that are described in the Accessing using menus and displays topic can operate on a user-defined file system.
- Integrated file system APIs in a user-defined file system
All of the APIs that are listed in Perform operations using APIs topic can operate on a user-defined file system.
- Graphical user interface for a user-defined file system
iSeries™ Navigator, a graphical user interface on your PC, provides easy and convenient access to user-defined file systems (UDFSs).
- Creating an integrated file system user-defined file system
The Create User-Defined File System (CRTUDFS) command creates a file system that can be made visible through the integrated file system namespace, APIs, and CL commands.
- Deleting an integrated file system user-defined file system
The Delete User-Defined File System (DLTUDFS) command deletes an existing, unmounted user-defined file system (UDFS), and all the objects within it.
- Displaying an integrated file system user-defined file system
The Display User-Defined File System (DSPUDFS) command presents the attributes of an existing user-defined file system (UDFS), whether mounted or unmounted.
- Mounting an integrated file system user-defined file system
The Add Mounted File System (ADDMFS) and MOUNT commands make the objects in a file system accessible to the integrated file system namespace.
- Unmounting an integrated file system user-defined file system
The unmount command makes the contents of a user-defined file system (UDFS) inaccessible to the integrated file system interfaces.
- Saving and restoring an integrated file system user-defined file system
You can save and restore all user-defined file system (UDFS) objects, as well as their associated authorities.
- Object changes journaling in a user-defined file system
Objects in user-defined file systems (UDFSs) can be journaled. This function enables you to recover the changes to an object that have occurred since the object was last saved.
- User-defined file system and independent auxiliary storage pools
When you vary on an independent auxiliary storage pool (ASP), several changes occur within the "root" (/) file system.
Parent topic:
File systems
Related concepts
Link
Stream file
Related information
Create User-Defined FS (CRTUDFS) command