AUFS-LIST(1)

NAME
aufs-list - List versions of a file in different aufs branches

SYNOPSIS
aufs-list -h
aufs-list path_to_check

DESCRIPTION
The aufs-list script checks for multiple instances of a file path in different branches of the aufs union file system. It can reveal the presence of files in "lower" branches that are not visible when using the file system normally. path_to_check can be any path that exists in any branch of the aufs filesystem. In particular, it can be a file that has been deleted using the whiteout feature of aufs, where versions of the file still exist in lower branches but are hidden. The special value / (the root folder) causes aufs-list to output a list of all the source branches and their root folders.

Here "files" includes folders and other file-like objects: symlinks, named pipes and sockets.

OUTPUT
The output of aufs-list is in four columns, separated by tabs. You might like to expand and align the output by piping to column -t.

From left to right, the columns are: • the branch number N, taken from the name of the pseudo-file name brN within the folder /sys/fs/aufs/si_<branch_system_id>/ where the value of branch_system_id is unique to your system. Higher values of N correspond to lower branches, in the sense that where multiple versions exist, you will only see the version from the lowest-numbered branch;
• a name for the branch (really just the name of the folder in the third column);
• the full path of the root folder of the branch source;
• the aufs options with which the branch was added. rr means the branch is read-only, whereas rw means the branch is writeable.

If a branch contains a whiteout file (.wh.file_name) corresponding to path_to_check, then the text [WHITEOUT] is displayed instead of the branch file path.

OPTIONS

-h, --help
    Display a short help message and exit. (The help message is also displayed when aufs-list is called with no arguments.)

NOTES

You may need to run aufs-list as root, if your current user does not have read access to some of the source branch folders.

The path_to_check must be in the aufs file system.

You might like to run commands on the version of a file in a particular branch. You can do this by isolating the third column of the relevant row of the aufs-list output. For example, if there is a version of the file at /var/log/syslog in branch 12, and you wish to view it via the less command, you could run:

    less "$(aufs-list /var/log/syslog | grep '^ *12' | cut -f 3)"

EXAMPLES

aufs-list /

    List all the source branches and their root folders.

aufs-list /var/log/syslog

    List all versions of the file at /var/log/syslog.

REPORTING BUGS

Please report any bugs or other issues on the Codeberg repository: https://codeberg.org/lcpterid/aufs-dir-tools/

AUTHORS
lcpterid

SEE ALSO
aufs-find(1), aufs-diff(1), aufs-clashes(1), aufs-revert(1), aufs-unwh(1)