bölümleri tek bir disk görüntüsüyle birleştirin


13

3 resmim var. Her görüntü bir bölümün (dd ile) (bu bölümler ext3 dosya sistemi kullanılarak biçimlendirilmiş) klonlanarak yapılmıştır. Bir bölüm GRUB1 (CentOS) ile önyüklenebilir

Bunları bir disk görüntüsüyle nasıl birleştirebilirim?

(Dd komutunu kullanarak bölüm görüntülerini kopyalayabilirim, ancak bölümler tablosunu nasıl oluşturacağımı ve önyüklemeyi çalıştıracağımı bilmiyorum).


1
Gerçekten ne yapmaya çalışıyorsun? Bir çalışma sistemini yeni donanıma vs. kopyalayın. Farklı montaj noktalarındaki üç bölüm tek bir sistemde miydi?
Mike Renfro

Amaç nedir? geri döngü aygıtlarını dosya sistemi görüntüleri ile çalışmak için kullanabilirsiniz, ancak bölüm / dosya sistemi görüntüleri yerine disk görüntülerini değiştirmek çok daha zordur.
Michael Lowman

Yanıtlar:


15

Bir disk görüntüsü oluşturun. Aşağıdaki komut 10G seyrek görüntü oluşturur :

# 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

Görüntüyü fdisk ile bölümleyin:

# fdisk mydisk.img

En azından görüntülediğiniz bölümler kadar büyük bölümler oluşturduğunuzdan emin olun! Bu örnek için aşağıdaki düzeni oluşturdum:

# 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

Bölümlerin kpartxher birine karşılık gelen aygıtlar oluşturmak için kullanın :

# 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

Bu, aşağıdaki girişleri oluşturur /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

Şimdi bölüm görüntülerinizi bölümlerinize kopyalayabilirsiniz:

# 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

Şimdi cihaz eşlemelerini kaldırın:

# kpartx -dv mydisk.img
del devmap : loop0p2
del devmap : loop0p1
loop deleted : /dev/loop0

Ve hepiniz hazırsınız!

notlar

  • Ayrıca aynı şeyi kullanarak kullanmak yerine ddve seek(disk görüntü dosyanızdaki uygun mahsup yazmaya yazmaya başlamak için) parametresini kullanarak gerçekleştirebilirsiniz kpartx, ancak kullanarak kpartxdaha az hata eğilimli olduğunu düşünüyorum .

  • Bu önyüklenebilir bir görüntü ile sonuçlanmaz. Bunu isterseniz, üzerine bir önyükleme yükleyicisi de yüklemeniz gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.