GRUB kullanarak USB'den önyükleme


45

Arkadaşımın dizüstü bilgisayarı trafik kazası geçirdi (sorun değil!). Ancak laptop çok eski bir Acer Aspire 1520 CD-ROM sürücüsü bozuk ve disket sürücü yok.

Ona bir göz atmadan önce bir USB önyüklemesi yaptım ve BIOS'un USB'den önyüklemediğini fark ettim. sadece Sahip olduğum şey bir GRUB konsolu ama sadece XP'yi (USB'de) kurmak ve sadece Filmler için kullanmak istiyor.

USB'ye erişmek ve Windows kurulumunu başlatmak için GRUB konsolunu kullanmak mümkün mü? Uzun bir emirdir, ancak bunun mümkün olacağını ya da LAN üzerinden kurmaya çalışmak olabileceğini düşünüyorum.


1
Bir USB cd / dvd sürücüsü almaya ve bilgisayarı buna önyüklemeye almaya çalışacağım.
jmreicha

1
Bu gönderi gereken manuel komutları gösterir - GRUB'un sekmesi tamamlandıktan sonra kullanılabilecek sürücü numarasını bulmanız yeterlidir.
new123456

Yanıtlar:


35

İşte işe yarayabilecek grub komutlarına, açıklamalara ve uyarılara kısa bir örnek.

grub2

2010 sonrası kurulumlar için büyük olasılıkla.

set root=(hd1,1)
chainloader +1
boot

grub

2005 öncesi kurulumlar için büyük olasılıkla.

root (hd1,0)
chainloader +1
boot

2005-2010 dönemi için tahmininiz benimki kadar iyidir, ancak yanlış sürüm için komutu kullanırsanız, yalnızca ilk komutta zararsız bir sözdizimi hatası alırsınız.

Doğru kökü seçme

Başlangıçta, grub cihazlarınız için sondalar ve onlara numaralar atar. Bölümlenen tüm cihazlarda (sabit diskler ve flash sürücüler) ayrıca atanmış numaralara sahip olacaktır. Formatı (<deviceName>,<partitionIndex>). İçinde grub2bölüm dizinleri değişti, bu nedenle yukarıdaki iki örnek, farklı kökler kullanmaya rağmen aynı etkiye sahip.

İlk cihazınız ( hd0 ) hangi cihaz grubunu yeni yüklediği. Bundan sonra, genellikle tüm dahili cihazların harici cihazlarınızdan önce geleceğini varsayabilirsiniz. Onlar büyük olasılıkla şeklinde olacak hd ve bir numara.

Virgülünden sonra bölüm dizini. Sabit diskler ve parmak sürücüler neredeyse her zaman bölümlenir, bu nedenle doğru (ve yalnızca büyük olasılıkla) bölümü seçmelisiniz. CD-ROM'lar genellikle bölümlenmemiş.

Daha fazla dokümantasyon: http://www.gnu.org/software/grub/manual/html_node/Device-syntax.html

Kök bölümünüzü seçerken, cihaz adlarını ve bölüm endekslerini araştırmak için Sekme tuşunu kullanabilirsiniz. Sadece parantezi açın ve listeyi görmek için Tab tuşuna basın.


5
Kullanmak da mümkündür set root=(hd1) (vb.) bölümlenmemişse tüm cihazdan önyükleme yapmak; önyüklenebilir bir USB sürücü.
white_gecko

4
Sadece eklemek için yapabilirsin ls bağlı cihazların listesini görmek için
AntouanK

1
Yığın değişimi cesaretini kırdığın için teşekkür ederim, ama bu cevap gerçekten hakediyor. Bana çok zaman kazandırdın.
John Militer

13

New123456'nın yorumuna odaklanmak için:

USB cihazı bir yığın depolama cihazı olarak algılanmalı ve aynı sabit disk sürücüsü gibi kullanılmalıdır. Yani, gruba yazın root (hd (henüz Enter tuşuna basmayın) ve ardından Grub'un hangi sabit sürücüleri görebileceğini görmek için sekmeye bir veya iki kez basın. Eğer tanınırsa, USB cihazı muhtemelen hd1 olacaktır. Bir bölüm numarası belirtmeyin; sadece bir kapanış parantezi ekleyin. Yani çizgi olacak root (hd1). Sonra bundan sonra, aşağıdakini yazın:

chainloader +1
boot

Bu işe yaramazsa, değiştir root (hd1) için root (hd1,0) ve tekrar dene.

Bir nedenden dolayı Grub USB sürücüsünü göremiyorsa, bir USB CDROM takıp çıkarmayı deneyin.


6

chainloader +1 BIOS, bir USB anahtarından önyükleme yapmakta iyi değilse (bu yüzden Grub'u zaten kullanmak istiyordum) bu durum çalışmayabilir.

Bu durumda, bazı derin sihir var https://help.ubuntu.com/community/Grub2/ISOBoot Bu çalışır, en azından Ubuntu için. Kritik bit, kimliği tanımlayan grub komutuyla uyuşmuyor. vmlinuz dosya, geçen iso-scan/filename argüman. Her nasılsa, tüm önyükleme dosya sisteminin bir ISO dosyasına sıkışmış olduğunu anlamaya yardımcı oluyor. Nasıl çalıştığını bilmiyorum, ama işe yarıyor. Bunlar (yaklaşık olarak) kullandığım Grub 2 emirleri:

loopback loop (fd0,msdos1)/path/to/iso/file
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/path/to/iso/file noprompt noeject
initrd (loop)/casper/initrd.lz
boot

/path/to/iso/file USB anahtarındaki ISO dosyasının yolu olmalıdır. (fd0,msdos1) USB anahtarını tanımlar. Sekme tamamlama işlemi süper yararlı loopback satır ve bağımsız değişkenlerin vmlinuz.


Sanırım bunu farklı bir soruya cevap olarak cevaplamak istedim. Keşke hangisini bilseydim!
Paul Stansifer

Durumunda efi / uefi önyükleme modları, bunlar grub2 komutlar bir hata üretir: error: can't find command 'linux'. Komutları olarak değiştir linuxefi ve initrdefi.
Samveen

Buradaki konsepti sevdim. Bir flash sürücüde bulunan bir ISO'yu önyükleyin. Bu, bir flash sürücüyü bir Boot CD büfesine dönüştürür. Flash'ı değil, CD'den önyükleme yapabildiğiniz daha işlevsel örnekte, USB'den önyükleme sorunu varsa, aralarında seçilen bir CD'yi yazabilirsiniz, değil mi?
BenPen

2

Bu, arkadaşınızın durumunda çok yararlı olmayacak (aygıtta ilk önce plop alma konusunda farkında olmadığım bir yol yoksa - belki bir usb cd-rom veya usb disket sürücü?) bu, müthiş bir küçük uygulama, bu da bios'larının izin vermediği zamanlarda birkaç eski makineyi kullanmamı sağladı.

Plop Önyükleme Yöneticisi


0

Eğer bios kendisi için izin vermiyorsa, usb grubundan önyükleme yapamazsınız. Bir keresinde win7 kurulum diski içeriğini içeren bir sabit diske bir tür kurtarma bölümü kurmam gerekti, grub'u kurdum ve sonra bunu win7 kurulum bölümünü önyüklemek için kullandım.

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.