您可以squashfs
用来压缩磁盘映像,然后挂载它们。
创建磁盘映像
如果还没有磁盘映像,请使用dd
创建一个:
dd if=/dev/sda1 of=/tmp/sda1.img bs=4M
用squashfs压缩图像
安装squashfs
:
apt-get install squashfs-tools
压缩图像:
mksquashfs /tmp/sda1.img /tmp/sda1.squash.img
或流式压缩(不需要临时dd文件)
mkdir empty-dir
mksquashfs empty-dir squash.img -p 'sda_backup.img f 444 root root dd if=/dev/sda bs=4M'
在UbuntuForums.org上对terminator14的补充。定义/说明:
empty-dir
-“源”目录。基本上在我们的例子中,只有一个空的目录可以满足mksquashfs的输入arg格式
squash.img
-输出squashfs文件的目标和文件名
sda_backup.img
-squashfs文件中dd备份的名称
f
-指定sda_backup.img是常规文件(与目录,块设备或char设备相对)
444
-squashfs映像内sda_backup.img文件的权限
root root
-squashfs映像内sda_backup.img文件的UID和GID。可以用十进制数字或名称指定
dd if=/dev/sda bs=4M
-dd命令用于读取我们要备份的设备
挂载图像
首先挂载squashfs
映像:
mkdir /mnt/squash
mount /tmp/sda1.squash.img /mnt/squash
这将显示未压缩的磁盘映像以供您挂载:
mkdir /mnt/sda1
mount /mnt/squash/sda1.img /mnt/sda1
或者,如果它是一个完整的驱动器映像(分区),你可以使用losetup
的DD图像附加到一个循环设备(可能是可选),然后kpartx -a
或partprobe
找到与分区分开,单独的设备,甚至vgscan
/ vgchange -ay
如果有LVM。