备份和恢复 e2image 如何正确地通过管道传输 lzop 的输出?
backup and restore e2image how do I properly pipe the output from lzop?
我使用 dd 和 gzip 作为备份解决方案的时间最长。我一直在试验更快的备份方式。
在我的 Ubuntu 18.04 系统上,到目前为止,这是创建 ext2/3/4 分区的压缩备份映像最快的方法:
sudo e2image -ra -p /dev/sda1 - | lzop -1 > `date +%F`.e2image2.lzo
当执行上面的命令时,sda1 没有挂载,我被引导到 sdb1。
对于任何对该主题感兴趣的人,我只是在这里解决了这个问题:https://askubuntu.com/questions/1063085/
现在我有了备份图片 2018-08-08.e2image.lzo,我需要一种方法将其恢复到 /dev/sda1
lzop 手册页为 tar 提供了这个示例:
lzop -dc some-file.tar.lzo | tar -xvf -
我正在尝试通过将 lzop 解压缩示例的输出管道传输到 e2image 来调整该示例:
lzop -dc 2018-08-08.e2image.lzo | e2image -ra -p - /dev/sda1
e2image 1.44.1 (24-Mar-2018)
e2image: No such file or directory while trying to open -
e2image 似乎不喜欢我将输入文件指定为 "-"- 的方式,我认为这是使用管道时使用标准输入的正确方式。
感谢任何解决问题的帮助。
我也可以使用标签 e2image 和 lzop,但我没有足够的声誉来添加这些新标签。
您可以将 lzop 的输出通过管道传输到 dd;这可能是最简单和最一致的方式。
如果您知道输出设备已经预初始化为全零,您可以使用在 e2fsprogs 的 contrib 目录中找到的 make-sparse.c 程序。 make-sparse 程序将跳过写入全为零的块,并查找到存在非零块的偏移量,并且仅写入非零块。如果存在全零块的数据文件,并且块设备未预初始化为全零,则使用make-sparse写入块设备将导致数据文件损坏。 make-space 程序设计用于获取 e2image 文件并将其写入稀疏文件。
但最简单的方法就是使用 dd:
lzop -dc 2018-08-08.e2image.lzo | dd of=/dev/sda1 bs=4k
我使用 dd 和 gzip 作为备份解决方案的时间最长。我一直在试验更快的备份方式。
在我的 Ubuntu 18.04 系统上,到目前为止,这是创建 ext2/3/4 分区的压缩备份映像最快的方法:
sudo e2image -ra -p /dev/sda1 - | lzop -1 > `date +%F`.e2image2.lzo
当执行上面的命令时,sda1 没有挂载,我被引导到 sdb1。 对于任何对该主题感兴趣的人,我只是在这里解决了这个问题:https://askubuntu.com/questions/1063085/
现在我有了备份图片 2018-08-08.e2image.lzo,我需要一种方法将其恢复到 /dev/sda1
lzop 手册页为 tar 提供了这个示例:
lzop -dc some-file.tar.lzo | tar -xvf -
我正在尝试通过将 lzop 解压缩示例的输出管道传输到 e2image 来调整该示例:
lzop -dc 2018-08-08.e2image.lzo | e2image -ra -p - /dev/sda1
e2image 1.44.1 (24-Mar-2018)
e2image: No such file or directory while trying to open -
e2image 似乎不喜欢我将输入文件指定为 "-"- 的方式,我认为这是使用管道时使用标准输入的正确方式。
感谢任何解决问题的帮助。
我也可以使用标签 e2image 和 lzop,但我没有足够的声誉来添加这些新标签。
您可以将 lzop 的输出通过管道传输到 dd;这可能是最简单和最一致的方式。
如果您知道输出设备已经预初始化为全零,您可以使用在 e2fsprogs 的 contrib 目录中找到的 make-sparse.c 程序。 make-sparse 程序将跳过写入全为零的块,并查找到存在非零块的偏移量,并且仅写入非零块。如果存在全零块的数据文件,并且块设备未预初始化为全零,则使用make-sparse写入块设备将导致数据文件损坏。 make-space 程序设计用于获取 e2image 文件并将其写入稀疏文件。
但最简单的方法就是使用 dd:
lzop -dc 2018-08-08.e2image.lzo | dd of=/dev/sda1 bs=4k