Volume Analysis and Search
analyze.flexfs and find.flexfs query the metadata server directly, providing fast volume-wide analysis without traversing the FUSE layer. Both tools work with Enterprise and Community editions.
analyze.flexfs
Section titled “analyze.flexfs”Top Files by Cost
Section titled “Top Files by Cost”Identify the most expensive files in a volume:
analyze.flexfs files --orderBy cost --limit 20 --header /mnt/flexfsOutput (tab-separated):
path size blocks size_bin cost/data/genome/sample1.bam 52428800000 12500 62 15.23/data/genome/sample2.bam 48318382080 11520 61 14.02Directory Size Breakdown
Section titled “Directory Size Breakdown”See which directories consume the most storage:
analyze.flexfs folders --maxDepth 2 --header /mnt/flexfsPer-User Storage Usage
Section titled “Per-User Storage Usage”Identify which users are consuming the most space:
analyze.flexfs users --orderBy size --header /mnt/flexfsOutput includes UID, resolved username, size, and cost.
Direct Connection (Without Mount)
Section titled “Direct Connection (Without Mount)”All analyze.flexfs subcommands can connect directly to a metadata server without requiring a local mount:
analyze.flexfs files \ --metaAddr meta.example.com:443 \ --volume my-volume \ --orderBy size --limit 50 /dataBoth --metaAddr and --volume must be provided together. The volume can be specified by name or UUID.
Saving Output
Section titled “Saving Output”Write results to a file:
analyze.flexfs files --outputFile /tmp/top-files.tsv --header /mnt/flexfsfind.flexfs
Section titled “find.flexfs”Find Files by Name Pattern
Section titled “Find Files by Name Pattern”find.flexfs --name *.bam --type f /mnt/flexfsFind Large Files
Section titled “Find Large Files”find.flexfs --minSize 1073741824 --type f --fields path,size,cost --header /mnt/flexfsFind Files by Owner
Section titled “Find Files by Owner”find.flexfs --uid 1001 --type f --fields path,size,uid /mnt/flexfsFind Old Files (by Access Time)
Section titled “Find Old Files (by Access Time)”Find files not accessed since a specific timestamp (nanoseconds since epoch):
# Files not accessed since 2025-01-01find.flexfs --maxAtime 1735689600000000000 --type f /mnt/flexfsFind Empty Directories
Section titled “Find Empty Directories”find.flexfs --type d --empty /mnt/flexfsFind Files with Specific Permissions
Section titled “Find Files with Specific Permissions”find.flexfs --perm 0777 --type f --fields path,perm /mnt/flexfsUse --permMask to match a subset of permission bits:
# Files that are world-writable (check only the "other write" bit)find.flexfs --perm 2 --permMask 2 --type f /mnt/flexfsFull Metadata Export
Section titled “Full Metadata Export”Export all files with all metadata fields:
find.flexfs --fields all --header --type f \ --outputFile /tmp/full-inventory.tsv /mnt/flexfsDirect Connection
Section titled “Direct Connection”Like analyze.flexfs, find.flexfs supports direct metadata server connections:
find.flexfs --metaAddr meta.example.com:443 --volume my-volume \ --name *.log --type f /Available Output Fields
Section titled “Available Output Fields”The find.flexfs tool supports this field set for --fields:
| Field | Description |
|---|---|
path | File path (default) |
ino | Inode number |
mode | Raw mode bits |
type | Inode type (f, d, l, p, s, b, c) |
perm | Permission bits (octal) |
blocks | Block count |
size | Size in bytes |
size_bin | Access-time age bin (30-day increments) |
cost | Estimated monthly storage cost |
nlink | Hard link count |
uid | Owner user ID |
gid | Owner group ID |
ctime | Change time (nanoseconds since epoch) |
mtime | Modification time (nanoseconds since epoch) |
atime | Access time (nanoseconds since epoch) |
btime | Birth (creation) time (nanoseconds since epoch) |
xattrs | Extended attributes |
Use Cases
Section titled “Use Cases”- Cost optimization: Use
analyze.flexfs files --orderBy costto find the most expensive files and schedule archival or deletion. - Compliance auditing: Use
find.flexfs --fields all --headerto generate a complete filesystem inventory. - Stale data identification: Use
find.flexfs --maxAtime <cutoff>to find files not accessed within a retention window. - Permissions audit: Use
find.flexfs --perm --permMaskto find files with overly permissive access. - Capacity planning: Use
analyze.flexfs folders --maxDepth 3to understand storage distribution across the directory tree.