Why xfs_rtcp Is Not Safe to Run on Linux XFS

Someone found xfs_rtcp in the xfsprogs package and wants to know if it is worth trying: for the installed Linux XFS implementation, the answer is no. The command is intended to copy files to an XFS realtime partition, but the local manual says realtime partitions are not supported under Linux XFS and that using one will cause corruption on the data partition. The manual even says the command exists for curious developers only.

Allow about ten minutes. You need a shell to inspect the installed tool. You do not need root for the checks in this guide, and you should not run the copy examples against a real filesystem. The local package is xfsprogs 6.6.0-1ubuntu2.1, and the installed command reports version 6.6.0.

1. Confirm which command you have

Check the executable and ask it for its version:

$ command -v xfs_rtcp
/usr/sbin/xfs_rtcp
$ xfs_rtcp -V
xfs_rtcp version 6.6.0

The -V option prints the version and exits. It does not inspect a filesystem or copy data. Package metadata gives a second useful record of what is installed:

$ dpkg-query -W -f='${Package} ${Version}\n' xfsprogs
xfsprogs 6.6.0-1ubuntu2.1

Checkpoint: if command -v finds a different executable, or the version does not match, stop and read that system's manual page before relying on this guide. Behaviour and caveats can differ between builds.

2. Understand what the command would do

The command's basic shape is:

xfs_rtcp [ -e EXT_SIZE ] [ -p ] SOURCE ... TARGET

It copies one source file, or several source files, to the realtime partition of an XFS filesystem. With more than one source, the final argument must already be an existing directory. The target is not a request to create an ordinary copy somewhere on a normal XFS data area.

Two options adjust how the destination would be created:

These options do not make realtime storage available. They describe the mechanics of a copy after a supported realtime partition exists.

3. Apply the Linux safety boundary

Warning: do not run xfs_rtcp to copy data on a Linux XFS filesystem. The installed manual's caveat is unusually direct: Linux XFS does not currently support realtime partitions, and using one will cause corruption on the data partition. The same warning applies whether you use the default extent size, choose -e, or add -p.

This is a data-integrity boundary, not a permissions problem. Running the command with sudo cannot add kernel support, and a successful-looking process launch would not make the storage layout safe. Treat any existing realtime configuration on a Linux host as an incident requiring filesystem and backup expertise, not as a prompt to experiment with this utility.

The following is syntax documentation only. Do not substitute real paths and execute it on Linux:

xfs_rtcp /path/to/source-file /path/to/existing-target-directory
xfs_rtcp -e EXT_SIZE /path/to/source-file /path/to/existing-target-directory
xfs_rtcp -p /path/to/source-file /path/to/existing-target-directory

There is no documented dry-run option in this version. The command has no safe preview mode that would validate a target without attempting the copy.

4. Choose a safe alternative

If the requirement is simply to copy a file onto XFS, use an ordinary file operation and a normal destination path:

$ install -D -m 0644 -- /path/to/source-file /path/to/ordinary-xfs-directory/source-file
$ cmp -- /path/to/source-file /path/to/ordinary-xfs-directory/source-file

install writes a regular destination file and creates missing parent directories for the destination. The -m 0644 mode is an example, not a universal policy: choose permissions appropriate to the data. cmp reads both files and produces no output when their contents match.

This alternative changes state by creating or replacing the destination file. If you used the example with a disposable destination and need to undo it, remove that specific file only after checking the path:

$ stat -- /path/to/ordinary-xfs-directory/source-file
$ rm -- /path/to/ordinary-xfs-directory/source-file

Recovery: rm is irreversible unless you have a separate recovery facility. Never use a broad wildcard or an unresolved placeholder in a removal command.

5. Record the decision

For an operational runbook, record the command and package versions, then state that xfs_rtcp is not approved for Linux XFS data copying because realtime partitions are unsupported. If a vendor or legacy application explicitly demands a realtime partition, pause the deployment and confirm its supported operating system and filesystem combination with that vendor or the XFS project. Do not infer support from the presence of the executable in the xfsprogs package.

Keep the local manual with the ticket or change record. It is the authoritative behaviour description for the installed binary, including the warning that matters most here.

Done means