AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 830059
Accepted
TheStoryCoder
TheStoryCoder
Asked: 2017-02-03 00:15:55 +0800 CST2017-02-03 00:15:55 +0800 CST 2017-02-03 00:15:55 +0800 CST

备份文件变老时修剪

  • 772

我正在寻找一种工具(适用于 Linux)来修剪我的备份文件,不像logrotate在定义的旋转次数后完全删除它们的标准,而是文件基本上永久保存的地方,除非它们随着年龄的增长而被修剪年纪大了。例如:

  • 第一个月,我想保留每个每日备份文件
  • 之后我只想在接下来的 6 个月内保留每周备份
  • 之后我只想将每月备份再保留 6 个月
  • 之后我只想保留一个季度备份

是否存在进行这种基于时间的文件清理的工具?

它可以查看文件名中的日期,也可以查看文件的时间戳(虽然不理想)。

backup time files logrotate
  • 3 3 个回答
  • 767 Views

3 个回答

  • Voted
  1. Best Answer
    Jens Timmerman
    2017-02-04T05:35:00+08:002017-02-04T05:35:00+08:00

    我知道没有这样的工具,通常这包含在您的备份软件中。你用什么备份工具?

    我会推荐rsnapshot 这可以配置为执行您要求的这些智能操作,并通过广泛使用硬链接来保持较小的备份大小。

    但是,如果您有自己的 cronjobs/系统来创建备份,则可以再创建一些cronjobs。

    • 备份到“每日文件夹”
    • 每周进行一次 cronjob,将 30 天之前的文件从每月文件夹移动到“每周文件夹”find /path/to/daily -maxdepth 1 -mtime +30 -type f -exec mv "{}" /path/to/weekly/ \;

      因为下面的 cronjob 将删除较旧的文件,这将只是一天的备份文件。

    • 有一个每日 cronjob,从你的每日文件夹中删除超过 30 天的文件(确保它在上面的每周 cron 之后运行)find /path/to/daily/* -mtime +30 -exec rm {} \;

    每周到每月和每月到每季度重复

    • 1
  2. Darkhand
    2022-02-15T21:41:59+08:002022-02-15T21:41:59+08:00

    这个问题相当古老,但由于它是此类搜索的第一个结果,我会推荐Borg作为您的备份选项,因为它完全支持您通过其Prune命令寻找的那种备份计划。

    从他们的文档中的一个例子:

    # Use the `prune` subcommand to maintain 7 daily, 4 weekly and 6 monthly
    # archives of THIS machine. The '{hostname}-' prefix is very important to
    # limit prune's operation to this machine's archives and not apply to
    # other machines' archives also:
    
    borg prune                      \
    --list                          \
    --prefix '{hostname}-'          \
    --show-rc                       \
    --keep-daily    7               \
    --keep-weekly   4               \
    --keep-monthly  6               \
    
    • 1
  3. Helen Craigman
    2022-03-19T07:51:20+08:002022-03-19T07:51:20+08:00

    您也应该查看“重复”软件。

    它有很好的声誉;并且(独立地)我正在使用它,我很满意。

    • 1

相关问题

  • 总大小(磁盘)与总大小(媒体)

  • 社区对备份解决方案的意见

  • 无法读取不同 LTO-3 驱动器上的 LTO-3 磁带

  • 使用 TSM 备份时跳过硬链接

  • 使用 rsync 维护名称更改的目录的副本

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve