MORAINE(1)
β¨ MORAINE β¨
okay bestie, gather round, because moraine is about to become your new personality π it's a lil command-line baddie that does snapshot backups over SSH/rsync and rclone, and honestly? she ate.
πΈ SYNOPSIS πΈ
moraine [-c CONFIG] COMMAND [OPTIONS]
that's it. that's the whole vibe. one command, a config file, and you're literally preserving your data's whole life story π«Ά
π DESCRIPTION π
so here's the tea, bestie β moraine makes timestamped, hard-linked snapshots of your local files and yeets them onto a remote target. the way each run looks like a complete, full tree? iconic. but files that haven't changed since last time just share disk with the previous snapshot through hard links, so keeping a whole history of your stuff costs almost nothing. it's giving "unlimited storage glitch" but it's real and it's legal πβ¨
and because history isn't just for hoarding, you can also:
- list your snapshots (so you can gaze upon them like a proud parent),
- prune them with a GFS retention policy (bye grandpa snapshot, love u, it's time),
- and restore individual files or whole trees (the unhinged "nvm bring it back" button we all deserve).
two backends are supported, door's open to both:
- rsync over SSH β classic, reliable, we love her π₯
- rclone β for cloud, SFTP, SMB, WebDAV, S3 and more. she does it all, no cap π
targets and schedules? those live in a TOML configuration file, because we're organized queens here π
β OPTIONS β
-c,--config CONFIGβ the path to your configuration file, bestie (default:moraine.toml). point her at wherever your config is chilling.-h,--helpβ print help. always a safe first move, no shame π«Ά-V,--versionβ print the version, and yes it comes with the git hash and build date, so you know literally exactly which build you're running. receipts, always π
π COMMANDS π
initβ writes an example configuration file so you have something to start from. a lil starter pack, a blank canvas, a beginning β¨verifyβ checks the SSH connection, the key, the sources, and confirms the target is actually writable. basically a vibe check for your whole setup before the real thing πΈrun [--dry-run] [--target NAME]β runs a backup for all targets, or just one selected one. use--dry-runif you wanna peek without committing (we all do it π).list --target NAMEβ lists the snapshots sitting on a target. come admire your collection πprune [--dry-run] [--target NAME]β deletes old snapshots based on the target's retention policy. she's ruthless but the--dry-runflag lets you watch her swing before anything actually gets got π
π¦ FILES π¦
moraine.tomlβ the configuration file, and the format is simple fr: one[[target]]block per backup destination. one target, one block, no chaos π
π SEE ALSO π
(the squad. the founding mothers. go read up iykyk)
π AUTHOR π
Jonaz Thern <info@thern.io>
aaaand that's the whole page bestie!! π you just read the docs for moraine version 0.1.0, dated 2026-06-29. now go back up your stuff, main character π«Άβ¨ periodt.
π¦ where this page comes from
- ubuntu stonking: moraine 0.2.2-1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms