GRUB2'deki bir .iso dosyasından nasıl önyükleme yapılır? [çift]

18

Bunu yapmanın bir yolu var mı?

    
sordu Lincity 05.02.2011 10:16

6 cevap

9

Web'deki tüm ayrıntılı açıklamalardan aldığınız izlenimden çok daha kolay olabilir. Sadece bir firmware güncellemesi için FreeDOS .iso'yu açmak için Ubuntu 12.04'te aşağıdakileri yaptım

  • Grub-imageboot'u yükle
  • .iso dosyalarınızı / boot / images /
  • dizinlerini kopyalayın
  • update-grub2'yi çalıştır

Veya bunları kopyala / yapıştır:

sudo -s
apt-get install grub-imageboot
mkdir /boot/images/
cp $YOUR_ISO_FILE.iso /boot/images/

update-grub2

İşte.

Bazen, update-grub2'yi çalıştırmadan önce yapmanız gereken 2 adım daha gerekebilir:

Daha önce hiç yapmadıysanız, / etc / default / grub'u düzenlemeniz gerekir ki önyükleme grubunu görürsünüz:

## To show the menu, disable the hidden_timeout, and set a timeout
#GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=10

Bazı .iso görüntüleri için, bu seçeneği / etc / default / grub-imageboot dizinine eklemeniz gerekebilir: (FreeDOS .iso için gerekliydi)

ISOOPTS="iso raw"

Bu yapılandırmadan birini düzenlediyseniz. dosyaları, update-grub2 dosyasını tekrar çalıştırmanız gerekir.

Güncelleme: İşte "dma_k" tarafından sorulan sonuç menüsü

menuentry "Bootable ISO Image: SV100S2_64_128_120229" {
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root 6ca082d0-63d0-48c3-9e5f-2ce5d7a74fe4
    linux16 /boot/memdisk iso raw
    initrd16 /boot/images/SV100S2_64_128_120229.iso
}

Bu, bazı firmware güncellemesi veya benzeri bir FreeDOS görüntüsü içindi.

    
verilen cevap mivk 08.01.2013 17:18
8

GRUB menüsüne .iso girişi eklemek ve önyüklemek istediğinizi farz edelim?

Ubuntu Forumlarında bu bilgiyi buldum

    
verilen cevap Mark Rooney 05.02.2011 10:44
2

İşte

  
  1. /etc/grub.d dizinine değiştir.
  2.   
  3. 50 ile başlayan ISO görüntülerinizi buraya ekleyin. Örneğin benim için giriş   normal Ubuntu ISO görüntüsü   (50_ubuntu) şöyle görünüyor:
  4.   

echo "Adding $(egrep menu[e]ntry %code% | cut -d'"' -f2)" >&2
cat << EOF
menuentry "Ubuntu 10.04 Daily Build" {
loopback loop (hd0,3)/ansi/software_and_config/ISOs/ubuntu/lucid-desktop-i386.iso linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ansi/software_and_config/ISOs/ubuntu/lucid-desktop-i386.iso file=(loop)/preseed/ubuntu.seed quiet splash bootkbd=sg -- initrd (loop)/casper/initrd.lz
}

     

ISO dosyam, altında sda3'te saklanır   / Ansi / software_and_config / ISO'lar / ubuntu /.   İhtiyaçlarınız için değiştirmek için   değişecek 3 unsur var.   geri döngü satırı sabit diskinizi içerir   grup tarzında (hdx, y x = 0-> sda)   x = 1-> sdb aso) ve yol. Üçüncü   değiştirmek için öğe linux içinde   hat. Bu dosyayı “50_ubuntu” olarak saklayın   "/etc/grub.d" 'de, çalıştırılabilir hale getirin   “chmod a + x 50_ubuntu” ile ve   değişiklikleri etkinleştirin   “Ubdate grub”. Yeniden başlattıktan sonra   grubunu harekete geçirebilmelidir   shift tuşlu menüyü seçin ve   yeni giriş.

(Not: eğer birisi uygun [CODE] formatını kullanabilirse, bu harika olur. Düzgün çalışmasını sağlayamıyorum. --tyblu)

    
verilen cevap user10551 10.02.2011 04:44
2

Buraya rastladım çünkü sayısız önyüklenebilir ISO 9660 görüntüsünü yakmaktan yoruldum ve böylece Seagate HDD'lerinin bellenimini / mikrokodunu güncellemek için bir FreeDOS'u önyüklemek için GRUB 2'yi kullanmak istedim. Mivk'in cevabının tamamlayıcısı veya alternatifi olarak (syslinux'un memdisk 'sini kullanarak), GRUB 2'nin gücünden yararlanmak için yaptığım şuydu:

  1. syslinux-common paketini yükleyin (içindeki memdisk 'yi kullanmak için; grub-imageboot temel olmayan bir bağlantı paketidir)
  2. GRUB 2'nin yerleşik mini kabuğunun (veya daha doğrusu, en az BASH benzeri kabuk) komut istemini etkinleştirmek için 'c' tuşuna (komut için mnemonik) basın
  3. GRUB 2'nin mini kabuğundaki 3 komut satırını sorun:
   linux16 (hd0,gpt2)/usr/lib/syslinux/memdisk iso raw
   initrd16 (hd0,gpt3)/myUserAccount/download/Barracuda-ALL-GRCC4H.iso
   boot
   # where Barracuda-ALL-GRCC4H.iso is a FreeDOS-based ISO 9660 image, and 
   # the mathematical 2-tuples or ordered pairs, (hd0,gpt2) and (hd0,gpt3), 
   # are GRUB 2's respective device notations for my rootfs partition 
   # (e.g., /dev/sda2) and home partition (e.g., /dev/sda3).
   # NOTE: This procedure also applies to Seagate's SeaTools (based on 
   #       FreeDOS as well); just substitute the file SeaToolsDOS223ALL.iso 
   #       for Barracuda-ALL-GRCC4H.iso.

Syslinux öğesinin% co_d% 'si hakkında bilgi İşte ’dir.

Komutları doğrudan mini kabuğun içinde manipüle ederek, bu prosedür daha farklıdır ve farklı bir Linux dağıtımını denemek istediğiniz her seferinde GRUB 2 yapılandırmalarını güncellemeye ve güncellemeye gerek duymadığınız için yukarıda bahsedilen yöntemlerin çoğundan daha temizdir. veya BSD tabanlı bir canlı CD.

Şu anda, GRUB 2'nin mini-kabuğunda genel bir kalıp olarak kullanılabilen bu 4 komut satırı, yani loopback-linux-initrd-boot dizisi artı bazı argümanlar ( s) verilen çekirdeğe, örneğin, birçok popüler Linux ISO imgelerini mümkün olduğunca önyüklemek için (bu durumda Sistem Kurtarma CD'si için 3 çekirdek komut satırı argümanı ile):

   loopback lb (hd0,gpt3)/myUserAccount/download/systemrescuecd-x86-3.7.0.iso
   linux (lb)/isolinux/rescue64 isoloop=systemrescuecd-x86-3.7.0.iso setkmap=us docache
   initrd (lb)/isolinux/initram.igz
   boot

N.B. Bir optik diski boşa harcamadan bir Debian türevi gibi bir Linux dağıtımını kurmak istediğinizde, jenerik modelin% ​​co_de% kısmı, tam olarak söylemek gerekirse, Linux için zorunlu değildir.

    
verilen cevap pseudonym 20.05.2013 04:22
0

Mark Rooney'nin dediği gibi, Ubuntu Forumlarında harika bir rehber bulabilirsiniz .

Bu, bir ISO dosyasından önyükleme yapmanıza izin verir, ancak yalnızca ISO destekliyorsa. (Son tüm Ubuntu sürümleri, bir dizi başka dağıtım olmalıdır).

Canlı ISO'dan yüklemeyi planlıyorsanız, dosyayı kurduğunuzdan farklı bir bölüme yerleştirmelisiniz (çünkü kaçıyor olduğunuz bölüme yazamazsınız). Şans vardır, yükleyici yine de şikayet eder. Yapmanız gereken, /etc/mtab dosyasını manuel olarak düzenlemek ve bölümle ilgili girdiyi ISO dosyasıyla kaldırmaktır.

    
verilen cevap Zifre 05.02.2011 17:40
-1

USB disk / çubuk üzerindeki bir ISO dosyasından önyükleme yapmak için muhtemelen en kullanıcı dostu yol MultiSystem : İşte

LiveUSB diskinizin / çubuğunuzun önyükleme menüsünde yer alan en çok ISO resimlerinin olması için sadece sürükle ve bırak .

    
verilen cevap Sadi 31.05.2013 13:15

Etiketlerdeki diğer soruları oku