一个分区可以通过GRUB1(CentOS)启动
如何将它们组合到一个磁盘映像?
(我可以使用dd命令复制分区映像,但我不知道如何创建分区表并使启动工作).
解决方法 创建磁盘映像.以下命令将创建10G sparse image:# dd if=/dev/zero of=mydisk.img bs=1 count=0 seek=10G0+0 records in0+0 records out0 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.imgdisk mydisk.img: 10.7 GB,10737418240 bytes255 heads,63 sectors/track,1305 cylinders,total 20971520 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesdisk IDentifIEr: 0x5519250f Device Boot Start End Blocks ID Systemmydisk.img1 2048 2099199 1048576 83 linuxmydisk.img2 2099200 4196351 1048576 83 linux
使用kpartx创建与每个分区对应的设备:
# kpartx -av mydisk.imgadd map loop0p1 (253:3): 0 2097152 linear /dev/loop0 2048add map loop0p2 (253:4): 0 2097152 linear /dev/loop0 2099200
这将在/ dev / mapper下创建条目:
# ls -l /dev/mapperlrwxrwxrwx. 1 root root 7 Jun 17 15:33 loop0p1 -> ../dm-3lrwxrwxrwx. 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.imgdel devmap : loop0p2del devmap : loop0p1loop deleted : /dev/loop0
你们都准备好了!
笔记
>你也可以通过使用dd和seek参数(开始在磁盘映像文件中的适当偏移处写入)而不是使用kpartx来完成同样的事情,但我认为使用kpartx不太容易出错.>这不会产生可引导的图像.如果你想要,你还必须在它上面安装一个引导装载程序.
总结以上是内存溢出为你收集整理的linux – 将分区组合到一个磁盘映像全部内容,希望文章能够帮你解决linux – 将分区组合到一个磁盘映像所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)