Sabit diskte depolanan ISO dosyasından nasıl önyükleme yapabilirim?


12

Önyüklenebilir CD / DVD veya canlı USB oluşturabildiğimi / yazabileceğimi ve önyükleyebileceğimi / yükleyebileceğimi biliyorum. Ama diyelim ki şu anda GNU / Linux çalıştırıyorum ve sabit diskime yüklemek istediğim başka bir GNU / Linux'un ISO dosyasını aldım, o zaman doğrudan sabit diskten ISO'dan önyükleyebilir ve bu GNU / Linux işletim sistemini yükleyebilir / yükleyebilir miyim ?

Yanıtlar:


15

Evet, bunu GRUBönyükleme yükleyici menüsüne bir menü girişi ekleyerek yapabilirsiniz .

Düzenleyerek özel bir GRUB menü girişi ekleyebilirsiniz /etc/grub.d/40_custom,

Özel menü örneği örneği :

 exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.  

menuentry "Trisquel ISO" {
        set isofile="/Operating_Systems/Trisquel_7.0_i686/trisquel_7.0_i686.iso"
        loopback loop (hd0,5)$isofile
        linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash
        initrd (loop)/casper/initrd
}

Talimat ve Açıklama:

  1. Komut set, ISO dosyasının yolunu burada bir değişkene kaydetmek için kullanılır isofile.

  2. loopbackbir dosya sistemi görüntüsünden bir aygıt yapmak için kullanılır. Bunu yapmak için cihazı ve görüntü dosyasını belirtmek gerekir. Burada kullanılan (hd0,5)$isofilehangi (hd0,5)temsil beşinci diskin bölüm.

    • Kayda değer noktalar: olarak (hd0,5),
      1 st basamak cihaz başlar sayısını temsil etmektedir 0(burada: 0 = 1 st cihazı) ve
      2 nci haneli başlar bölüm sayısını temsil etmektedir 1(burada 5 = 5 inci bölümü).
      Bunun anlamı/dev/sda5
    • Ve değişken $isofileISO dosyasının yoluna sahiptir. Böylece, sonunda olur (hd0,5)/Operating_Systems/Trisquel_7.0_i686/trisquel_7.0_i686.iso.
    • Daha fazla bilgi için şu adresi ziyaret edin: Aygıtlar ve dosyalar nasıl belirtilir .

  3. linuxkomutu Linux çekirdeğini ( vmlinuz ) dosyadan yüklemek için kullanılır . Linux çekirdeğinin yolunu ISO'ya koyun.

    • Çekirdek örneğinin yolunu bulmak için ISO içeriğini okuyun / çıkarın:

       $ 7z l trisquel_7.0_i686.iso | grep vmlinu
       2014-10-29 21:41:43 .....      5841680      5841680  casper/vmlinuz
       2014-11-03 00:45:09 .....      5844176      5844176  casper/vmlinuz.netinst
      

      yani /casper/vmlinuzburada kullanıldı.

  4. initrd komutu Linux çekirdeği görüntüsü için bir ilk ramdisk yüklemek ve bellekteki Linux kurulum alanında uygun parametreleri ayarlamak için kullanılır.

    • initrd , geçici bir kök dosya sistemini belleğe yüklemek için kullanılan bir şemadır. initrdISO yolunu koyun .
    • Aşağıdakilerin yolunu bulmak için ISO içeriğini okuyun / çıkarın initrd:

      $ 7z l trisquel_7.0_i686.iso | grep initrd
      2014-11-03 00:45:19 .....     16851900     16851900  casper/initrd
      2014-11-03 00:45:09 .....      9398592      9398592  casper/initrd.netinst
      
  5. Gibi ek parametre boot=casper iso-scan/filename=$isofile noprompt noejectbir GNU / Linux dağıtımına özgü olabilir ve başka bir Linux ailesi için değişiklik gösterebilir. Burada farklı aile / dağıtım için bazı yapılandırmalar bulabilirsiniz .

    Not: Bazı dağıtımlar kullanılan algoritmaya / sıkıştırmaya bağlı olarak initrd.gzveya initrd.lzkullanır.

Düzenlemeden sonra /etc/grub.d/40_customGRUB'un update-grub2komutla güncellenmesi gerekir . Yeniden başlattıktan sonra, GRUB ekranında eklediğiniz özel menü girişlerini bulacaksınız. Ve bir GNU / Linux dağıtımının Canlı ortamını kullanabilirsiniz.

ISO'dan kurulum yapabilmek için yükleyicinin takılı tüm bölümleri çıkarması gerekebilir; yani başka bir sistem monte edilir ki /isodeviceo zaman yapabilirsiniz, umount -l /isodevice.


Vay canına, çok etkilendim ... Yeni bir işletim sisteminin yüklenmesi genellikle ISO dosyanızın depolandığı bölümü içerebilecek bölümleri yeniden biçimlendirmeyi içerdiğinden, bunun imkansız olacağını düşünürdüm.
Wildcard

Örnekleriniz GRUB2 kullanır. Centos 6, GRUB1 (grub eski) kullanır ve yukarıdaki örnekler işe yaramaz.
Ikrom
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.