DRELN(1)
π DRELN(1) β the distributed relink glow-up
okay so real quick, bestie: this is dreln, part of the mpiFileUtils suite, living in section 1 of the manual. It's the distributed relink tool and honestly? she's a fixer. π§
β¨ SYNOPSIS β¨
dreln [OPTION] OLDPATH NEWPATH PATH ...
π¦ DESCRIPTION π¦
So. It's a parallel MPI application that recursively goes through and updates symlinks inside a directory. That's the whole vibe. π«
Here's the tea: dreln walks the PATH you give it, and whenever it finds a symlink whose target includes an absolute path to OLDPATH, it swaps that symlink out for a brand new link whose target points at NEWPATH instead. slay.
Lowkey the actual best use case: you migrated a huge directory from one file system to another, and all your symlinks are still pointing at absolute paths on the original file system. dreln is the one who comes in and fixes all of that. iconic. π
π OPTIONS π
-i,--inputFILE β read the source list from FILE. heads up: FILE has to be generated by some other tool from the mpiFileUtils suite. no random files, okay? π-p,--preserveβ keep the modification times that already exist on the links. don't touch what's already cute. π-r,--relativeβ replace links using target paths that are relative toNEWPATH. π¦--progressN β print a progress message to stdout roughly every N seconds. N has to be a non-negative integer (fr fr, she checks). a value of0turns progress messages all the way off. β-v,--verboseβ run in verbose mode. she will tell you things. π-q,--quietβ run the tool silently. no output gets printed. not a single crumb. π-h,--helpβ print a brief message listing thedrm(1)options and usage. yes bestie, it literally saysdrm(1)β that's what the page says, and I refuse to gaslight you about it. π«Ά
πΈ EXAMPLES πΈ
1. To update all links under /walk/path whose targets point to /orig/path and replace them with targets that point to /new/path:
mpirun -np 128 dreln -v /orig/path /new/path /walk/path
2. Same as above, but replace each link target with a relative path from the link to its new target under /new/path:
mpirun -np 128 dreln -v --relative /orig/path /new/path /walk/path
3. One can preserve existing modification times on links:
mpirun -np 128 dreln -v --preserve /orig/path /new/path /walk/path
4. One can specify multiple paths to walk:
mpirun -np 128 dreln -v /orig/path /new/path /walk/path1 /walk/path2
π SEE ALSO π
The mpiFileUtils source code and all documentation may be downloaded from <https://github.com/hpc/mpifileutils> β go support her, she's doing the work. π
π AUTHOR π
HPC
β COPYRIGHT β
2022, LLNL/LANL/UT-Battelle/DDN
okay that's the whole page, no cap ππ
β this was dreln, version 0.12, dated Jan 29, 2025, and that's the DRELN(1) manual page, mpiFileUtils girlie forever. ππΈπ¦
go fix your symlinks bestie, they're giving "left on read" π«Ά
π¦ where this page comes from
- nixpkgs unstable: mpifileutils 0.12
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms