如何对Linux上使用LUKS加密的部分进行备份

发布时间:2021-09-27 09:41:58 作者:iii
来源:亿速云 阅读:110

这篇文章主要讲解了“如何对Linux上使用LUKS加密的部分进行备份”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何对Linux上使用LUKS加密的部分进行备份”吧!

一个解决方案: Bdsync

这时,一个卓越的开源工具来拯救我们了,它叫Bdsync(多亏了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)。

你需要在两台系统上具有root帐号访问权限,并且设置从本地访问远程的无密码SSH访问。最后,你需要安装Bdsync到两台主机上。

要在本地主机上初始化一个远程备份进程,我们需要以root执行以下命令:

   

代码如下:

# bdsync "ssh root@remote_host bdsync --server" /dev/LOCDEV /dev/REMDEV | gzip > /some_local_path/DEV.bdsync.gz

这里需要进行一些说明。Bdsync客户端将以root打开一个到远程主机的SSH连接,并执行带有--server选项的Bdsync客户端。明确说明一下,/dev/LOCDEV是我们的本地主机上的源LUKS块设备,而/dev/REMDEV是远程主机上的目标块设备。它们可以是/dev/sda(作为整个磁盘),或者/dev/sda2(作为单个分区)。本地Bdsync客户端的输出结果随后被管道输送到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前,使用一些(没有任何重要数据)小分区来做这些测试。在你完全弄懂整个设置是如何工作之后,你可以开始备份真实数据。

感谢各位的阅读,以上就是“如何对Linux上使用LUKS加密的部分进行备份”的内容了,经过本文的学习后,相信大家对如何对Linux上使用LUKS加密的部分进行备份这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. PHP如何对源码进行加密
  2. 使用Cython对python代码进行加密的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux luks

上一篇:Java如何实现蓝桥杯G将军

下一篇:如何使用java实现在线预览

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》