2021-11-30 15:00:48 +00:00
|
|
|
Common Linux features
|
|
|
|
=====================
|
|
|
|
|
2021-12-17 09:49:39 +00:00
|
|
|
The Linux operating system implements a POSIX standard interfaces and API with
|
|
|
|
additional interfaces. Many of them have become common in other filesystems. The
|
|
|
|
ones listed below have been added relatively recently and are considered
|
|
|
|
interesting for users:
|
|
|
|
|
|
|
|
birth/origin inode time
|
|
|
|
a timestamp associated with an inode of when it was created, cannot be
|
|
|
|
changed and requires the *statx* syscall to be read
|
|
|
|
|
|
|
|
statx
|
|
|
|
an extended version of the *stat* syscall that provides extensible
|
|
|
|
interface to read more information that are not available in original
|
|
|
|
*stat*
|
|
|
|
|
|
|
|
fallocate modes
|
2023-05-31 23:14:47 +00:00
|
|
|
the *fallocate* syscall allows to manipulate file extents
|
|
|
|
|
|
|
|
Supported modes:
|
|
|
|
|
|
|
|
- keep size (FALLOC_FL_KEEP_SIZE)
|
|
|
|
- hole punching (FALLOC_FL_PUNCH_HOLE)
|
|
|
|
- zero range (FALLOC_FL_ZERO_RANGE)
|
2021-12-17 09:49:39 +00:00
|
|
|
|
|
|
|
FIEMAP
|
2023-04-26 23:48:47 +00:00
|
|
|
an ioctl that enumerates file extents, related tool is :command:`filefrag`
|
2021-12-17 09:49:39 +00:00
|
|
|
|
|
|
|
filesystem label
|
|
|
|
another filesystem identification, could be used for mount or for better
|
2023-04-26 23:48:47 +00:00
|
|
|
recognition, can be set or read by an ioctl or by command :command:`btrfs filesystem label`
|
2021-12-17 09:49:39 +00:00
|
|
|
|
|
|
|
O_TMPFILE
|
|
|
|
mode of open() syscall that creates a file with no associated directory
|
|
|
|
entry, which makes it impossible to be seen by other processes and is
|
|
|
|
thus safe to be used as a temporary file
|
|
|
|
(https://lwn.net/Articles/619146/)
|
|
|
|
|
|
|
|
xattr, acl
|
|
|
|
extended attributes (xattr) is a list of *key=value* pairs associated
|
|
|
|
with a file, usually storing additional metadata related to security,
|
2023-04-26 23:48:47 +00:00
|
|
|
access control list in particular (ACL) or properties (:command:`btrfs property`)
|
2021-12-09 19:46:42 +00:00
|
|
|
|
2022-01-18 20:26:07 +00:00
|
|
|
cross-rename
|
|
|
|
mode of *renameat2* syscall that can atomically swap 2 directory
|
2023-05-31 23:14:47 +00:00
|
|
|
entries (files/directories/subvolumes/symlinks) within the same filesystem
|
2021-12-17 09:49:39 +00:00
|
|
|
|
2022-01-18 20:26:07 +00:00
|
|
|
|
|
|
|
File attributes, XFLAGS
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
.. include:: ch-file-attributes.rst
|