linux服务器自动生成本地快照

简介: 【8月更文挑战第28天】本文介绍了在Linux服务器上通过两种常见方式创建本地快照的方法:Btrfs文件系统与LVM。Btrfs原生支持快照功能,操作简单快捷;LVM则提供了灵活的逻辑卷管理,可在不影响原始数据的情况下创建快照。文章详细列出了创建、查看、挂载及清理快照的具体步骤,并提供了一个自动化的Shell脚本示例,便于用户根据需求定期创建快照并清理过期快照。

在Linux服务器上创建本地快照通常涉及到文件系统的快照功能,如Btrfs或LVM(Logical Volume Manager)。这里我将给出两种常见的方法来创建快照:一种是使用Btrfs文件系统,另一种是使用LVM。

Btrfs 文件系统快照
Btrfs 是一种先进的文件系统,它原生支持快照功能。如果你的服务器使用了Btrfs文件系统,你可以非常容易地创建快照。

创建 Btrfs 快照的步骤:
检查文件系统:
bash

df -T /path/to/your/mountpoint
确认你的目标目录使用的是Btrfs文件系统。
创建快照:
bash

btrfs subvolume snapshot /path/to/source /path/to/destination
这里 /path/to/source 是你想快照的源目录,而 /path/to/destination 是存放快照的地方。注意这个路径不能与源路径相同。
查看快照:
bash

btrfs subvolume list /path/to/destination
LVM 快照
LVM 提供了逻辑卷管理器的功能,可以用于创建快照。LVM 的快照机制允许你在不影响原始数据的情况下对数据进行读取和修改。

创建 LVM 快照的步骤:
检查逻辑卷:
bash

lvdisplay
查看已有的逻辑卷。
创建快照:
bash

lvcreate --size --snapshot /dev// /dev//
其中 是快照的大小, 是卷组名, 是逻辑卷名, 是新快照的名称。
挂载快照:
bash

mkdir /mnt/snapshot
mount /dev// /mnt/snapshot
卸载并清除快照:
bash

umount /mnt/snapshot
rmdir /mnt/snapshot
lvremove /dev//
自动化脚本
为了自动化这些过程,你可以编写一个Shell脚本来定期创建快照,并利用cron定时任务来定期执行。

示例 Shell 脚本 (对于 Btrfs 或 LVM):
bash

!/bin/bash

设置源路径和目标路径

SOURCE=/path/to/source
DESTINATION=/path/to/destination

创建快照

if [[ $(df -T $SOURCE | tail -n 1 | awk '{print $2}') == "btrfs" ]]; then

# Btrfs 快照
btrfs subvolume snapshot $SOURCE $DESTINATION

elif [[ $(vgdisplay | grep "Volume group name" | awk '{print $4}') ]]; then

# LVM 快照
VG=$(vgdisplay | grep "Volume group name" | awk '{print $4}')
LV=$(lvdisplay | grep $VG | grep $SOURCE | awk '{print $3}')
SNAPSHOT=$DESTINATION
lvcreate --size 1G --snapshot /dev/$VG/$LV /dev/$VG/$SNAPSHOT
mkdir -p /mnt/snapshot
mount /dev/$VG/$SNAPSHOT /mnt/snapshot

fi

清理旧快照

find $DESTINATION -mtime +7 -exec rm -rf {} \;

exit 0
添加到 cron
将上述脚本保存为可执行文件,例如 create_snapshot.sh,然后添加到 cron 定时任务中。

bash

crontab -e
在编辑器中添加一行,例如每晚午夜执行:

crontab

0 0 * /path/to/create_snapshot.sh
这将每天午夜执行 create_snapshot.sh 脚本,创建新的快照并清理一周前的老快照。

目录
相关文章
|
11月前
|
存储 弹性计算 运维
阿里云服务器快照是什么?快照详细介绍
阿里云ECS快照服务是对云盘数据在某一时刻的完整备份,支持定时自动备份,防范数据丢失风险。快照按存储空间收费,可用OSS存储包抵扣。适用于日常备份、高危操作恢复、快速数据恢复、业务批量部署等场景,保障业务连续性与数据安全。
|
存储 固态存储 应用服务中间件
阿里云服务器租赁价格:实例配置、预留实例券、块存储、带宽、快照最新收费标准
阿里云服务器收费项目有实例价格、预留实例券、专有宿主机、块存储价格、存储容量单位包、带宽价格和快照服务价格,收费模式有包年包月和按量付费模式。2025年阿里云继续推出各种云服务器优惠,本文为大家汇总了2025年阿里云服务器各个收费项目的最新收费标准与云服务器的最新活动价格,以供参考和了解。
1311 24
|
Ubuntu Linux
在Linux中, 如何创建一个快照?
在Linux中, 如何创建一个快照?
|
存储 Linux 数据库
在Linux中,什么是快照备份?
在Linux中,什么是快照备份?
|
存储 Linux 测试技术
在Linux中,如何实现文件系统的快照和克隆?
在Linux中,如何实现文件系统的快照和克隆?
部署09--虚拟机快照,我们无法避免损坏Linux操作系统 ,如果重新装一下就太过麻烦,推荐在关机下制作快照,关机制作效率好,机房要靠近地址,动不动崩溃
部署09--虚拟机快照,我们无法避免损坏Linux操作系统 ,如果重新装一下就太过麻烦,推荐在关机下制作快照,关机制作效率好,机房要靠近地址,动不动崩溃
|
域名解析 存储 弹性计算
云服务器 ECS产品使用问题之快照服务如何设置定时备份以及定时删除
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
存储 弹性计算 对象存储
ECS快照原理
云盘快照原理包括全量和增量快照。首次快照为全量,备份所有数据块;后续快照仅备份变化部分。快照存储在OSS中,同城冗余或本地冗余根据地域不同而定。删除快照时,按数据块引用关系释放空间。快照容量基于快照链统计,全量快照加所有增量大小。快照不占用云盘空间,但产生存储费用。
|
弹性计算 运维 测试技术
ECS快照
云盘快照是在特定时间点对云盘数据状态的备份,首次快照为全量备份,之后的快照仅保存变化数据。快照功能包括手动和自动创建,可用于数据恢复、系统回滚、创建自定义镜像等场景。阿里云提供了多种快照操作,如创建、回滚、复制到其他地域等,并有不同的计费模式。在使用快照时,需要注意相关限制和配额。此外,阿里云还设有用户服务群,提供技术支持。
|
存储 弹性计算 对象存储
ECS快照原理
ECS快照原理
453 1