# Class CIM_UnixFile
extends CIM_LogicalElement

The UnixFile class holds properties that are valid for various subclasses of LogicalFile, in a Unix environment. This is defined as a separate and unique class since it is applicable to Unix files, directories, etc. It is associated via a FileIdentity relationship to these subclasses of LogicalFile. Unless this approach of creating and associating a separate class is used, it is necessary to subclass each of the inheritance hierarchies under LogicalFile, duplicating the properties in this class. The referenced _PC* and _POSIX* constants are defined in unistd.h. Some properties indicate whether the UNIX implementation support a feature such as asynchronous I/O or priority I/O. If supported, sysconf returns the value as defined in the appropriate header file such as unistd.h. If a feature is not supported, then pathconf returns a -1. In this case, the corresponding property should be returned without any value.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_UnixFile

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | The UnixFile class holds properties that are valid for various subclasses of LogicalFile, in a Unix environment. This is defined as a separate and unique class since it is applicable to Unix files, directories, etc. It is associated via a FileIdentity relationship to these subclasses of LogicalFile. Unless this approach of creating and associating a separate class is used, it is necessary to subclass each of the inheritance hierarchies under LogicalFile, duplicating the properties in this class. The referenced _PC* and _POSIX* constants are defined in unistd.h. Some properties indicate whether the UNIX implementation support a feature such as asynchronous I/O or priority I/O. If supported, sysconf returns the value as defined in the appropriate header file such as unistd.h. If a feature is not supported, then pathconf returns a -1. In this case, the corresponding property should be returned without any value.
UMLPackagePath | string | CIM::System::Unix
Version | string | 2.6.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
CSCreationClassName | string |
Description | string | The scoping ComputerSystem's CreationClassName.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_LogicalFile.CSCreationClassName
CSName | string |
Description | string | The scoping ComputerSystem's Name.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_LogicalFile.CSName
FileInodeNumber | string |
Description | string | File Inode number, as printed by "ls -i".
MappingStrings | string | UNIX.TOG|ls -i
FSCreationClassName | string |
Description | string | The scoping FileSystem's CreationClassName.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_LogicalFile.FSCreationClassName
FSName | string |
Description | string | The scoping FileSystem's Name.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_LogicalFile.FSName
GroupID | string |
Description | string | An identifier that describes the group that owns this file.
Required | boolean | true
LastModifiedInode | datetime |
Description | string | The time that the Inode was last modified. This includes the Inode creation time, state modification, and etc.
LFCreationClassName | string |
Description | string | The scoping LogicalFile's CreationClassName.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_LogicalFile.CreationClassName
LFName | string |
Description | string | The scoping LogicalFile's Name.
Key | boolean | true
MaxLen | uint32 | 1024
Propagated | string | CIM_LogicalFile.Name
LinkCount | uint64 |
Counter | boolean | true
Description | string | Count of the number of names for this file.
LinkMax | uint64 |
Description | string | Maximum number of links to a single file.
MappingStrings | string | POSIX.TOG|pathconf|_PC_LINK_MAX
MinValue | sint64 | 8
NameMax | uint64 |
Description | string | Maximum number of bytes in a filename, not including terminating null.
MappingStrings | string | POSIX.TOG|pathconf|_POSIX_NAME_MAX
MinValue | sint64 | 14
PUnit | string | byte
Units | string | Bytes
PathMax | uint64 |
Description | string | Maximum number of bytes in a pathname, including the terminating null character.
MappingStrings | string | POSIX.TOG|pathconf|_POSIX_PATH_MAX
MinValue | sint64 | 255
PUnit | string | byte
Units | string | Bytes
PosixAsyncIo | uint64 |
Description | string | Indicates whether asynchronous input or output operations may be performed for the associated file.
MappingStrings | string | POSIX.TOG|pathconf|_PC_ASYNC_IO
PosixChownRestricted | uint64 |
Description | string | The use of chown() is restricted to a process with appropriate privileges. chown() is used to change the group ID of a file. The group ID can be changed to the effective group ID or one of its supplementary group IDs.
MappingStrings | string | POSIX.TOG|pathconf|_PC_CHOWN_RESTRICTED
PosixNoTrunc | uint64 |
Description | string | Indicates whether pathname components longer than NameMax generate an error.
MappingStrings | string | POSIX.TOG|pathconf|_PC_NO_TRUNC
ModelCorrespondence | string | CIM_UnixFile.NameMax
PosixPrioIo | uint64 |
Description | string | Indicates whether prioritized input or output operations may be performed for the associated file.
MappingStrings | string | POSIX.TOG|pathconf|_PC_PRIO_IO
PosixSyncIo | uint64 |
Description | string | Indicates whether synchronised input or output operations may be performed for the associated file.
MappingStrings | string | POSIX.TOG|pathconf|_PC_SYNC_IO
SaveText | boolean |
Description | string | Indicates restricted deletion for directories, or possible implementation defined properties for executable files. For directories this is known as the sticky bit.
SetGid | boolean |
Description | string | Indicates whether the associated file has setgid permissions.
SetUid | boolean |
Description | string | Indicates whether the associated file has setuid permissions.
UserID | string |
Description | string | An Identifer that uniquely describes the owner of this file.
Required | boolean | true

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
ElementName | string | CIM_ManagedElement
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
Name | string | CIM_ManagedSystemElement
OperatingStatus | uint16 | CIM_ManagedSystemElement
PrimaryStatus | uint16 | CIM_ManagedSystemElement
Status | string | CIM_ManagedSystemElement
OperationalStatus | uint16[] | CIM_ManagedSystemElement
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods