{ "info": { "author": "Bystroushaak", "author_email": "bystrousak@kitakitsune.org", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.7" ], "description": "Rdiff trimmer\n=============\n\nTool designed to trim old increments from the `rdiff-backup `_.\n\nRdiff-backup can't remove old increments and this script can't do that either. What it can is to create new directory with only selected increments by restoring old increments and adding them into the new storage.\n\nThis may be potentially time and disk-space consuming operation, so be aware before you try it.\n\nModes\n-----\n\nSo far, I've implemented following strategies:\n\n``-k`` / ``--keep-increments`` ``FILE``\n+++++++++++++++++++++++++++++++++++++++\n\nKeep only increments specified in ``FILE``. It should be a list of timestamps (see ``rdiff-backup --parsable-output -l dir`` for list of timestamps).\n\nExample\n'''''''\n\n::\n\n rdiff-backup -k backups_to_keep.txt my_delta_dir\n\nThis will automatically create directory named ``my_delta_dir_trimmed`` with only increments specified in file ``backups_to_keep.txt``.\n\n``-o`` / ``--one-for-each-month``\n+++++++++++++++++++++++++++++++++\n\nKeep **last** increment from each month, and all increments from the last three months.\n\nGreat if you want to trim really old incremental backups.\n\nExample\n'''''''\n\n::\n\n rdiff_trimmer -o my_delta_dir\n\nThis will automatically create directory named ``my_delta_dir_trimmed``.\n\n\n``-e`` / ``--remove-even``\n++++++++++++++++++++++++++\n\nReduce number of increments to half by keeping only odd increments.\n\nExample\n'''''''\n\n::\n\n rdiff_trimmer -e my_delta_dir\n\n\nThis will automatically create directory named ``my_delta_dir_trimmed``.\n\n\nInstallation\n------------\n\nThis project may be installed using PIP:\n\n::\n\n pip install --user -U rdiff_trimmer\n\n\nHelp\n----\n\n::\n\n usage: rdiff_trimmer [-h] [-k LIST] [-o] [-e] [-d] RSYNC_DIR [OUT_DIR]\n\n positional arguments:\n RSYNC_DIR Path to the rsync directory.\n OUT_DIR Path to the trimmed OUTPUT rsync directory. Default\n `{{RSYNC_DIR}}_trimmed`.\n\n optional arguments:\n -h, --help show this help message and exit\n -k LIST, --keep-increments LIST\n Keep only increments listed in this file.\n -o, --one-for-each-month\n Keep only one backup for each month.\n -e, --remove-even Remove even backups. Reduce number of backups to half.\n -d, --disable-compression\n Disable default gzip compression used by rdiff.\n\n\nReal example\n------------\n\n::\n\n bystrousak:/media/bystrousak/Internal/Backup/delta,0$ rdiff-backup -l xlit_delta\n Found 100 increments:\n increments.2016-10-06T21:46:49+02:00.dir Thu Oct 6 21:46:49 2016\n increments.2016-10-09T18:00:21+02:00.dir Sun Oct 9 18:00:21 2016\n increments.2016-10-18T00:34:36+02:00.dir Tue Oct 18 00:34:36 2016\n increments.2016-10-22T03:44:59+02:00.dir Sat Oct 22 03:44:59 2016\n increments.2016-10-29T23:20:03+02:00.dir Sat Oct 29 23:20:03 2016\n increments.2016-11-05T21:19:54+01:00.dir Sat Nov 5 21:19:54 2016\n increments.2016-11-12T12:46:04+01:00.dir Sat Nov 12 12:46:04 2016\n increments.2016-11-14T00:22:04+01:00.dir Mon Nov 14 00:22:04 2016\n increments.2016-11-16T00:09:38+01:00.dir Wed Nov 16 00:09:38 2016\n increments.2016-11-21T00:24:46+01:00.dir Mon Nov 21 00:24:46 2016\n increments.2016-11-22T21:02:35+01:00.dir Tue Nov 22 21:02:35 2016\n increments.2016-12-09T23:13:37+01:00.dir Fri Dec 9 23:13:37 2016\n increments.2016-12-12T00:55:07+01:00.dir Mon Dec 12 00:55:07 2016\n increments.2016-12-12T20:42:38+01:00.dir Mon Dec 12 20:42:38 2016\n increments.2016-12-25T18:48:13+01:00.dir Sun Dec 25 18:48:13 2016\n increments.2016-12-28T18:25:13+01:00.dir Wed Dec 28 18:25:13 2016\n increments.2017-01-03T20:26:22+01:00.dir Tue Jan 3 20:26:22 2017\n increments.2017-01-12T18:53:19+01:00.dir Thu Jan 12 18:53:19 2017\n increments.2017-01-15T16:42:42+01:00.dir Sun Jan 15 16:42:42 2017\n increments.2017-01-23T20:32:09+01:00.dir Mon Jan 23 20:32:09 2017\n increments.2017-01-25T03:02:03+01:00.dir Wed Jan 25 03:02:03 2017\n increments.2017-01-31T22:44:00+01:00.dir Tue Jan 31 22:44:00 2017\n increments.2017-02-05T18:04:52+01:00.dir Sun Feb 5 18:04:52 2017\n increments.2017-02-08T17:24:05+01:00.dir Wed Feb 8 17:24:05 2017\n increments.2017-02-12T03:16:53+01:00.dir Sun Feb 12 03:16:53 2017\n increments.2017-02-16T19:21:32+01:00.dir Thu Feb 16 19:21:32 2017\n increments.2017-02-18T01:03:35+01:00.dir Sat Feb 18 01:03:35 2017\n increments.2017-02-24T18:08:07+01:00.dir Fri Feb 24 18:08:07 2017\n increments.2017-02-26T22:43:35+01:00.dir Sun Feb 26 22:43:35 2017\n increments.2017-02-28T03:25:32+01:00.dir Tue Feb 28 03:25:32 2017\n increments.2017-03-04T00:29:03+01:00.dir Sat Mar 4 00:29:03 2017\n increments.2017-03-07T16:31:02+01:00.dir Tue Mar 7 16:31:02 2017\n increments.2017-03-15T16:08:05+01:00.dir Wed Mar 15 16:08:05 2017\n increments.2017-03-20T00:32:52+01:00.dir Mon Mar 20 00:32:52 2017\n increments.2017-03-26T17:44:46+02:00.dir Sun Mar 26 17:44:46 2017\n increments.2017-03-28T01:24:43+02:00.dir Tue Mar 28 01:24:43 2017\n increments.2017-04-04T00:18:42+02:00.dir Tue Apr 4 00:18:42 2017\n increments.2017-04-10T22:26:01+02:00.dir Mon Apr 10 22:26:01 2017\n increments.2017-04-13T02:05:35+02:00.dir Thu Apr 13 02:05:35 2017\n increments.2017-04-17T03:53:13+02:00.dir Mon Apr 17 03:53:13 2017\n increments.2017-04-23T00:16:43+02:00.dir Sun Apr 23 00:16:43 2017\n increments.2017-04-24T20:28:38+02:00.dir Mon Apr 24 20:28:38 2017\n increments.2017-04-28T17:48:13+02:00.dir Fri Apr 28 17:48:13 2017\n increments.2017-05-01T17:05:54+02:00.dir Mon May 1 17:05:54 2017\n increments.2017-05-06T14:53:45+02:00.dir Sat May 6 14:53:45 2017\n increments.2017-05-08T01:18:36+02:00.dir Mon May 8 01:18:36 2017\n increments.2017-05-12T21:21:06+02:00.dir Fri May 12 21:21:06 2017\n increments.2017-05-15T01:50:22+02:00.dir Mon May 15 01:50:22 2017\n increments.2017-05-20T18:36:21+02:00.dir Sat May 20 18:36:21 2017\n increments.2017-05-21T23:17:01+02:00.dir Sun May 21 23:17:01 2017\n increments.2017-05-26T14:27:02+02:00.dir Fri May 26 14:27:02 2017\n increments.2017-06-01T00:41:23+02:00.dir Thu Jun 1 00:41:23 2017\n increments.2017-06-04T19:54:44+02:00.dir Sun Jun 4 19:54:44 2017\n increments.2017-06-05T01:46:51+02:00.dir Mon Jun 5 01:46:51 2017\n increments.2017-06-05T01:50:49+02:00.dir Mon Jun 5 01:50:49 2017\n increments.2017-06-10T12:55:40+02:00.dir Sat Jun 10 12:55:40 2017\n increments.2017-06-15T02:05:46+02:00.dir Thu Jun 15 02:05:46 2017\n increments.2017-06-15T17:49:10+02:00.dir Thu Jun 15 17:49:10 2017\n increments.2017-06-19T02:26:20+02:00.dir Mon Jun 19 02:26:20 2017\n increments.2017-06-23T17:47:04+02:00.dir Fri Jun 23 17:47:04 2017\n increments.2017-07-02T01:43:56+02:00.dir Sun Jul 2 01:43:56 2017\n increments.2017-07-07T14:25:32+02:00.dir Fri Jul 7 14:25:32 2017\n increments.2017-07-14T20:56:14+02:00.dir Fri Jul 14 20:56:14 2017\n increments.2017-07-23T18:29:51+02:00.dir Sun Jul 23 18:29:51 2017\n increments.2017-07-27T00:55:34+02:00.dir Thu Jul 27 00:55:34 2017\n increments.2017-08-03T19:56:02+02:00.dir Thu Aug 3 19:56:02 2017\n increments.2017-08-12T23:55:28+02:00.dir Sat Aug 12 23:55:28 2017\n increments.2017-08-18T21:26:34+02:00.dir Fri Aug 18 21:26:34 2017\n increments.2017-08-21T01:22:28+02:00.dir Mon Aug 21 01:22:28 2017\n increments.2017-08-25T12:39:03+02:00.dir Fri Aug 25 12:39:03 2017\n increments.2017-08-26T00:28:28+02:00.dir Sat Aug 26 00:28:28 2017\n increments.2017-08-28T01:34:57+02:00.dir Mon Aug 28 01:34:57 2017\n increments.2017-09-04T04:12:11+02:00.dir Mon Sep 4 04:12:11 2017\n increments.2017-09-10T21:32:15+02:00.dir Sun Sep 10 21:32:15 2017\n increments.2017-09-21T21:39:00+02:00.dir Thu Sep 21 21:39:00 2017\n increments.2017-09-24T05:01:10+02:00.dir Sun Sep 24 05:01:10 2017\n increments.2017-09-30T18:45:00+02:00.dir Sat Sep 30 18:45:00 2017\n increments.2017-10-09T03:26:08+02:00.dir Mon Oct 9 03:26:08 2017\n increments.2017-10-26T00:32:24+02:00.dir Thu Oct 26 00:32:24 2017\n increments.2017-10-30T02:22:21+01:00.dir Mon Oct 30 02:22:21 2017\n increments.2017-11-02T00:51:45+01:00.dir Thu Nov 2 00:51:45 2017\n increments.2017-11-06T02:53:23+01:00.dir Mon Nov 6 02:53:23 2017\n increments.2017-11-06T20:54:10+01:00.dir Mon Nov 6 20:54:10 2017\n increments.2017-11-13T22:38:19+01:00.dir Mon Nov 13 22:38:19 2017\n increments.2017-11-18T18:13:39+01:00.dir Sat Nov 18 18:13:39 2017\n increments.2017-11-19T23:45:23+01:00.dir Sun Nov 19 23:45:23 2017\n increments.2017-12-01T00:45:18+01:00.dir Fri Dec 1 00:45:18 2017\n increments.2017-12-10T23:40:29+01:00.dir Sun Dec 10 23:40:29 2017\n increments.2017-12-24T00:52:04+01:00.dir Sun Dec 24 00:52:04 2017\n increments.2017-12-28T23:40:24+01:00.dir Thu Dec 28 23:40:24 2017\n increments.2017-12-30T11:56:06+01:00.dir Sat Dec 30 11:56:06 2017\n increments.2018-01-13T22:40:59+01:00.dir Sat Jan 13 22:40:59 2018\n increments.2018-01-25T22:27:24+01:00.dir Thu Jan 25 22:27:24 2018\n increments.2018-01-30T23:19:17+01:00.dir Tue Jan 30 23:19:17 2018\n increments.2018-02-11T22:43:29+01:00.dir Sun Feb 11 22:43:29 2018\n increments.2018-02-22T16:48:26+01:00.dir Thu Feb 22 16:48:26 2018\n increments.2018-03-17T11:31:46+01:00.dir Sat Mar 17 11:31:46 2018\n increments.2018-03-18T15:35:24+01:00.dir Sun Mar 18 15:35:24 2018\n increments.2018-03-19T19:53:36+01:00.dir Mon Mar 19 19:53:36 2018\n increments.2018-04-18T22:01:28+02:00.dir Wed Apr 18 22:01:28 2018\n Current mirror: Fri May 11 23:49:17 2018\n bystrousak:/media/bystrousak/Internal/Backup/delta,1$ rdiff_trimmer -d -o xlit_delta\n Restoring 1477776003\n Restoring 1479844955\n Restoring 1482945913\n Restoring 1485899040\n Restoring 1488248732\n Restoring 1490657083\n Restoring 1493394493\n Restoring 1495801622\n Restoring 1498232824\n Restoring 1501109734\n Restoring 1503876897\n Restoring 1506789900\n Restoring 1509326541\n Restoring 1511131523\n Restoring 1514631366\n Restoring 1517350757\n Restoring 1519314506\n Restoring 1521282706\n Restoring 1521383724\n Restoring 1521485616\n Restoring 1524081688\n Restoring 1526075357\n bystrousak:/media/bystrousak/Internal/Backup/delta,0$ rdiff-backup -l xlit_delta_trimmed/\n Found 21 increments:\n increments.2016-10-29T23:20:03+02:00.dir Sat Oct 29 23:20:03 2016\n increments.2016-11-22T21:02:35+01:00.dir Tue Nov 22 21:02:35 2016\n increments.2016-12-28T18:25:13+01:00.dir Wed Dec 28 18:25:13 2016\n increments.2017-01-31T22:44:00+01:00.dir Tue Jan 31 22:44:00 2017\n increments.2017-02-28T03:25:32+01:00.dir Tue Feb 28 03:25:32 2017\n increments.2017-03-28T01:24:43+02:00.dir Tue Mar 28 01:24:43 2017\n increments.2017-04-28T17:48:13+02:00.dir Fri Apr 28 17:48:13 2017\n increments.2017-05-26T14:27:02+02:00.dir Fri May 26 14:27:02 2017\n increments.2017-06-23T17:47:04+02:00.dir Fri Jun 23 17:47:04 2017\n increments.2017-07-27T00:55:34+02:00.dir Thu Jul 27 00:55:34 2017\n increments.2017-08-28T01:34:57+02:00.dir Mon Aug 28 01:34:57 2017\n increments.2017-09-30T18:45:00+02:00.dir Sat Sep 30 18:45:00 2017\n increments.2017-10-30T02:22:21+01:00.dir Mon Oct 30 02:22:21 2017\n increments.2017-11-19T23:45:23+01:00.dir Sun Nov 19 23:45:23 2017\n increments.2017-12-30T11:56:06+01:00.dir Sat Dec 30 11:56:06 2017\n increments.2018-01-30T23:19:17+01:00.dir Tue Jan 30 23:19:17 2018\n increments.2018-02-22T16:48:26+01:00.dir Thu Feb 22 16:48:26 2018\n increments.2018-03-17T11:31:46+01:00.dir Sat Mar 17 11:31:46 2018\n increments.2018-03-18T15:35:24+01:00.dir Sun Mar 18 15:35:24 2018\n increments.2018-03-19T19:53:36+01:00.dir Mon Mar 19 19:53:36 2018\n increments.2018-04-18T22:01:28+02:00.dir Wed Apr 18 22:01:28 2018\n Current mirror: Fri May 11 23:49:17 2018\n bystrousak:/media/bystrousak/Internal/Backup/delta,0$ \n\n\nChangelog\n=========\n\n0.3.1\n-----\n - Fixed import path in `unpack_rdiff_increments` script.\n\n0.3.0\n-----\n - Added script `unpack_rdiff_increments`.\n\n0.2.1\n-----\n - Fixed bug in bad parsing of the output path with / at the end.\n\n0.2.0\n-----\n - First working version released.\n\n0.1.0\n-----\n - Project created.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Bystroushaak/rdiff_trimmer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "rdiff_trimmer", "package_url": "https://pypi.org/project/rdiff_trimmer/", "platform": "", "project_url": "https://pypi.org/project/rdiff_trimmer/", "project_urls": { "Homepage": "https://github.com/Bystroushaak/rdiff_trimmer" }, "release_url": "https://pypi.org/project/rdiff_trimmer/0.3.1/", "requires_dist": null, "requires_python": "", "summary": "Get rid of the old rdiff-backup increments from your backup.", "version": "0.3.1" }, "last_serial": 3910290, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "55c2dad0d5f1605398a731b192fae402", "sha256": "a7be7e5fc3093d8d8a7cb6eb69a17bf0bb28175bee66dda58628ff8924e1140f" }, "downloads": -1, "filename": "rdiff_trimmer-0.2.0.tar.gz", "has_sig": false, "md5_digest": "55c2dad0d5f1605398a731b192fae402", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9695, "upload_time": "2018-05-12T21:10:39", "url": "https://files.pythonhosted.org/packages/08/54/03c9f15fc88c1ee1e58e96142f37c413c2355c14e595e92abef2331af08d/rdiff_trimmer-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "68b47e215cbe3afaf75fceaffa27181d", "sha256": "5a5192ccd9c78406f98fece6e5d79e694921436cf276b4fbb3abcfdb215f7cfd" }, "downloads": -1, "filename": "rdiff_trimmer-0.2.1.tar.gz", "has_sig": false, "md5_digest": "68b47e215cbe3afaf75fceaffa27181d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9742, "upload_time": "2018-05-12T21:21:50", "url": "https://files.pythonhosted.org/packages/99/8b/58f1dd200b5941b64cdfef074e43526186e83582b92cf5d50ffc7aa591dc/rdiff_trimmer-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a6bb7730dfb53fabd2f767265126ea9d", "sha256": "8885e53b3d2909815800327ca9e4acf063cac3bcc2f059e1788e55faa4fa8ad6" }, "downloads": -1, "filename": "rdiff_trimmer-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a6bb7730dfb53fabd2f767265126ea9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10962, "upload_time": "2018-05-29T19:41:42", "url": "https://files.pythonhosted.org/packages/4c/32/5c807cb3fdaffc9e8d6e54f6101f835afdbb6fd490645d3666d769078366/rdiff_trimmer-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "a64361a6184cdfa533676a0ced84bffb", "sha256": "3af871a085dfc01fb17e5a31ebf53c7788ba484e48f3eff49253e760969ccfde" }, "downloads": -1, "filename": "rdiff_trimmer-0.3.1.tar.gz", "has_sig": false, "md5_digest": "a64361a6184cdfa533676a0ced84bffb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10991, "upload_time": "2018-05-29T19:45:42", "url": "https://files.pythonhosted.org/packages/0e/7c/4ab15393778da260aaa0f3b58e2b6aa7b18812b995155372669d24431d08/rdiff_trimmer-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a64361a6184cdfa533676a0ced84bffb", "sha256": "3af871a085dfc01fb17e5a31ebf53c7788ba484e48f3eff49253e760969ccfde" }, "downloads": -1, "filename": "rdiff_trimmer-0.3.1.tar.gz", "has_sig": false, "md5_digest": "a64361a6184cdfa533676a0ced84bffb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10991, "upload_time": "2018-05-29T19:45:42", "url": "https://files.pythonhosted.org/packages/0e/7c/4ab15393778da260aaa0f3b58e2b6aa7b18812b995155372669d24431d08/rdiff_trimmer-0.3.1.tar.gz" } ] }