14.2. 创建 Snapper 快照


snapper 可以创建以下类型的快照:
pre Snapshot
pre 快照充当后快照的原始卷。这两个操作都紧密关联,旨在跟踪两个点之间的文件系统修改。必须在创建快照前创建预快照。
后快照
post 快照充当预快照的端点。组合 pre 和 post 快照定义了要比较的范围。默认情况下,每个新 snapper 卷都配置为在成功创建相关后创建快照后创建后台比较。
单个快照
单个快照是在特定时间创建的独立快照。它们可用于跟踪修改时间表,并具有以后返回的一般点。

14.2.1. 创建 Pre 和 Post Snapshot Pair

14.2.1.1. 使用 Snapper 创建 Pre Snapshot

要创建预快照,请使用:
# snapper -c config_name create -t pre
-c config_name 选项根据指定配置文件中的规格创建快照。如果配置文件尚不存在,请参阅 第 14.1 节 “创建 Initial Snapper 配置”
create -t 选项指定要创建的快照类型。接受的条目为 prepostsingle
例如,要使用 lvm_config 配置文件创建预快照,如 第 14.1 节 “创建 Initial Snapper 配置” 中创建,请使用:
# snapper -c SnapperExample create -t pre -p
1
-p 选项打印创建快照的数量,并是可选的。

14.2.1.2. 使用 Snapper 创建 Post Snapshot

post 快照是快照的端点,应该按照 第 14.2.1.1 节 “使用 Snapper 创建 Pre Snapshot” 中的说明在父预快照后创建。

过程 14.2. 创建后快照

  1. 确定预快照的数量:
    # snapper -c config_name list
    例如,要显示使用配置文件 lvm_config 创建的快照列表,请使用:
    # snapper -c lvm_config list
    Type   | # | Pre # | Date              | User | Cleanup  | Description | Userdata
    -------+---+-------+-------------------+------+----------+-------------+---------
    single | 0 |       |                   | root |          | current     |
    pre    | 1 |       | Mon 06<...>       | root |          |             |
    
    此输出显示预快照为数字 1。
  2. 创建链接到之前创建的预快照的后快照:
    # snapper -c config_file create -t post --pre-num pre_snapshot_number
    • t post 选项指定创建快照类型的创建。
    • --pre-num 选项指定对应的 pre snapshot。
    例如,要使用 lvm_config 配置文件创建后快照并链接到预快照号 1,请使用:
    # snapper -c lvm_config create -t post --pre-num 1 -p
    2
    
    -p 选项打印创建快照的数量,并是可选的。
  3. 现在创建并配对了 pre 和 post 快照 1 和 2。使用 list 命令验证:
    # snapper -c lvm_config list
    Type   | # | Pre # | Date              | User | Cleanup  | Description | Userdata
    -------+---+-------+-------------------+------+----------+-------------+---------
    single | 0 |       |                   | root |          | current     |
    pre    | 1 |       | Mon 06<...>       | root |          |             |
    post   | 2 | 1     | Mon 06<...>       | root |          |             |
    

14.2.1.3. 在 Pre 和 Post Snapshots 中嵌套命令

您还可以在预快照和后快照中嵌套命令,这在测试时很有用。请参阅 过程 14.3, “在 Pre 和 Post Snapshots 中嵌套命令”,它是以下步骤的快捷方式:
  1. 运行 snapper create pre snapshot 命令。
  2. 运行命令或命令列表,以对文件系统内容有可能的影响。
  3. 运行 snapper create post snapshot 命令。

过程 14.3. 在 Pre 和 Post Snapshots 中嵌套命令

  1. 在预快照和后快照中嵌套命令:
    # snapper -c lvm_config create --command "command_to_be_tracked"
    例如,要跟踪 /lvm_mount/hello_file 文件的创建:
    # snapper -c lvm_config create --command "echo Hello > /lvm_mount/hello_file"
  2. 要验证这一点,请使用 status 命令:
    # snapper -c config_file status first_snapshot_number..second_snapshot_number
    例如,要跟踪第一步中所做的更改:
    # snapper -c lvm_config status 3..4
    +..... /lvm_mount/hello_file
    
    如果需要,使用 list 命令验证快照的数量。
    有关 status 命令的详情请参考 第 14.3 节 “跟踪 Snapper Snapshots 间的更改”
请注意,给定示例中 命令不能保证快照捕获的唯一内容。snapper 还记录系统修改的任何内容,而不仅仅是用户修改的内容。

14.2.2. 创建单个 Snapper 快照

创建单个 snapper 快照与创建预快照或后快照类似,只有 create -t 选项指定单个。单个快照用于随着时间的推移创建单个快照,而不与任何其他快照相关。但是,如果您想创建 LVM2 精简卷的快照,而无需自动生成比较或列出附加信息,红帽建议为此使用 System Storage Manager 而不是 Snapper,如 第 16.2.6 节 “Snapshot” 所述。
要创建单个快照,请使用:
# snapper -c config_name create -t single
例如,以下命令使用 lvm_config 配置文件创建单个快照。
# snapper -c lvm_config create -t single
虽然单个快照没有专门设计来跟踪更改,但您可以使用 snapper diffxadiffstatus 命令比较任何两个快照。有关这些命令的详情请参考 第 14.3 节 “跟踪 Snapper Snapshots 间的更改”

14.2.3. 配置 Snapper 以获取自动化快照

进行自动快照是 Snapper 的主要功能之一。默认情况下,当您为卷配置 Snapper 时,Snapper 会每小时开始对卷执行快照。
在默认配置下,Snapper 保留:
  • 10 每小时快照,最终每小时快照保存为"每天"快照。
  • 10 个每日快照,一个月的最终每日快照会保存为"月"快照。
  • 10 个月快照,最终每月快照保存为"每年"快照。
  • 10 年快照。
请注意,Snapper 默认不会超过 50 个快照。但是,Snapper 默认保留在 1,800 秒以前创建的所有快照。
默认配置在 /etc/snapper/config-templates/default 文件中指定。当您使用 snapper create-config 命令创建配置时,会根据默认配置设置任何未指定的值。您可以编辑 /etc/snapper/configs/config_name 文件中任何定义的卷的配置。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.