LUSTREAPI(7) The Lustre API library LUSTREAPI(7)

# [NAME](#NAME)

lustreapi - The Lustre API library

# [SYNOPSIS](#SYNOPSIS)

```
#include <lustre/lustreapi.h>
```

# [DESCRIPTION](#DESCRIPTION)

The lustreapi library provides functions to access and/or modify settings specific to the Lustre filesystem (allocation policies, quotas, file layouts, etc). See the referenced man pages for details.

# [AUTHORS](#AUTHORS)

Lustre contributors

# [AVAILABILITY](#AVAILABILITY)

**lustreapi** is part of the [**lustre**(7)](/man/enterprise-packages/lustre/lustre.7) user application interface library since release 0.10.0

# [SEE ALSO](#SEE_ALSO)

## [Changelogs](#Changelogs)

Functions for accessing and managing Lustre changelogs.

[**llapi\_changelog\_clear**(3)](/man/enterprise-packages/lustre/llapi_changelog_clear.3), [**llapi\_changelog\_fini**(3)](/man/enterprise-packages/lustre/llapi_changelog_fini.3), [**llapi\_changelog\_free**(3)](/man/enterprise-packages/lustre/llapi_changelog_free.3), [**llapi\_changelog\_get\_fd**(3)](/man/enterprise-packages/lustre/llapi_changelog_get_fd.3), [**llapi\_changelog\_in\_buf**(3)](/man/enterprise-packages/lustre/llapi_changelog_in_buf.3), [**llapi\_changelog\_recv**(3)](/man/enterprise-packages/lustre/llapi_changelog_recv.3), [**llapi\_changelog\_set\_xflags**(3)](/man/enterprise-packages/lustre/llapi_changelog_set_xflags.3), [**llapi\_changelog\_start**(3)](/man/enterprise-packages/lustre/llapi_changelog_start.3), [**llapi\_changelog\_start\_user**(3)](/man/enterprise-packages/lustre/llapi_changelog_start_user.3)

## [Directory Operations](#Directory_Operations)

Functions for creating and managing Lustre directories.

[**llapi\_dir\_create**(3)](/man/enterprise-packages/lustre/llapi_dir_create.3), [**llapi\_dir\_create\_foreign**(3)](/man/enterprise-packages/lustre/llapi_dir_create_foreign.3), [**llapi\_dir\_create\_pool**(3)](/man/enterprise-packages/lustre/llapi_dir_create_pool.3)

## [FID Handling](#FID_Handling)

Functions for working with Lustre File Identifiers (FIDs).

[**llapi\_fd2fid**(3)](/man/enterprise-packages/lustre/llapi_fd2fid.3), [**llapi\_fd2parent**(3)](/man/enterprise-packages/lustre/llapi_fd2parent.3), [**llapi\_fid\_hash**(3)](/man/enterprise-packages/lustre/llapi_fid_hash.3), [**llapi\_fid\_parse**(3)](/man/enterprise-packages/lustre/llapi_fid_parse.3), [**llapi\_fid\_to\_handle**(3)](/man/enterprise-packages/lustre/llapi_fid_to_handle.3), [**llapi\_fid2path**(3)](/man/enterprise-packages/lustre/llapi_fid2path.3), [**llapi\_fid2path\_at**(3)](/man/enterprise-packages/lustre/llapi_fid2path_at.3), [**llapi\_path2fid**(3)](/man/enterprise-packages/lustre/llapi_path2fid.3), [**llapi\_path2parent**(3)](/man/enterprise-packages/lustre/llapi_path2parent.3), [**llapi\_rmfid**(3)](/man/enterprise-packages/lustre/llapi_rmfid.3), [**llapi\_rmfid\_at**(3)](/man/enterprise-packages/lustre/llapi_rmfid_at.3)

## [File Operations](#File_Operations)

Functions for creating and managing Lustre files.

[**llapi\_file\_create**(3)](/man/enterprise-packages/lustre/llapi_file_create.3), [**llapi\_file\_create\_foreign**(3)](/man/enterprise-packages/lustre/llapi_file_create_foreign.3), [**llapi\_file\_get\_stripe**(3)](/man/enterprise-packages/lustre/llapi_file_get_stripe.3), [**llapi\_file\_open**(3)](/man/enterprise-packages/lustre/llapi_file_open.3), [**llapi\_file\_open\_volatile**(3)](/man/enterprise-packages/lustre/llapi_file_open_volatile.3), [**llapi\_fsync**(3)](/man/enterprise-packages/lustre/llapi_fsync.3), [**llapi\_open\_by\_fid**(3)](/man/enterprise-packages/lustre/llapi_open_by_fid.3), [**llapi\_open\_by\_fid\_at**(3)](/man/enterprise-packages/lustre/llapi_open_by_fid_at.3), [**llapi\_unlink\_foreign**(3)](/man/enterprise-packages/lustre/llapi_unlink_foreign.3)

## [File Layouts and Striping](#File_Layouts_and_Striping)

Functions for file layouts and striping across OSTs.

[**llapi\_layout\_alloc**(3)](/man/enterprise-packages/lustre/llapi_layout_alloc.3), [**llapi\_layout\_comp\_add**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_add.3), [**llapi\_layout\_comp\_del**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_del.3), [**llapi\_layout\_comp\_extent\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_extent_get.3), [**llapi\_layout\_comp\_extent\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_extent_set.3), [**llapi\_layout\_comp\_flags\_clear**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_flags_clear.3), [**llapi\_layout\_comp\_flags\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_flags_get.3), [**llapi\_layout\_comp\_flags\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_flags_set.3), [**llapi\_layout\_comp\_id\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_id_get.3), [**llapi\_layout\_comp\_use**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_use.3), [**llapi\_layout\_comp\_use\_id**(3)](/man/enterprise-packages/lustre/llapi_layout_comp_use_id.3), [**llapi\_layout\_extension\_size\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_extension_size_get.3), [**llapi\_layout\_extension\_size\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_extension_size_set.3), [**llapi\_layout\_file\_comp\_add**(3)](/man/enterprise-packages/lustre/llapi_layout_file_comp_add.3), [**llapi\_layout\_file\_comp\_del**(3)](/man/enterprise-packages/lustre/llapi_layout_file_comp_del.3), [**llapi\_layout\_file\_create**(3)](/man/enterprise-packages/lustre/llapi_layout_file_create.3), [**llapi\_layout\_file\_open**(3)](/man/enterprise-packages/lustre/llapi_layout_file_open.3), [**llapi\_layout\_file\_open\_volatile**(3)](/man/enterprise-packages/lustre/llapi_layout_file_open_volatile.3), [**llapi\_layout\_free**(3)](/man/enterprise-packages/lustre/llapi_layout_free.3), [**llapi\_layout\_get\_by\_fd**(3)](/man/enterprise-packages/lustre/llapi_layout_get_by_fd.3), [**llapi\_layout\_get\_by\_fid**(3)](/man/enterprise-packages/lustre/llapi_layout_get_by_fid.3), [**llapi\_layout\_get\_by\_path**(3)](/man/enterprise-packages/lustre/llapi_layout_get_by_path.3), [**llapi\_layout\_get\_by\_xattr**(3)](/man/enterprise-packages/lustre/llapi_layout_get_by_xattr.3), [**llapi\_layout\_ost\_index\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_ost_index_get.3), [**llapi\_layout\_ost\_index\_reset**(3)](/man/enterprise-packages/lustre/llapi_layout_ost_index_reset.3), [**llapi\_layout\_ost\_index\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_ost_index_set.3), [**llapi\_layout\_pattern\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_pattern_get.3), [**llapi\_layout\_pattern\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_pattern_set.3), [**llapi\_layout\_pool\_name\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_pool_name_get.3), [**llapi\_layout\_pool\_name\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_pool_name_set.3), [**llapi\_layout\_set\_by\_fd**(3)](/man/enterprise-packages/lustre/llapi_layout_set_by_fd.3), [**llapi\_layout\_set\_by\_xattr**(3)](/man/enterprise-packages/lustre/llapi_layout_set_by_xattr.3), [**llapi\_layout\_stripe\_count\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_stripe_count_get.3), [**llapi\_layout\_stripe\_count\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_stripe_count_set.3), [**llapi\_layout\_stripe\_size\_get**(3)](/man/enterprise-packages/lustre/llapi_layout_stripe_size_get.3), [**llapi\_layout\_stripe\_size\_set**(3)](/man/enterprise-packages/lustre/llapi_layout_stripe_size_set.3)

## [Filesystem Information](#Filesystem_Information)

Functions for querying filesystem names and paths.

[**llapi\_get\_fsname**(3)](/man/enterprise-packages/lustre/llapi_get_fsname.3), [**llapi\_get\_fsname\_instance**(3)](/man/enterprise-packages/lustre/llapi_get_fsname_instance.3), [**llapi\_get\_instance**(3)](/man/enterprise-packages/lustre/llapi_get_instance.3), [**llapi\_get\_lum\_dir**(3)](/man/enterprise-packages/lustre/llapi_get_lum_dir.3), [**llapi\_get\_lum\_dir\_fd**(3)](/man/enterprise-packages/lustre/llapi_get_lum_dir_fd.3), [**llapi\_get\_lum\_file**(3)](/man/enterprise-packages/lustre/llapi_get_lum_file.3), [**llapi\_get\_lum\_file\_fd**(3)](/man/enterprise-packages/lustre/llapi_get_lum_file_fd.3), [**llapi\_get\_mdt\_index\_by\_fid**(3)](/man/enterprise-packages/lustre/llapi_get_mdt_index_by_fid.3), [**llapi\_getname**(3)](/man/enterprise-packages/lustre/llapi_getname.3), [**llapi\_lmv\_get\_uuids**(3)](/man/enterprise-packages/lustre/llapi_lmv_get_uuids.3), [**llapi\_lov\_get\_uuids**(3)](/man/enterprise-packages/lustre/llapi_lov_get_uuids.3)

## [Hierarchical Storage Management (HSM)](#Hierarchical_Storage_Management_%28HSM%29)

Functions for HSM copytool operations and archive management.

[**llapi\_hsm\_action\_begin**(3)](/man/enterprise-packages/lustre/llapi_hsm_action_begin.3), [**llapi\_hsm\_action\_end**(3)](/man/enterprise-packages/lustre/llapi_hsm_action_end.3), [**llapi\_hsm\_action\_get\_dfid**(3)](/man/enterprise-packages/lustre/llapi_hsm_action_get_dfid.3), [**llapi\_hsm\_action\_get\_fd**(3)](/man/enterprise-packages/lustre/llapi_hsm_action_get_fd.3), [**llapi\_hsm\_action\_progress**(3)](/man/enterprise-packages/lustre/llapi_hsm_action_progress.3), [**llapi\_hsm\_copytool\_get\_fd**(3)](/man/enterprise-packages/lustre/llapi_hsm_copytool_get_fd.3), [**llapi\_hsm\_copytool\_recv**(3)](/man/enterprise-packages/lustre/llapi_hsm_copytool_recv.3), [**llapi\_hsm\_copytool\_register**(3)](/man/enterprise-packages/lustre/llapi_hsm_copytool_register.3), [**llapi\_hsm\_copytool\_unregister**(3)](/man/enterprise-packages/lustre/llapi_hsm_copytool_unregister.3), [**llapi\_hsm\_data\_version\_set**(3)](/man/enterprise-packages/lustre/llapi_hsm_data_version_set.3), [**llapi\_hsm\_state\_get**(3)](/man/enterprise-packages/lustre/llapi_hsm_state_get.3), [**llapi\_hsm\_state\_set**(3)](/man/enterprise-packages/lustre/llapi_hsm_state_set.3)

## [Persistent Client Cache (PCC)](#Persistent_Client_Cache_%28PCC%29)

Functions for managing Persistent Client Cache operations.

[**llapi\_pcc\_attach**(3)](/man/enterprise-packages/lustre/llapi_pcc_attach.3), [**llapi\_pcc\_attach\_fid**(3)](/man/enterprise-packages/lustre/llapi_pcc_attach_fid.3), [**llapi\_pcc\_attach\_fid\_str**(3)](/man/enterprise-packages/lustre/llapi_pcc_attach_fid_str.3), [**llapi\_pcc\_clear**(3)](/man/enterprise-packages/lustre/llapi_pcc_clear.3), [**llapi\_pcc\_del**(3)](/man/enterprise-packages/lustre/llapi_pcc_del.3), [**llapi\_pcc\_detach\_fid**(3)](/man/enterprise-packages/lustre/llapi_pcc_detach_fid.3), [**llapi\_pcc\_detach\_fid\_fd**(3)](/man/enterprise-packages/lustre/llapi_pcc_detach_fid_fd.3), [**llapi\_pcc\_detach\_fid\_str**(3)](/man/enterprise-packages/lustre/llapi_pcc_detach_fid_str.3), [**llapi\_pcc\_detach\_file**(3)](/man/enterprise-packages/lustre/llapi_pcc_detach_file.3), [**llapi\_pcc\_state\_get**(3)](/man/enterprise-packages/lustre/llapi_pcc_state_get.3), [**llapi\_pcc\_state\_get\_fd**(3)](/man/enterprise-packages/lustre/llapi_pcc_state_get_fd.3), [**llapi\_pccdev\_get**(3)](/man/enterprise-packages/lustre/llapi_pccdev_get.3), [**llapi\_pccdev\_set**(3)](/man/enterprise-packages/lustre/llapi_pccdev_set.3)

## [Pool Operations](#Pool_Operations)

Functions for managing OST pools.

[**llapi\_pool\_is\_pinned\_fd**(3)](/man/enterprise-packages/lustre/llapi_pool_is_pinned_fd.3), [**llapi\_pool\_is\_pinned\_fid**(3)](/man/enterprise-packages/lustre/llapi_pool_is_pinned_fid.3), [**llapi\_pool\_is\_pinned\_file**(3)](/man/enterprise-packages/lustre/llapi_pool_is_pinned_file.3), [**llapi\_pool\_pin\_fd**(3)](/man/enterprise-packages/lustre/llapi_pool_pin_fd.3), [**llapi\_pool\_pin\_fid**(3)](/man/enterprise-packages/lustre/llapi_pool_pin_fid.3), [**llapi\_pool\_pin\_file**(3)](/man/enterprise-packages/lustre/llapi_pool_pin_file.3), [**llapi\_pool\_unpin\_fd**(3)](/man/enterprise-packages/lustre/llapi_pool_unpin_fd.3), [**llapi\_pool\_unpin\_fid**(3)](/man/enterprise-packages/lustre/llapi_pool_unpin_fid.3), [**llapi\_pool\_unpin\_file**(3)](/man/enterprise-packages/lustre/llapi_pool_unpin_file.3)

## [Project Management](#Project_Management)

Functions for managing project IDs and quotas.

[**llapi\_project\_close**(3)](/man/enterprise-packages/lustre/llapi_project_close.3), [**llapi\_project\_fgetnam**(3)](/man/enterprise-packages/lustre/llapi_project_fgetnam.3), [**llapi\_project\_fgetprjid**(3)](/man/enterprise-packages/lustre/llapi_project_fgetprjid.3), [**llapi\_project\_get**(3)](/man/enterprise-packages/lustre/llapi_project_get.3), [**llapi\_project\_getnam**(3)](/man/enterprise-packages/lustre/llapi_project_getnam.3), [**llapi\_project\_getprjid**(3)](/man/enterprise-packages/lustre/llapi_project_getprjid.3), [**llapi\_project\_open**(3)](/man/enterprise-packages/lustre/llapi_project_open.3), [**llapi\_project\_put**(3)](/man/enterprise-packages/lustre/llapi_project_put.3), [**llapi\_quotactl**(3)](/man/enterprise-packages/lustre/llapi_quotactl.3)

## [Target Search](#Target_Search)

Functions for searching MDTs and OSTs.

[**llapi\_search\_mdt**(3)](/man/enterprise-packages/lustre/llapi_search_mdt.3), [**llapi\_search\_ost**(3)](/man/enterprise-packages/lustre/llapi_search_ost.3), [**llapi\_search\_rootpath**(3)](/man/enterprise-packages/lustre/llapi_search_rootpath.3), [**llapi\_search\_rootpath\_by\_dev**(3)](/man/enterprise-packages/lustre/llapi_search_rootpath_by_dev.3), [**llapi\_search\_tgt**(3)](/man/enterprise-packages/lustre/llapi_search_tgt.3)

## [Tunable Parameters](#Tunable_Parameters)

Functions for accessing and modifying Lustre tunable parameters.

[**llapi\_param\_get\_paths**(3)](/man/enterprise-packages/lustre/llapi_param_get_paths.3), [**llapi\_param\_get\_value**(3)](/man/enterprise-packages/lustre/llapi_param_get_value.3)

## [Miscellaneous](#Miscellaneous)

Other utility functions.

[**llapi\_convert\_str2mask**(3)](/man/enterprise-packages/lustre/llapi_convert_str2mask.3), [**llapi\_find\_param\_alloc**(3)](/man/enterprise-packages/lustre/llapi_find_param_alloc.3), [**llapi\_find\_param\_free**(3)](/man/enterprise-packages/lustre/llapi_find_param_free.3), [**llapi\_get\_data\_version**(3)](/man/enterprise-packages/lustre/llapi_get_data_version.3), [**llapi\_get\_obd\_count**(3)](/man/enterprise-packages/lustre/llapi_get_obd_count.3), [**llapi\_group\_lock**(3)](/man/enterprise-packages/lustre/llapi_group_lock.3), [**llapi\_group\_unlock**(3)](/man/enterprise-packages/lustre/llapi_group_unlock.3), [**llapi\_heat\_get**(3)](/man/enterprise-packages/lustre/llapi_heat_get.3), [**llapi\_heat\_set**(3)](/man/enterprise-packages/lustre/llapi_heat_set.3), [**llapi\_ioctl**(3)](/man/enterprise-packages/lustre/llapi_ioctl.3), [**llapi\_ladvise**(3)](/man/enterprise-packages/lustre/llapi_ladvise.3), [**llapi\_lov\_pattern\_string**(3)](/man/enterprise-packages/lustre/llapi_lov_pattern_string.3), [**llapi\_lov\_string\_pattern**(3)](/man/enterprise-packages/lustre/llapi_lov_string_pattern.3), [**llapi\_root\_path\_open**(3)](/man/enterprise-packages/lustre/llapi_root_path_open.3), [**lustre**(7)](/man/enterprise-packages/lustre/lustre.7)

2026-09-03 Lustre User API

---

Document: lustreapi(7) from lustre 2.17.59-r1 (Chainguard OS)
Source: https://github.com/lustre/lustre-release
