如何对LUKS加密的磁盘/分区执行远程增量备份?

出于安全方面的原因,我们当中一些人用Linux统一密钥设置(LUKS)对家里或虚拟专用服务器(VPS)上的硬盘进行了加密;这些硬盘的容量很快就会增加到数十GB或数百GB。于是,我们在享受LUKS设备的安全性的同时,可能会开始考虑一种可行的远程备份解决方案。就安全的异地备份而言,我们需要解决方案在经过加密的LUKS设备的数据块层面运作,而不是在未加密的文件系统层面运作。于是到头来,我们发觉自己处于这样一种情形:每当我们想要备份,就要传输整个LUKS设备里面的数据(比如说假设200GB)。这显然不可行。那么,我们该如何处理这个问题呢?

解决之道:Bdsync

这时候,一款名为Bdysnc(这要感谢Rolf Fokkens)的出色的开源工具就可以派得上用场了。顾名思义,Bdsync可以通过网络同步“块设备”。就快速同步而言,Bdsync可以在本地/远程块设备中生成并比较MD5检验和,只同步有差异的数据。Rsync可以在文件系统层面完成任务,而Bdsync是可以在块设备层面完成任务。它自然也可以与经过加密的LUKS设备协同运行。相当棒!

使用Bdsync,***备份将把整个LUKS块设备里面的数据拷贝到远程主机上,所以要花很长的时间才能完成。不过,这个初始备份完成后,如果我们在LUKS设备上构建了一些新的文件,第二次备份就会迅速完成,因为我们只需要拷贝发生变化的数据块。这时候经典的增量备份起到了作用!

将Bdsync安装到Linux上

Bdsync并不包含在Linux发行版的标准软件库里面。因而,你需要从源代码来构建它。使用下面针对特定发行版的指令,将Bdsync及参考手册页安装到你的系统上。

在Debian、Ubuntu或Linux Mint上

$ sudo apt-get install git gcc libssl-dev
$ git clone https://github.com/TargetHolding/bdsync.git $ cd bdsync
$ make
$ sudo cp bdsync /usr/local/sbin
$ sudo mkdir -p /usr/local/man/man1
$ sudo sh -c 'gzip -c bdsync.1 > /usr/local/man/man1/bdsync.1.gz'

在Fedora或CentOS/RHEL上

$ sudo yum install git gcc openssl-devel
$ git clone https://github.com/TargetHolding/bdsync.git $ cd bdsync
$ make
$ sudo cp bdsync /usr/local/sbin
$ sudo mkdir -p /usr/local/man/man1
$ sudo sh -c 'gzip -c bdsync.1 > /usr/local/man/man1/bdsync.1.gz'

对LUKS加密的设备执行异地增量备份

我假设你已经将LUKS加密的块设备配置成备份来源(比如/dev/LOCDEV),还假设你有一个远程主机,来源设备的内容将在主机上得到备份(比如/dev/REMDEV)。

你需要访问两个系统上的根帐户,并且设置无需密码的SSH访问,以便从本地主机访问远程主机。***,你还需要将Bdsync安装到两个主机上。

想在本地主机上开始进行远程备份过程,我们以root帐户的身份执行下列命令:

# bdsync “ssh root@remote_host bdsync –server” /dev/LOCDEV /dev/REMDEV | gzip > /some_local_path/DEV.bdsync.gz

这里需要一番解释。Bdsync客户端将以根帐户的身份与远程主机建立一条SSH连接,并且使用–server选项执行Bdsync客户软件。说明一下,/dev/LOCDEV是本地主机上的来源LUKS块设备,而/dev/REMDEV是远程主机上的目标块设备。它们应该是/dev/sda(面向整个磁盘)或/dev/sda2(面向一个分区)。本地Bdsync客户端的输出结果随后输出到gzip,gzip在本地主机构建DEV.bdsync.gz(所谓的二进制补丁文件)。

你***次运行上述命令后,要花很长的时间,具体取决于你的互联网/以太网速度以及/dev/LOCDEV的大小。切记:你的两个块设备(/dev/LOCDEV和/dev/REMDEV)其大小必须一样。

下一步是把生成的补丁文件从本地主机拷贝到远程主机。使用scp是一个办法:

# scp /some_local_path/DEV.bdsync.gz root@remote_host:/remote_path

***的步骤就是,在远程主机上执行下列命令,这会把补丁文件应用到/dev/REMDEV:

# gzip -d < /remote_path/DEV.bdsync.gz | bdsync –patch=/dev/DSTDEV

我建议先用不含有任何重要数据的小分区做一番试验,然后再用Bdsync来处理实际数据。只有你完全了解了整个过程,才可以开始备份实际数据。

结束语

总之,我们介绍了如何使用Bdsync为LUKS设备执行增量备份。与rsync一样,每次备份时,只需要将一小部分数据、而不是整个LUKS设备的数据拷贝到异地备份站点,这就节省了带宽和备份时间。放心好了,所有数据传输都由SSH或SCP加以保护,另外设备本身由LUKS进行加密。还有可能改善这种方案:使用可以运行bdsync的专门用户(而不是根用户)。我们还可以将bdsync用于任何的块设备,比如LVM卷或RAID磁盘,另外还很容易设置Bdsync,以便将本地磁盘备份到USB驱动器上。正如你所见,它的应用前景无限广阔!

欢迎留言交流。

英文:remote incremental backup luks encrypted disk partition

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/148008.html<

(0)
管理的头像管理
上一篇2025-03-11 23:09
下一篇 2025-03-11 23:10

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注