[{"data":1,"prerenderedAt":392},["ShallowReactive",2],{"navigation":3,"index":94},[4,16,38,56,70,80],{"title":5,"path":6,"stem":7,"children":8,"icon":15},"Getting Started","\u002Fgetting-started","1.getting-started\u002F1.index",[9,11],{"title":10,"path":6,"stem":7},"What is fsbackup?",{"title":12,"path":13,"stem":14},"Requirements & hardware","\u002Fgetting-started\u002Frequirements","1.getting-started\u002F2.requirements","i-lucide-rocket",{"title":17,"icon":18,"path":19,"stem":20,"children":21,"page":37},"Installation","i-lucide-package","\u002Finstallation","2.installation",[22,26,30,33],{"title":23,"path":24,"stem":25},"Quick start","\u002Finstallation\u002Fquickstart","2.installation\u002F1.quickstart",{"title":27,"path":28,"stem":29},"ZFS pool setup","\u002Finstallation\u002Fzfs-pool","2.installation\u002F2.zfs-pool",{"title":17,"path":31,"stem":32},"\u002Finstallation\u002Fbare-metal","2.installation\u002F3.bare-metal",{"title":34,"path":35,"stem":36},"Adding remote hosts","\u002Finstallation\u002Fadding-hosts","2.installation\u002F4.adding-hosts",false,{"title":39,"icon":40,"path":41,"stem":42,"children":43,"page":37},"Configuration","i-lucide-sliders","\u002Fconfiguration","3.configuration",[44,48,52],{"title":45,"path":46,"stem":47},"fsbackup.conf","\u002Fconfiguration\u002Ffsbackup-conf","3.configuration\u002F1.fsbackup-conf",{"title":49,"path":50,"stem":51},"targets.yml","\u002Fconfiguration\u002Ftargets","3.configuration\u002F2.targets",{"title":53,"path":54,"stem":55},"Scheduling","\u002Fconfiguration\u002Fscheduling","3.configuration\u002F3.scheduling",{"title":57,"icon":58,"path":59,"stem":60,"children":61,"page":37},"Usage","i-lucide-play","\u002Fusage","4.usage",[62,66],{"title":63,"path":64,"stem":65},"Web UI","\u002Fusage\u002Fweb-ui","4.usage\u002F1.web-ui",{"title":67,"path":68,"stem":69},"Running jobs manually","\u002Fusage\u002Frunning-jobs","4.usage\u002F2.running-jobs",{"title":71,"icon":72,"path":73,"stem":74,"children":75,"page":37},"Restore","i-lucide-history","\u002Frestore","5.restore",[76],{"title":77,"path":78,"stem":79},"Restoring data","\u002Frestore\u002Frestore","5.restore\u002F1.restore",{"title":81,"icon":82,"path":83,"stem":84,"children":85,"page":37},"Reference","i-lucide-book-open","\u002Freference","6.reference",[86,90],{"title":87,"path":88,"stem":89},"Script reference","\u002Freference\u002Fscripts","6.reference\u002F1.scripts",{"title":91,"path":92,"stem":93},"Prometheus metrics","\u002Freference\u002Fmetrics","6.reference\u002F2.metrics",{"id":95,"title":96,"body":97,"description":96,"extension":383,"meta":384,"navigation":385,"path":386,"seo":387,"stem":390,"__hash__":391},"landing\u002Findex.md","",{"type":98,"value":99,"toc":380},"minimark",[100,186,315,368,376],[101,102,104,111,123,128,148],"u-page-hero",{"orientation":103},"horizontal",[105,106,107],"template",{"v-slot:headline":96},[108,109,110],"p",{},"ZFS-native backups",[105,112,113],{"v-slot:title":96},[108,114,115,116,122],{},"Snapshot backups for your ",[117,118,121],"span",{"className":119},[120],"text-primary","home lab",".",[105,124,125],{"v-slot:description":96},[108,126,127],{},"fsbackup pulls backups from your machines over SSH, stores them as ZFS snapshots, and exports to S3. Daily, weekly, and monthly retention — all managed from a clean web UI.",[105,129,130,138],{"v-slot:links":96},[131,132,135],"u-button",{"size":133,"to":6,"trailing-icon":134},"xl","i-lucide-arrow-right",[108,136,137],{},"Get started",[131,139,145],{"size":133,"to":140,"color":141,"icon":142,"target":143,"variant":144},"https:\u002F\u002Fgithub.com\u002Ffsbackup\u002Ffsbackup","neutral","i-simple-icons-github","_blank","outline",[108,146,147],{},"View on GitHub",[149,150,152],"prose-pre",{"filename":151},"terminal",[153,154,158],"pre",{"className":155,"code":156,"language":157,"meta":96,"style":96},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002Ffsbackup\u002Ffsbackup\u002Fmain\u002Fbin\u002Ffs-install.sh | sudo bash\n","bash",[159,160,161],"code",{"__ignoreMap":96},[117,162,165,169,173,176,180,183],{"class":163,"line":164},"line",1,[117,166,168],{"class":167},"sBMFI","curl",[117,170,172],{"class":171},"sfazB"," -fsSL",[117,174,175],{"class":171}," https:\u002F\u002Fraw.githubusercontent.com\u002Ffsbackup\u002Ffsbackup\u002Fmain\u002Fbin\u002Ffs-install.sh",[117,177,179],{"class":178},"sMK4o"," |",[117,181,182],{"class":167}," sudo",[117,184,185],{"class":171}," bash\n",[187,188,189,194],"u-page-section",{},[105,190,191],{"v-slot:title":96},[108,192,193],{},"Everything your home lab needs",[105,195,196,214,227,240,253,266,279,295],{"v-slot:features":96},[197,198,200,205],"u-page-feature",{"icon":199},"i-lucide-layers",[105,201,202],{"v-slot:title":96},[108,203,204],{},"ZFS snapshot history",[105,206,207],{"v-slot:description":96},[108,208,209,210,213],{},"Each successful rsync run creates a ZFS snapshot. Daily, weekly, monthly, and annual retention — managed automatically by ",[159,211,212],{},"fs-retention.sh",". Browse any point in time from the web UI.",[197,215,217,222],{"icon":216},"i-lucide-copy-check",[105,218,219],{"v-slot:title":96},[108,220,221],{},"ZFS deduplication",[105,223,224],{"v-slot:description":96},[108,225,226],{},"ZFS block-level dedup eliminates redundant data across all snapshots on the pool. Identical blocks — common across weekly and monthly history — are stored only once.",[197,228,230,235],{"icon":229},"i-lucide-shield-check",[105,231,232],{"v-slot:title":96},[108,233,234],{},"Self-healing storage",[105,236,237],{"v-slot:description":96},[108,238,239],{},"ZFS checksums every block and automatically repairs corruption using the mirror copy. Silent data rot is detected and fixed during regular scrubs — no manual intervention needed.",[197,241,243,248],{"icon":242},"i-lucide-hard-drive",[105,244,245],{"v-slot:title":96},[108,246,247],{},"Redundant storage",[105,249,250],{"v-slot:description":96},[108,251,252],{},"Run a ZFS mirrored vdev and both drives are always in sync — no separate mirror job needed. Lose a disk, replace it, and ZFS resilvers automatically.",[197,254,256,261],{"icon":255},"i-lucide-cloud-upload",[105,257,258],{"v-slot:title":96},[108,259,260],{},"S3 offsite export",[105,262,263],{"v-slot:description":96},[108,264,265],{},"Encrypts and uploads weekly and monthly snapshots to S3 using age public-key encryption. Private key stays off-server. Idempotent — safe to re-run.",[197,267,269,274],{"icon":268},"i-lucide-monitor",[105,270,271],{"v-slot:title":96},[108,272,273],{},"Web UI + PWA",[105,275,276],{"v-slot:description":96},[108,277,278],{},"Browse snapshots, trigger jobs, restore files, view S3 archives, and monitor job status from a mobile-friendly FastAPI + HTMX web interface. Install as a PWA for quick access from your phone.",[197,280,282,286],{"icon":281},"i-lucide-activity",[105,283,284],{"v-slot:title":96},[108,285,91],{},[105,287,288],{"v-slot:description":96},[108,289,290,291,294],{},"Emits ",[159,292,293],{},".prom"," files for node_exporter. Track job status, snapshot counts, orphans, S3 uploads, dataset sizes, and more in Grafana.",[197,296,298,303],{"icon":297},"i-lucide-timer",[105,299,300],{"v-slot:title":96},[108,301,302],{},"systemd-native scheduling",[105,304,305],{"v-slot:description":96},[108,306,307,308,310,311,314],{},"Per-class runner timers managed by systemd. Schedules are configured in ",[159,309,45],{}," and applied with ",[159,312,313],{},"fs-schedule-apply.sh"," — no crontab editing required.",[187,316,317,322,327],{},[105,318,319],{"v-slot:title":96},[108,320,321],{},"Three data classes, one system",[105,323,324],{"v-slot:description":96},[108,325,326],{},"All class schedules, snapshot tiers, and retention periods are fully configurable to fit your home lab.",[105,328,329,342,355],{"v-slot:features":96},[197,330,332,337],{"icon":331},"i-lucide-database",[105,333,334],{"v-slot:title":96},[108,335,336],{},"class1 — Application data",[105,338,339],{"v-slot:description":96},[108,340,341],{},"Frequently changing data: app volumes, databases, personal files. Default: daily, weekly, and monthly snapshots.",[197,343,345,350],{"icon":344},"i-lucide-settings",[105,346,347],{"v-slot:title":96},[108,348,349],{},"class2 — Infrastructure config",[105,351,352],{"v-slot:description":96},[108,353,354],{},"Docker stack files, nginx, DNS zone files, and other config. Default: daily — lightweight, fast, always current.",[197,356,358,363],{"icon":357},"i-lucide-image",[105,359,360],{"v-slot:title":96},[108,361,362],{},"class3 — Archives",[105,364,365],{"v-slot:description":96},[108,366,367],{},"Large archives that change infrequently: photo libraries, video collections, media. Default: monthly snapshots.",[187,369,370],{},[371,372],"u-page-c-t-a",{":links":373,"description":374,"title":375},"[{\"label\":\"Get started\",\"to\":\"\u002Fgetting-started\",\"trailingIcon\":\"i-lucide-arrow-right\"},{\"label\":\"View on GitHub\",\"to\":\"https:\u002F\u002Fgithub.com\u002Ffsbackup\u002Ffsbackup\",\"target\":\"_blank\",\"variant\":\"subtle\",\"icon\":\"i-simple-icons-github\"}]","One installer, one config file, all your machines covered.","Ready to back up your home lab?",[377,378,379],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":96,"searchDepth":164,"depth":381,"links":382},2,[],"md",{},true,"\u002F",{"title":388,"description":389},"fsbackup — ZFS-native backup for home labs","ZFS-native rsync backup system with snapshot history, S3 offsite export, and a web UI. Built for home labs.","index","aIax_IcPH4C4TicrFYNO6n3B7WXTQCqcjAHolemv1js",1775923864293]