GRUB'un UEFI dizüstü bilgisayarından kaldırılması


9

Ubuntu'yu Windows 8 ile birlikte kurdum, ancak Ubuntu'nun unisntall'ına karar verdim.

Önce Parted Magic'e önyükleme yaptım ve GParted kullanarak tüm ext4 ve takas bölümlerini sildim.

Bu beni Ubuntu'yu kurmadan önce sahip olduğum bölümlerle aynı bırakıyor:

/dev/sda1 ntfs WINRE_DRV
/dev/sda2 fat32 SYSTEM_DRV (my UEFI partition)
/dev/sda3 fat32 LRS_ESP
/dev/sda4 unknown Microsoft Reserved Partition
/dev/sda5 ntfs Windows8_OS
/dev/sda6 ntfs LENOVO
/dev/sda7 ntfs PBR_DRV

Bölümleri silmenin Ubuntu'yu kaldırmak ve Windows 8'e geri yüklememe izin vermek için yeterli olacağını umuyordum, ancak önyükleme yaptığımda aşağıdaki hatayı alıyorum:

error: no such partition.

Bunu GRUB kurtarma takip eder:

grub rescue>

UEFI bölümümde iki dizin var BOOTve EFI. In BOOTtek bir dosyadır boot.sdi. Dizinde EFIbaşka iki dizin vardır BOOTve Microsoft. İçeride BOOTiki dosya vardır bkpbootx64.efive bootx64.efi. MicrosoftDizin adlandırılmış bir dizin vardır Boot. İçinde normal Microsoft EFI dosyaları var (anlayabildiğim kadarıyla).

Hala GRUB dosyaları kaldığını düşünerek, koştum find . -iname "*grb*"ve find . -iname "*grub*"UEFI bölümünde, ancak sadece bir boş dosya buldum bootx64.efi.grb(sildiğim).

GRUB hala nasıl kurulur ve nasıl kaldırabilirim?

UEFI için oldukça yeniyim ve bu yüzden işlerin ayrıntılı olarak açıklanması gerekebilir. Bilgisayar bir Lenovo IdeaPad Z580'dir.

edit: Bahsetmeyi unuttum ubuntu, UEFI bölümünde klasörü sildim .

edit 2: Dizüstü bilgisayarın BIOS ayarlarındaki "Sistem Kurtarma" seçeneği ile Windows'a geri dönmeyi başardım. Bu sorunu çözmüş veya çözmemiş olabilir.

edit 3: Tamam, şimdi neredeyse normalde önyükleme yapabilirim. Önyüklediğimde, No partition activebirkaç saniye sonra Windows önyükleme yapıyor. Bunu nasıl kaldırabilirim?

Yanıtlar:


28

Sorunu çözdüğünüzü anlıyorum, ancak neyin yanlış gittiğini ve nasıl düzeltilmesi gerektiğini belirtmek istiyorum (hem son kullanıcılar hem de Ubuntu'nun geliştiricileri tarafından).

İlk olarak, Ubuntu'nun geliştiricileri - en akıllıca - Ubuntu root ( /) bölümündeki dosyalara ve EFI Sistem Bölümü'ne (ESP) dayanan bir GRUB yapılandırması oluşturmaya karar verdiler . Bu, GRUB'u Linux bölümünün kaldırılmasına veya zarar görmesine karşı savunmasız hale getirir ve bu nedenle Ubuntu'yu kaldırdıktan sonra veya Ubuntu yüklemesi bir şekilde hasar görürse bilgisayarı önyüklemeyi zorlaştırır. Bu güvenlik açığı gereksizdir; GRUB'u ESP'deki tüm destek ve yapılandırma dosyalarını arayacak şekilde yapılandırmak mümkündür. GRUB bu şekilde yapılandırılmışsa (Fedora'nın yaptığı gibi), Ubuntu'nun silinmesi GRUB'un Windows'a yönlendirme yeteneğini etkilemez. Sistem yine de GRUB üzerinden önyükleme yapacaktı, ama en azından hala önyükleme yapacaktı. Bu nedenle, GRUB'u yanlış şekilde ayarladığı için Ubuntu'ya utanç.

İkincisi, bahsettiğiniz dosya adlarına dayanarak, Ubuntu'nun Boot Repair aracını bir noktada çalıştırmış gibi görünüyorsunuz. Bu araç, Windows önyükleme yükleyicisini otomatik olarak yeniden adlandırır EFI/Microsoft/Boot/bootmgfw.efive GRUB'un bir kopyasını yerine yerleştirir. EFI yedek önyükleme yükleyicisiyle aynı şeyi yapar EFI/BOOT/bootx64.efive GRUB'un başka bir kopyasını, EFI/Microsoft/Boot/bootx64.efiiddia etmediğim nedenlerden dolayı olduğu gibi bırakır . Bu, birkaç EFI'daki bir hata için geçici bir çözüm olarak yapılır. Sorun, Önyükleme Onarımı'nın varsayılan olarak bunu yapmasıdır. Çoğu bilgisayarda, öyle değilgerekli. Daha sonra önyükleme yapılandırmasında değişiklik yapmak istendiğinde, GRUB'un bu yeniden adlandırılması ve çoğaltılması karmaşık hale gelir, çünkü kullanıcılar neler olup bittiğini tahmin etmeye devam eder. Öyleyse, Boot Repair geliştiricilerine onarımlarından memnun olmadıkları için utanç. (Savunmalarında, Önyükleme Onarımı için hangi bilgisayarların önyükleme dosyalarını varsayılan olarak yaptığı şekilde taşımayı gerektiren hatalara sahip olduğunu güvenilir bir şekilde algılamak çok zor olacaktır.)

Bir nokta daha önemlidir: Düzgün çalışan bir EFI sisteminde, NVRAM'de önyükleme programlarının bir listesi tutulur. EFI bu listedeki programların her birini sırayla dener; biri başarısız olursa veya yoksa, diğeri denenir. Ubuntu yüklendiğinde GRUB sürümünü listenin başına ekler. Çoğu EFI ayrıca kullanıcıların yerleşik bir önyükleme yöneticisinden hangi önyükleme programının kullanılacağını belirlemelerini sağlar, ancak bu yerleşik önyükleme yöneticisi çoğu EFI'de kaba olur.

Tüm bu faktörleri toplayın ve orijinal soruna en basit çözüm:

  1. Önyükleme Onarım aracının değişikliklerini geri alın. Bu, Önyükleme Onarım aracının kendisi kullanılarak yapılabilir; "EFI Yedeklerini Geri Yükle" adlı bir onay kutusuyla Gelişmiş Seçenekler menüsüne sahiptir. Bunu kullanın, GRUB'un birden fazla kopyası kaldırılacak ve Windows önyükleme yükleyicisi geri yüklenecek. Alternatif olarak, bu elle yapılabilir. En önemlisi, (Önyükleme Onarımı'nın bazı sürümlerinde başka adlar kullanılmasına rağmen, bootmgfw.efimuhtemelen çağrılır bkpbootmgfw.efi) ESP'ye kopyalanmalıdır EFI/Microsoft/Boot/bootmgfw.efi.
  2. EFI/ubuntu/grubx64.efiUbuntu için GRUB'u resmi / uygun yerinden silin . Güvenli Önyükleme etkinse, EFI/ubuntu/shimx64.efibunun yerine silme gerekli olacaktır. Aslında, tüm EFI/ubuntudizini silmek veya en azından yeniden adlandırmak her durumda işi yapar.

Bu kadar. Bu iki şey tamamlandığında, EFI artık geçerli olmadığı ve Windows'u önyüklemeye devam ettiği için Ubuntu önyükleme seçeneğini atlayacaktır. Bazı EFI'ler, bu uygulama evrensel olmasa da, Ubuntu önyükleme seçeneğini otomatik olarak önyükleme yöneticilerinin menülerinden de kaldıracaktır.

Davanızda, Matthew, bu şeyleri yapmanızı önermiyorum; çalışan bir yapılandırmanız var ve dedikleri gibi, "eğer kırılmazsa, düzeltmeyin." ESP'nizde birkaç başıboş dosya kalmış olabilir, ancak herhangi bir zarar vermiyorlar, bu yüzden onu yalnız bırakmak en iyisidir. Cevabımı başka birinin faydalı bulacağı umuduyla sundum.


DÜZENLEME: İlk yazdığımda yukarıdaki doğruydu ve ilkeler aynı kaldı; ancak, Önyükleme Onarımı artık Windows önyükleme yükleyicisini otomatik olarak yeniden adlandırmaz ve başka bir GRUB kopyasıyla değiştirir. (Önyükleme Onarımı bunu isteğe bağlı olarak yapabilir , ancak seçenek gelişmiş seçenekler menüsüne gömülür, bu nedenle artık varsayılan olarak yapılmaz.) Bu gerçek, bu sorundan kurtarmayı bugün 2013'tekinden daha kolay hale getiriyor. Çoğu durumda, yalnızca EFI/ubuntusistemi doğrudan Windows'a önyükleme yapmak için ESP'deki dizini silin . Bunu yaptıktan sonra GRUB görünmeye devam ederse, önyükleme dosyalarını yedeklemek ve yeniden adlandırmak için Önyükleme Onarımı seçeneğini kullanmış olabilirsiniz; bu durumda, daha önce belirtildiği gibi, bu eylemleri geri almak için kullanma sırası geçerlidir.

Başka bir seçenek de, GRUB'u atlamak ve Windows'a önyükleme yapmak için bilgisayarın yerleşik önyükleme yöneticisini (genellikle bir işlev tuşuna, Esc veya Enter tuşuna basarak erişilir) kullanmaktır. Daha sonra önyükleme sırasını ayarlamak ve / veya önyükleme listesinden girişi silmek için EasyUEFI kullanabilirsiniz ubuntu. Bu eylem GRUB'u ESP'den silmez, ancak GRUB'u atlar.


Bu cevap için teşekkürler! Sorunu çok iyi açıklıyor. Gerçekten Boot Repair çalıştırmıştım ama bu soruya dahil etmeyi unuttum. Bunu, gelecekte kesinlikle birisine yardım edebileceği ve sorunu düzeltmenin çok daha temiz bir yolu olduğu için cevap olarak işaretledim.
Torvero

Geç kaldım, ama yine de soracağım; bunun da varsayılan EFI önyükleyicisini GRUB ile değiştirdiğini söylediniz. Ubuntu 18.04 yükleyicisiyle değiştirildiğini varsayarak kurtarmanın herhangi bir yolu var mı?
Zoe

3

Bu konu eski olduğunu biliyorum, ama kendim için bu sorunu çözmeye çalışırken kendi aramda rastladım ve diğer cevapların hiçbiri bu yüzden paylaşmam gerektiğinde benim için çalışan bir çözüm buldum!

Windows 10 ile birlikte dizüstü bilgisayarımda çift önyüklü Ubuntu vardı. Ubuntu'yu kaldırmaya karar verdim ve bölümünü sildim, ancak grub hala önyükleme yükleyicimi kesmeye devam etti. Forumlarda kalan çok sayıda öneri denedikten sonra, sonunda kendi lol'imden çıkarmak için son derece basit ve grafik bir yolla karşılaştım. (Yani, sorumluluk reddi, Windows'un diğer sürümlerinde bu seçeneğin olup olmadığı hakkında hiçbir fikrim yok)

Ama bilgisayar önyükleme seçeneklerine girmek için önyükleme yaparken tek yaptığım F12 idi. Ve Diğer Seçenekler altında BIOS Kurulumu'nu seçtim . Sol tarafta Önyükleme Sırasını seçtim ve tam orada farklı önyükleme seçeneklerimi listeledim ve siparişlerini değiştirmek veya kaldırmak için ya da istediğim her şeyi seçebilirim. Tek yapmam gereken sadece "ubuntu" nun işaretlendiğinden emin olmaktı, sonra Boot'u Sil'i tıklayıp çıktım . Giriş ekranına devam etti ve dizüstü bilgisayarımı sadece sorunumu çözdüğünü iki kez kontrol etmek için yeniden başlattım ve vardı!


İnternet uefi olmayan çözümlerle dolu gibi görünüyor, ama bu sadece işe yarıyor!
Peter Lehnhardt

1

Tamam, bu benim varsaydığım her bilgisayar için işe yaramaz, ama bunu benim için düzeltti .

İlk olarak, dizüstü bilgisayarımdaki BIOS seçenekleri aracılığıyla "Sistem Kurtarma" ya önyükleme yaptım. Bu, Windows'a girmeme izin verdi, ancak bundan sonra her önyükleme yaptığımda, No partition activeWindows önyüklemeden önce bir saniye boyunca bir mesaj aldım . Aşağıdakileri yaparak bundan kurtuldum:

  1. Windows'a önyükleme
  2. ÜST KARAKTER + "Yeniden Başlat" ı tıklayın
  3. Sorun giderme
  4. ileri
  5. Komut istemi
  6. Koşu bootrec.exe /fixmbr

ve yeniden başlatma. Şimdi mesaj artık görünmüyor ve her şey normal görünüyor.


1

Yaptığım şey, Ubuntu'yu kaldırdıktan sonra bunu bazı kaldırıcılarla yapabilir veya sadece Ubuntu canlı CD veya USB çubuğuna önyükleme yaparak ve Linux bölümlerini GParted ile biçimlendirerek yapabilirsiniz - EFI bölümünü de biçimlendirdim (FAT32) ve sonra yaptım Windows kurulum diskinden Windows önyükleme kurtarma.

Düzinelerce tavsiye ve öğretici okuduğumdan ve çalışmayan yöntemlerle zaman kaybettiğimden bahsetmeliyim. Sonunda be4 windows yeniden yükleme bana mantıklı görünüyordu tek şey yaptım ve bir cazibe gibi çalıştı.


1

Surface Pro'da UEFI menüsünden "Güvenli önyükleme anahtarlarını yeniden yükle" seçeneğini seçerek Grub 2'yi atlatmak mümkündür.


Bunun ötesindeki seçeneklerle biraz uğraşmanız gerekebilir - bence "sadece Windows tuşlarına izin ver" gibi bir şey söylemek zorunda kaldım. Geçersiz önyükleme yapılandırması hakkında hala bir ileti alıyorum, ancak daha sonra önyüklemeye devam edecek.
bbarker
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.