linux – 将分区组合到一个磁盘映像
发布时间:2020-12-13 18:08:59 所属栏目:Linux 来源:网络整理
导读:我有3张图片.每个映像都是通过克隆(通过dd)分区(这些分区使用ext3文件系统格式化)完成的. 一个分区可以通过GRUB1(CentOS)启动 如何将它们组合到一个磁盘映像? (我可以使用dd命令复制分区映像,但我不知道如何创建分区表并使启动工作). 解决方法 创建磁盘映像
我有3张图片.每个映像都是通过克隆(通过dd)分区(这些分区使用ext3文件系统格式化)完成的.
一个分区可以通过GRUB1(CentOS)启动 如何将它们组合到一个磁盘映像? (我可以使用dd命令复制分区映像,但我不知道如何创建分区表并使启动工作). 解决方法
创建磁盘映像.以下命令将创建10G
sparse image:
# dd if=/dev/zero of=mydisk.img bs=1 count=0 seek=10G 0+0 records in 0+0 records out 0 bytes (0 B) copied,1.6554e-05 s,0.0 kB/s # ls -lh mydisk.img -rw-r--r--. 1 root root 10G Jun 17 15:27 mydisk.img 使用fdisk对映像进行分区: # fdisk mydisk.img 确保创建的分区至少与分区一样大 # fdisk -l mydisk.img Disk mydisk.img: 10.7 GB,10737418240 bytes 255 heads,63 sectors/track,1305 cylinders,total 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x5519250f Device Boot Start End Blocks Id System mydisk.img1 2048 2099199 1048576 83 Linux mydisk.img2 2099200 4196351 1048576 83 Linux 使用kpartx创建与每个分区对应的设备: # kpartx -av mydisk.img add map loop0p1 (253:3): 0 2097152 linear /dev/loop0 2048 add map loop0p2 (253:4): 0 2097152 linear /dev/loop0 2099200 这将在/ dev / mapper下创建条目: # ls -l /dev/mapper lrwxrwxrwx. 1 root root 7 Jun 17 15:33 loop0p1 -> ../dm-3 lrwxrwxrwx. 1 root root 7 Jun 17 15:33 loop0p2 -> ../dm-4 现在,您可以将分区映像复制到分区上: # dd if=image_of_partition_1.img of=/dev/mapper/loop0p1 bs=1M # dd if=image_of_partition_2.img of=/dev/mapper/loop0p2 bs=1M 现在删除设备映射: # kpartx -dv mydisk.img del devmap : loop0p2 del devmap : loop0p1 loop deleted : /dev/loop0 你们都准备好了! 笔记 >你也可以通过使用dd和seek参数(开始在磁盘映像文件中的适当偏移处写入)而不是使用kpartx来完成同样的事情,但我认为使用kpartx不太容易出错.>这不会产生可引导的图像.如果你想要,你还必须在它上面安装一个引导装载程序. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |