[{"data":1,"prerenderedAt":1071},["ShallowReactive",2],{"docs-rclone-eu-s3-setup":3,"docs-related-rclone-eu-s3-setup":207},{"id":4,"title":5,"body":6,"date":194,"description":195,"extension":196,"meta":197,"navigation":198,"path":199,"seo":200,"stem":201,"tags":202,"tool":140,"__hash__":206},"docs/docs/rclone-eu-s3-setup.md","rclone — Scripted Sync and Transfer from the Command Line",{"type":7,"value":8,"toc":187},"minimark",[9,13,18,31,35,51,55,62,121,125,128,148,152,155,177,183],[10,11,12],"p",{},"rclone is the Swiss Army knife of cloud storage. Works on any OS, easy to automate with cron.",[14,15,17],"h3",{"id":16},"_1-install-rclone","1. Install rclone",[10,19,20,21,25,26,30],{},"On Linux/macOS run ",[22,23,24],"code",{},"curl https://rclone.org/install.sh | sudo bash",". On Windows, download the installer from ",[27,28,29],"strong",{},"rclone.org",".",[14,32,34],{"id":33},"_2-get-your-s3-credentials","2. Get your S3 credentials",[10,36,37,38,43,44,47,48,30],{},"Log in to your ",[39,40,42],"a",{"href":41},"/dashboard","HummingTribe dashboard"," → S3 Storage tab. Copy your ",[27,45,46],{},"Access Key ID"," and ",[27,49,50],{},"Secret Access Key",[14,52,54],{"id":53},"_3-configure-a-remote","3. Configure a remote",[10,56,57,58,61],{},"Add the following to your rclone config file (",[22,59,60],{},"~/.config/rclone/rclone.conf","):",[63,64,69],"pre",{"className":65,"code":66,"language":67,"meta":68,"style":68},"language-ini shiki shiki-themes github-light github-dark","[hummingtribe]\ntype = s3\nprovider = Other\naccess_key_id = YOUR_ACCESS_KEY_ID\nsecret_access_key = YOUR_SECRET_ACCESS_KEY\nendpoint = https://storage.hummingtribe.com\nforce_path_style = true\nregion = garage\n","ini","",[22,70,71,79,85,91,97,103,109,115],{"__ignoreMap":68},[72,73,76],"span",{"class":74,"line":75},"line",1,[72,77,78],{},"[hummingtribe]\n",[72,80,82],{"class":74,"line":81},2,[72,83,84],{},"type = s3\n",[72,86,88],{"class":74,"line":87},3,[72,89,90],{},"provider = Other\n",[72,92,94],{"class":74,"line":93},4,[72,95,96],{},"access_key_id = YOUR_ACCESS_KEY_ID\n",[72,98,100],{"class":74,"line":99},5,[72,101,102],{},"secret_access_key = YOUR_SECRET_ACCESS_KEY\n",[72,104,106],{"class":74,"line":105},6,[72,107,108],{},"endpoint = https://storage.hummingtribe.com\n",[72,110,112],{"class":74,"line":111},7,[72,113,114],{},"force_path_style = true\n",[72,116,118],{"class":74,"line":117},8,[72,119,120],{},"region = garage\n",[14,122,124],{"id":123},"_4-test-the-connection","4. Test the connection",[10,126,127],{},"List your bucket to confirm everything works:",[63,129,133],{"className":130,"code":131,"language":132,"meta":68,"style":68},"language-bash shiki shiki-themes github-light github-dark","rclone ls hummingtribe:your-bucket-name\n","bash",[22,134,135],{"__ignoreMap":68},[72,136,137,141,145],{"class":74,"line":75},[72,138,140],{"class":139},"sScJk","rclone",[72,142,144],{"class":143},"sZZnC"," ls",[72,146,147],{"class":143}," hummingtribe:your-bucket-name\n",[14,149,151],{"id":150},"_5-sync-a-folder","5. Sync a folder",[10,153,154],{},"Copy a local folder to your bucket:",[63,156,158],{"className":130,"code":157,"language":132,"meta":68,"style":68},"rclone sync /path/to/local hummingtribe:your-bucket-name/backups --progress\n",[22,159,160],{"__ignoreMap":68},[72,161,162,164,167,170,173],{"class":74,"line":75},[72,163,140],{"class":139},[72,165,166],{"class":143}," sync",[72,168,169],{"class":143}," /path/to/local",[72,171,172],{"class":143}," hummingtribe:your-bucket-name/backups",[72,174,176],{"class":175},"sj4cs"," --progress\n",[10,178,179,180],{},"Add this to a cron job for automated daily backups: ",[22,181,182],{},"0 2 * * * rclone sync /path/to/local hummingtribe:your-bucket-name/backups",[184,185,186],"style",{},"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);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":68,"searchDepth":81,"depth":81,"links":188},[189,190,191,192,193],{"id":16,"depth":87,"text":17},{"id":33,"depth":87,"text":34},{"id":53,"depth":87,"text":54},{"id":123,"depth":87,"text":124},{"id":150,"depth":87,"text":151},"2026-03-24","Configure rclone to sync and transfer files to HummingTribe S3 storage from the command line. Works on any OS, easy to automate with cron.","md",{},true,"/docs/rclone-eu-s3-setup",{"title":5,"description":195},"docs/rclone-eu-s3-setup",[203,204,205,140],"s3","backup","setup-guide","OVX0pczewz1YTtRZDZUD0JahCbkothReVOl2YBaK4cU",[208,838,959],{"id":209,"title":210,"body":211,"date":828,"description":829,"extension":196,"meta":830,"navigation":198,"path":831,"seo":832,"stem":833,"tags":834,"tool":372,"__hash__":837},"docs/docs/restic-eu-s3-setup.md","restic — Encrypted, Deduplicated Backups to EU S3",{"type":7,"value":212,"toc":818},[213,216,220,223,242,245,259,273,275,285,289,292,349,359,363,376,382,386,401,404,412,415,419,422,434,437,458,468,472,475,486,530,533,549,559,602,610,741,744,760,764,767,800,810,815],[10,214,215],{},"Fast, encrypted, deduplicated backups from the command line. Works on Linux and macOS. Windows is supported via the restic binary with PowerShell environment variables and Task Scheduler — not covered here.",[14,217,219],{"id":218},"_1-install-restic","1. Install restic",[10,221,222],{},"On Debian/Ubuntu:",[63,224,226],{"className":130,"code":225,"language":132,"meta":68,"style":68},"sudo apt install restic\n",[22,227,228],{"__ignoreMap":68},[72,229,230,233,236,239],{"class":74,"line":75},[72,231,232],{"class":139},"sudo",[72,234,235],{"class":143}," apt",[72,237,238],{"class":143}," install",[72,240,241],{"class":143}," restic\n",[10,243,244],{},"On macOS:",[63,246,248],{"className":130,"code":247,"language":132,"meta":68,"style":68},"brew install restic\n",[22,249,250],{"__ignoreMap":68},[72,251,252,255,257],{"class":74,"line":75},[72,253,254],{"class":139},"brew",[72,256,238],{"class":143},[72,258,241],{"class":143},[10,260,261,262,265,266,269,270,30],{},"The ",[22,263,264],{},"apt"," package may lag behind upstream releases. For the latest version, download the static binary from ",[27,267,268],{},"github.com/restic/restic/releases"," and place it in ",[22,271,272],{},"/usr/local/bin",[14,274,34],{"id":33},[10,276,37,277,43,279,281,282,284],{},[39,278,42],{"href":41},[27,280,46],{}," and reveal your ",[27,283,50],{}," (shown once — save it now).",[14,286,288],{"id":287},"_3-export-environment-variables","3. Export environment variables",[10,290,291],{},"restic reads its configuration from environment variables. Set these in your terminal:",[63,293,295],{"className":130,"code":294,"language":132,"meta":68,"style":68},"export AWS_ACCESS_KEY_ID=\"your-access-key-id\"\nexport AWS_SECRET_ACCESS_KEY=\"your-secret-access-key\"\nexport RESTIC_REPOSITORY=\"s3:https://storage.hummingtribe.com/your-bucket-name\"\nexport RESTIC_PASSWORD=\"your-password\"\n",[22,296,297,313,325,337],{"__ignoreMap":68},[72,298,299,303,307,310],{"class":74,"line":75},[72,300,302],{"class":301},"szBVR","export",[72,304,306],{"class":305},"sVt8B"," AWS_ACCESS_KEY_ID",[72,308,309],{"class":301},"=",[72,311,312],{"class":143},"\"your-access-key-id\"\n",[72,314,315,317,320,322],{"class":74,"line":81},[72,316,302],{"class":301},[72,318,319],{"class":305}," AWS_SECRET_ACCESS_KEY",[72,321,309],{"class":301},[72,323,324],{"class":143},"\"your-secret-access-key\"\n",[72,326,327,329,332,334],{"class":74,"line":87},[72,328,302],{"class":301},[72,330,331],{"class":305}," RESTIC_REPOSITORY",[72,333,309],{"class":301},[72,335,336],{"class":143},"\"s3:https://storage.hummingtribe.com/your-bucket-name\"\n",[72,338,339,341,344,346],{"class":74,"line":93},[72,340,302],{"class":301},[72,342,343],{"class":305}," RESTIC_PASSWORD",[72,345,309],{"class":301},[72,347,348],{"class":143},"\"your-password\"\n",[10,350,351,354,355,358],{},[22,352,353],{},"RESTIC_PASSWORD"," is the encryption passphrase for your repository. Choose a strong password and store it securely. ",[27,356,357],{},"If you lose this password, your backups are unrecoverable"," — restic has no password reset.",[14,360,362],{"id":361},"_4-initialize-the-repository","4. Initialize the repository",[63,364,366],{"className":130,"code":365,"language":132,"meta":68,"style":68},"restic init\n",[22,367,368],{"__ignoreMap":68},[72,369,370,373],{"class":74,"line":75},[72,371,372],{"class":139},"restic",[72,374,375],{"class":143}," init\n",[10,377,378,379,381],{},"This creates the repository structure in your S3 bucket and derives an encryption key from ",[22,380,353],{},". You only need to run this once per bucket.",[14,383,385],{"id":384},"_5-run-your-first-backup","5. Run your first backup",[63,387,389],{"className":130,"code":388,"language":132,"meta":68,"style":68},"restic backup /path/to/data\n",[22,390,391],{"__ignoreMap":68},[72,392,393,395,398],{"class":74,"line":75},[72,394,372],{"class":139},[72,396,397],{"class":143}," backup",[72,399,400],{"class":143}," /path/to/data\n",[10,402,403],{},"Example output:",[63,405,410],{"className":406,"code":408,"language":409},[407],"language-text","repository 3a9e2b1c opened (version 2, compression level auto)\ncreated new cache in /home/user/.cache/restic\n\nFiles:        142 new,     0 changed,     0 unmodified\nDirs:          18 new,     0 changed,     0 unmodified\nAdded to the repository: 48.271 MiB (45.893 MiB stored)\n\nprocessed 142 files, 48.271 MiB in 0:03\nsnapshot 6a3e8f12 saved\n","text",[22,411,408],{"__ignoreMap":68},[10,413,414],{},"Subsequent backups only upload changed or new data blocks — restic deduplicates automatically.",[14,416,418],{"id":417},"_6-list-snapshots-and-restore","6. List snapshots and restore",[10,420,421],{},"List all snapshots:",[63,423,425],{"className":130,"code":424,"language":132,"meta":68,"style":68},"restic snapshots\n",[22,426,427],{"__ignoreMap":68},[72,428,429,431],{"class":74,"line":75},[72,430,372],{"class":139},[72,432,433],{"class":143}," snapshots\n",[10,435,436],{},"Restore a specific snapshot to a target directory:",[63,438,440],{"className":130,"code":439,"language":132,"meta":68,"style":68},"restic restore 6a3e8f12 --target /path/to/restore\n",[22,441,442],{"__ignoreMap":68},[72,443,444,446,449,452,455],{"class":74,"line":75},[72,445,372],{"class":139},[72,447,448],{"class":143}," restore",[72,450,451],{"class":143}," 6a3e8f12",[72,453,454],{"class":175}," --target",[72,456,457],{"class":143}," /path/to/restore\n",[10,459,460,461,464,465,30],{},"Replace ",[22,462,463],{},"6a3e8f12"," with the snapshot ID from ",[22,466,467],{},"restic snapshots",[14,469,471],{"id":470},"_7-automate-with-cron-or-launchd","7. Automate with cron or launchd",[10,473,474],{},"Store your environment variables in a file so cron or launchd can source them.",[10,476,477,478,481,482,485],{},"Create ",[22,479,480],{},"/root/.restic.env"," (Linux) or ",[22,483,484],{},"~/.restic.env"," (macOS):",[63,487,488],{"className":130,"code":294,"language":132,"meta":68,"style":68},[22,489,490,500,510,520],{"__ignoreMap":68},[72,491,492,494,496,498],{"class":74,"line":75},[72,493,302],{"class":301},[72,495,306],{"class":305},[72,497,309],{"class":301},[72,499,312],{"class":143},[72,501,502,504,506,508],{"class":74,"line":81},[72,503,302],{"class":301},[72,505,319],{"class":305},[72,507,309],{"class":301},[72,509,324],{"class":143},[72,511,512,514,516,518],{"class":74,"line":87},[72,513,302],{"class":301},[72,515,331],{"class":305},[72,517,309],{"class":301},[72,519,336],{"class":143},[72,521,522,524,526,528],{"class":74,"line":93},[72,523,302],{"class":301},[72,525,343],{"class":305},[72,527,309],{"class":301},[72,529,348],{"class":143},[10,531,532],{},"Lock down permissions — this file contains your repo password and S3 credentials in plaintext:",[63,534,536],{"className":130,"code":535,"language":132,"meta":68,"style":68},"chmod 600 ~/.restic.env\n",[22,537,538],{"__ignoreMap":68},[72,539,540,543,546],{"class":74,"line":75},[72,541,542],{"class":139},"chmod",[72,544,545],{"class":175}," 600",[72,547,548],{"class":143}," ~/.restic.env\n",[10,550,551,554,555,558],{},[27,552,553],{},"Linux (cron):"," Create ",[22,556,557],{},"/etc/cron.d/restic-backup",":",[63,560,562],{"className":130,"code":561,"language":132,"meta":68,"style":68},"0 2 * * * root . /root/.restic.env && /usr/bin/restic backup /path/to/data --quiet\n",[22,563,564],{"__ignoreMap":68},[72,565,566,569,572,575,577,579,582,585,588,591,594,596,599],{"class":74,"line":75},[72,567,568],{"class":139},"0",[72,570,571],{"class":175}," 2",[72,573,574],{"class":175}," *",[72,576,574],{"class":175},[72,578,574],{"class":175},[72,580,581],{"class":143}," root",[72,583,584],{"class":143}," .",[72,586,587],{"class":143}," /root/.restic.env",[72,589,590],{"class":305}," && ",[72,592,593],{"class":139},"/usr/bin/restic",[72,595,397],{"class":143},[72,597,598],{"class":143}," /path/to/data",[72,600,601],{"class":175}," --quiet\n",[10,603,604,554,607,558],{},[27,605,606],{},"macOS (launchd):",[22,608,609],{},"~/Library/LaunchAgents/com.user.restic.plist",[63,611,615],{"className":612,"code":613,"language":614,"meta":68,"style":68},"language-xml shiki shiki-themes github-light github-dark","\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\u003C!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\"\n  \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n\u003Cplist version=\"1.0\">\n\u003Cdict>\n  \u003Ckey>Label\u003C/key>\n  \u003Cstring>com.user.restic\u003C/string>\n  \u003Ckey>ProgramArguments\u003C/key>\n  \u003Carray>\n    \u003Cstring>/bin/bash\u003C/string>\n    \u003Cstring>-c\u003C/string>\n    \u003Cstring>source $HOME/.restic.env &amp;&amp; /usr/local/bin/restic backup /path/to/data --quiet\u003C/string>\n  \u003C/array>\n  \u003Ckey>StartCalendarInterval\u003C/key>\n  \u003Cdict>\n    \u003Ckey>Hour\u003C/key>\n    \u003Cinteger>2\u003C/integer>\n    \u003Ckey>Minute\u003C/key>\n    \u003Cinteger>0\u003C/integer>\n  \u003C/dict>\n\u003C/dict>\n\u003C/plist>\n","xml",[22,616,617,622,627,632,637,642,647,652,657,663,669,675,681,687,693,699,705,711,717,723,729,735],{"__ignoreMap":68},[72,618,619],{"class":74,"line":75},[72,620,621],{},"\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",[72,623,624],{"class":74,"line":81},[72,625,626],{},"\u003C!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\"\n",[72,628,629],{"class":74,"line":87},[72,630,631],{},"  \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n",[72,633,634],{"class":74,"line":93},[72,635,636],{},"\u003Cplist version=\"1.0\">\n",[72,638,639],{"class":74,"line":99},[72,640,641],{},"\u003Cdict>\n",[72,643,644],{"class":74,"line":105},[72,645,646],{},"  \u003Ckey>Label\u003C/key>\n",[72,648,649],{"class":74,"line":111},[72,650,651],{},"  \u003Cstring>com.user.restic\u003C/string>\n",[72,653,654],{"class":74,"line":117},[72,655,656],{},"  \u003Ckey>ProgramArguments\u003C/key>\n",[72,658,660],{"class":74,"line":659},9,[72,661,662],{},"  \u003Carray>\n",[72,664,666],{"class":74,"line":665},10,[72,667,668],{},"    \u003Cstring>/bin/bash\u003C/string>\n",[72,670,672],{"class":74,"line":671},11,[72,673,674],{},"    \u003Cstring>-c\u003C/string>\n",[72,676,678],{"class":74,"line":677},12,[72,679,680],{},"    \u003Cstring>source $HOME/.restic.env &amp;&amp; /usr/local/bin/restic backup /path/to/data --quiet\u003C/string>\n",[72,682,684],{"class":74,"line":683},13,[72,685,686],{},"  \u003C/array>\n",[72,688,690],{"class":74,"line":689},14,[72,691,692],{},"  \u003Ckey>StartCalendarInterval\u003C/key>\n",[72,694,696],{"class":74,"line":695},15,[72,697,698],{},"  \u003Cdict>\n",[72,700,702],{"class":74,"line":701},16,[72,703,704],{},"    \u003Ckey>Hour\u003C/key>\n",[72,706,708],{"class":74,"line":707},17,[72,709,710],{},"    \u003Cinteger>2\u003C/integer>\n",[72,712,714],{"class":74,"line":713},18,[72,715,716],{},"    \u003Ckey>Minute\u003C/key>\n",[72,718,720],{"class":74,"line":719},19,[72,721,722],{},"    \u003Cinteger>0\u003C/integer>\n",[72,724,726],{"class":74,"line":725},20,[72,727,728],{},"  \u003C/dict>\n",[72,730,732],{"class":74,"line":731},21,[72,733,734],{},"\u003C/dict>\n",[72,736,738],{"class":74,"line":737},22,[72,739,740],{},"\u003C/plist>\n",[10,742,743],{},"Load the agent:",[63,745,747],{"className":130,"code":746,"language":132,"meta":68,"style":68},"launchctl load ~/Library/LaunchAgents/com.user.restic.plist\n",[22,748,749],{"__ignoreMap":68},[72,750,751,754,757],{"class":74,"line":75},[72,752,753],{"class":139},"launchctl",[72,755,756],{"class":143}," load",[72,758,759],{"class":143}," ~/Library/LaunchAgents/com.user.restic.plist\n",[14,761,763],{"id":762},"_8-retention-policy-with-forget-prune","8. Retention policy with forget + prune",[10,765,766],{},"Remove old snapshots by policy:",[63,768,770],{"className":130,"code":769,"language":132,"meta":68,"style":68},"restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --prune\n",[22,771,772],{"__ignoreMap":68},[72,773,774,776,779,782,785,788,791,794,797],{"class":74,"line":75},[72,775,372],{"class":139},[72,777,778],{"class":143}," forget",[72,780,781],{"class":175}," --keep-daily",[72,783,784],{"class":175}," 7",[72,786,787],{"class":175}," --keep-weekly",[72,789,790],{"class":175}," 4",[72,792,793],{"class":175}," --keep-monthly",[72,795,796],{"class":175}," 12",[72,798,799],{"class":175}," --prune\n",[10,801,802,805,806,809],{},[22,803,804],{},"forget"," removes snapshots that fall outside the retention rules. ",[22,807,808],{},"prune"," deletes unreferenced data blocks and frees the actual storage. Pruning is an expensive operation on large repositories — schedule it separately from the nightly backup (e.g. weekly on Sundays).",[10,811,812,813,30],{},"Manage your bucket and credentials from your ",[39,814,42],{"href":41},[184,816,817],{},"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);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":68,"searchDepth":81,"depth":81,"links":819},[820,821,822,823,824,825,826,827],{"id":218,"depth":87,"text":219},{"id":33,"depth":87,"text":34},{"id":287,"depth":87,"text":288},{"id":361,"depth":87,"text":362},{"id":384,"depth":87,"text":385},{"id":417,"depth":87,"text":418},{"id":470,"depth":87,"text":471},{"id":762,"depth":87,"text":763},"2026-04-17","Set up restic for encrypted, deduplicated backups to HummingTribe S3 on Linux and macOS. Install, initialize repo, schedule automated backups, manage retention.",{},"/docs/restic-eu-s3-setup",{"title":210,"description":829},"docs/restic-eu-s3-setup",[203,204,205,372,835,836],"linux","macos","sag8vyWzHWHJfpogioEbc9tmhSM8fdT1rWwxBk7bjTE",{"id":839,"title":840,"body":841,"date":194,"description":951,"extension":196,"meta":952,"navigation":198,"path":953,"seo":954,"stem":955,"tags":956,"tool":957,"__hash__":958},"docs/docs/duplicati-eu-s3-setup.md","Duplicati — Automated Encrypted Backups (Windows, macOS, Linux)",{"type":7,"value":842,"toc":944},[843,846,850,860,862,870,874,885,889,900,927,933,937],[10,844,845],{},"Duplicati is free, open-source, and runs a local web UI. Setup takes under 10 minutes.",[14,847,849],{"id":848},"_1-install-duplicati","1. Install Duplicati",[10,851,852,853,856,857,30],{},"Download the latest release from ",[27,854,855],{},"duplicati.com"," and install it on your machine. Launch the application — it opens in your browser at ",[22,858,859],{},"http://localhost:8200",[14,861,34],{"id":33},[10,863,37,864,43,866,281,868,284],{},[39,865,42],{"href":41},[27,867,46],{},[27,869,50],{},[14,871,873],{"id":872},"_3-add-a-new-backup-job","3. Add a new backup job",[10,875,876,877,880,881,884],{},"Click ",[27,878,879],{},"Add backup"," → ",[27,882,883],{},"Configure a new backup",". Give it a name, set an encryption passphrase, and click Next.",[14,886,888],{"id":887},"_4-configure-storage-destination","4. Configure storage destination",[10,890,891,892,895,896,899],{},"Set ",[27,893,894],{},"Storage Type"," to ",[27,897,898],{},"S3 Compatible",". Fill in the fields:",[10,901,902,905,906,909,905,912,915,905,918,921,905,924],{},[27,903,904],{},"Server:"," ",[22,907,908],{},"storage.hummingtribe.com",[27,910,911],{},"Bucket name:",[22,913,914],{},"your-bucket-name",[27,916,917],{},"AWS Access ID:",[22,919,920],{},"your-access-key-id",[27,922,923],{},"AWS Secret Key:",[22,925,926],{},"your-secret-access-key",[10,928,876,929,932],{},[27,930,931],{},"Test connection"," — you should see a success message.",[14,934,936],{"id":935},"_5-select-source-and-schedule","5. Select source and schedule",[10,938,939,940,943],{},"Choose the folders to back up, set your schedule (daily is recommended), and click ",[27,941,942],{},"Save",". Duplicati will run your first backup immediately.",{"title":68,"searchDepth":81,"depth":81,"links":945},[946,947,948,949,950],{"id":848,"depth":87,"text":849},{"id":33,"depth":87,"text":34},{"id":872,"depth":87,"text":873},{"id":887,"depth":87,"text":888},{"id":935,"depth":87,"text":936},"Set up automated encrypted backups from Windows, macOS, or Linux to HummingTribe S3 storage using Duplicati. Free, open-source, under 10 minutes.",{},"/docs/duplicati-eu-s3-setup",{"title":840,"description":951},"docs/duplicati-eu-s3-setup",[203,204,205,957],"duplicati","zbyg4xZCLGHkLeFvB74tp4b6ag2Q77pWS7HTP7hKAuQ",{"id":960,"title":961,"body":962,"date":194,"description":1063,"extension":196,"meta":1064,"navigation":198,"path":1065,"seo":1066,"stem":1067,"tags":1068,"tool":1069,"__hash__":1070},"docs/docs/synology-hyper-backup-eu-s3.md","Synology Hyper Backup — Scheduled NAS Backups with Versioning and Encryption",{"type":7,"value":963,"toc":1056},[964,967,971,982,984,992,996,1014,1018,1039,1045,1049],[10,965,966],{},"Requires DSM 7.0 or later. Hyper Backup supports S3-compatible storage natively.",[14,968,970],{"id":969},"_1-install-hyper-backup","1. Install Hyper Backup",[10,972,973,974,977,978,981],{},"Open ",[27,975,976],{},"Package Center"," on your Synology DSM and install ",[27,979,980],{},"Hyper Backup"," if not already present.",[14,983,34],{"id":33},[10,985,37,986,43,988,47,990,30],{},[39,987,42],{"href":41},[27,989,46],{},[27,991,50],{},[14,993,995],{"id":994},"_3-create-a-new-backup-task","3. Create a new backup task",[10,997,998,999,1002,1003,880,1006,1009,1010,1013],{},"Open Hyper Backup → click the ",[27,1000,1001],{},"+"," button → ",[27,1004,1005],{},"Data backup task",[27,1007,1008],{},"S3 Storage",". On the next screen select ",[27,1011,1012],{},"Custom S3 Compatible Server"," from the provider dropdown.",[14,1015,1017],{"id":1016},"_4-enter-connection-details","4. Enter connection details",[10,1019,1020,905,1023,1025,905,1028,1030,905,1033,1035,905,1037],{},[27,1021,1022],{},"Server address:",[22,1024,908],{},[27,1026,1027],{},"Access key:",[22,1029,920],{},[27,1031,1032],{},"Secret key:",[22,1034,926],{},[27,1036,911],{},[22,1038,914],{},[10,1040,876,1041,1044],{},[27,1042,1043],{},"Next"," — Hyper Backup will connect and list available folders in your bucket.",[14,1046,1048],{"id":1047},"_5-select-folders-schedule-and-encryption","5. Select folders, schedule, and encryption",[10,1050,1051,1052,1055],{},"Choose the shared folders and applications to back up. Set a backup schedule (daily recommended). Enable ",[27,1053,1054],{},"Client-side encryption"," and set a strong password — this encrypts your data before it leaves your NAS. Complete the wizard and run the first backup immediately to verify.",{"title":68,"searchDepth":81,"depth":81,"links":1057},[1058,1059,1060,1061,1062],{"id":969,"depth":87,"text":970},{"id":33,"depth":87,"text":34},{"id":994,"depth":87,"text":995},{"id":1016,"depth":87,"text":1017},{"id":1047,"depth":87,"text":1048},"Back up your Synology NAS to HummingTribe S3 storage using Hyper Backup. Supports versioning, encryption, and scheduled jobs. DSM 7+.",{},"/docs/synology-hyper-backup-eu-s3",{"title":961,"description":1063},"docs/synology-hyper-backup-eu-s3",[203,204,205,1069],"synology","Qjo4P9MlWy1oafhCN7uGtAqAmU86q04yQ-DOvA8GBRo",1776381086556]