Як позбутися завантажувального пристрою з зовнішнього жорсткого диска


2

Якийсь час я спробував Linux Ubuntu як свою ОС. Як і будь-яка ОС, у Linux є свої недоліки, деякі з яких для мене є великою проблемою. Тому я повернувся до Windows 7.

Щоб запобігти модифікаціям у моїй системі, коли я її пробував, я встановив Ubuntu на зовнішній жорсткий диск. Я використовував цей накопичувач як портативний робочий простір, тому на ньому я також встановив GIMP, Aseprite, Audacity, PixiTracker, SunVox, ігровий движок GoDot та деякі відеоігри, зв'язані разом платформою PortableApps.com.

Коли я видалив Ubuntu з диска, я здійснив багато кроків, включаючи повний переформатування. Але тепер, коли я намагаюся запустити свій комп’ютер із підключеним до USB порту накопичувачем, я отримую це

error unknown filesystem entering rescue mode

Заглянувши в накопичувач, я знайшов лише один розділ, який не є ні системним, ні завантажувальним. Тож на ньому не залишається жодного сліду, але Груб якось пам’ятає попередню установку.

Хтось знає, як це позбутися? Я читав рекомендації щодо використання інструменту для заміни Grub завантажувачем Windows, але не хочу мати жодного завантажувача на зовнішньому жорсткому диску.

Відповіді:


4

1. Перш за все увійдіть в BIOS і переконайтеся, що у вашому порядку завантаження перший диск - ваш основний системний диск (а не завантажувальний пристрій USB чи CDROM). Залежно від торгової марки комп'ютера також існує можливість вибору завантажувального пристрою на вимогу (як правило, натисканням F12кнопки), де ви можете вибрати завантажувальний пристрій, в цьому випадку виберіть основний жорсткий диск замість USB-накопичувача.
Якщо вона вирішить вашу проблему, виконайте кроки 2,3 нижче, щоб позбутися від GRUB на зовнішньому жорсткому диску, інакше Ubuntu встановив GRUB на вашому системному диску, вам потрібно дотримуватися @harrymc відповіді, описаної в цьому протекторі, щоб позбутися завантажувача GRUB з системний диск.

2. Якщо ваш зовнішній диск відформатований як MBR, тоді цей крок видалить завантажувач GRUB:
Запустіть будь-яку базу Linux LiveCD ( SystemRescueCd є хорошим кандидатом), а потім видаліть завантажувач
із ddкомандою з терміналу як

  dd if=/dev/zero of=/dev/sdX bs=446 count=1

Переконайтеся в тому , щоб замінити sdXз правильним (!!!) диском , який ви хочете лікувати.

За допомогою SystemRescueCd ви можете ввести startx, дочекавшись завантаження робочого столу, потім меню-> запустіть систему "Показати файлову систему", щоб виявити ім'я диска, де груб потрібно видалити

3. Якщо ваш зовнішній жорсткий диск відформатований як GPT, вам потрібно очистити сектор 1 (в нульовому підрахунку), де GPT зберігає завантажувач та таблицю розділів.

Або ви можете очистити всі розділи завантажувача на зовнішньому жорсткому диску незалежно від того, чи це MBR або GPT, використовуючи ddкоманду, описану на кроці 2 як

# Clear everything. Make sure sdX is your external hard drive (!!!)
dd if=/dev/zero of=/dev/sdX count=1 bs=16MB

Це знищить таблицю розділів, а також розділ та його дані, тому обов'язково збережіть файли із зовнішнього диска, перш ніж це робити.

Закінчивши видалення завантажувача GRUB, перейдіть до Панелі керування-> Адміністративні інструменти-> Керування комп'ютером та на лівій панелі виберіть Зберігання-> Управління диском, потім виберіть зовнішній жорсткий диск, натисніть правою кнопкою миші та, нарешті, відформатуйте.


О .. щойно додавав цей сценарій, здогадайся, ти мене
обнюхав

Ні, я не, і я не телепатик :)
Алекс

Я знаю, говорив це добре. Однак навіщо використовувати розмір блоку в 446 байт? У класичному загальному MBR так, це замінить область коду завантажувального коду і залишить таблицю розділів. Однак для будь-яких інших структур MBR (див. Макет сектору ) це може не працювати або принаймні не повністю. Я також сумніваюся, що нам буде потрібна таблиця розділів у MBR, якщо OP більше не використовуватиме її як завантажувальний диск, як він заявив.
Fanatique

Деякі "завищені" програми можуть використовувати простір за першими двома октетами, тому сафлі, щоб зберегти його таким, яким він є
Алекс

Груб знаходиться на первинному приводі. Після його видалення вам не знадобиться ще один крок для перевстановлення завантажувача Windows?
fixer1234

2

Коли ви переформатували зовнішній диск, ваша проблема не в цьому. Отже, Grub встановлений на вашому системному диску і, мабуть, встановлений для завантаження спочатку з зовнішнього диска, а другий з Windows.

Зараз, коли ви намагаєтеся завантажитися з підключеним диском, це те, що Grub отримує доступ до першого розділу на ньому, який нібито містить код завантаження Ubuntu, але натомість знаходить розділ Windows, імовірно, відформатований як NTFS, який він не може зрозуміти. Тому він видає повідомлення про «невідому помилку файлової системи». Якщо диск не підключений, Grub спокійно завантажується з Windows.

Ваша проблема тепер є класичною проблемою скасування подвійного завантаження Windows та Linux. У вас є два варіанти: Видаліть лише зовнішній диск як варіант завантаження або замініть завантажувальний код завантажувачем Windows. Звичайно, ви також маєте третій варіант ніколи не завантажуватись із підключеним накопичувачем.

Найпростішим рішенням було б використовувати безкоштовний інструмент відновлення подвійного завантаження Windows 10 , де "Автоматичне відновлення" виправить завантаження в Windows.

Щоб видалити Ubuntu лише як конфігурацію завантаження, див. Статтю Ask Ubuntu
Uninstall Grub та використовуйте завантажувач Windows .

Щоб виправити проблему вручну під час завантаження з Windows, див., Наприклад, цей пост:
Як виправити завантажувач Windows 10 з Windows .


1

Найшвидший і найефективніший спосіб - це третій приклад, який я дав, якщо ви використовуєте застарілий GRUB.

Перший приклад:
Ви не можете використовувати опцію fixmbr для Windows , оскільки на зовнішньому жорсткому диску Windows не працює. Що ви можете спробувати і зробити, це використовувати утиліту Ubuntu Boot Repair з живим завантаженням на зовнішньому жорсткому диску, щоб відновити завантажувальні сектори:

  1. Зробіть резервну копію всіх своїх даних із зовнішнього жорсткого диска, можливо, перемістіть їх звідти.
  2. Завантажте та запишіть Ubuntu live ISO на зовнішній жорсткий диск (не мережевий інсталятор).
  3. Завантаження з зовнішнього жорсткого диска (завантаження в Ubuntu на зовнішньому жорсткому диску).
  4. Встановіть boot-repairутиліту з терміналу:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair
  1. Запустіть Ремонт завантаження та використовуйте рекомендований варіант ремонту . Це має виправити головну завантажувальну запис на зовнішньому диску та видалити з неї GRUB.

  2. Потім перейдіть до завантаження Windows і звідти відкрийте Disk Management , коли ваш зовнішній жорсткий диск підключений.

  3. Видаліть усі розділи на зовнішньому жорсткому диску та відформатуйте їх повторно. Не забудьте правильно стерти всі розділи та правильно відформатувати їх. Не використовуйте швидкий формат.

  4. Поверніть усі ваші файли / дані на зовнішній жорсткий диск.

Дивіться відповідні запитання та запитання:
Як видалити Ubuntu та встановити Windows?


Другий приклад:
я сподіваюся, що це допомагає, однак, навіщо вам завантажуватись, коли зовнішній жорсткий диск підключений? Ви можете просто підключити його після завантаження.
Ще один варіант виправити це, не намагаючись видалити GRUB, це:

  1. Підключіть зовнішній жорсткий диск до комп'ютера.
  2. Завантажте та введіть програму BIOS.
  3. Оскільки ви пояснили, що ви завжди перебуваєте в режимі рятування від grub, це означає, що під час підключення зовнішнього жорсткого диска GRUB має пріоритет у процесі завантаження. Зробіть Windows Boot Manager першою опцією для завантаження або повністю видалення GRUB як варіант завантаження. Оскільки це зовнішній жорсткий диск USB, це може статися, якщо завантаження з CD / USB також є вашим першим варіантом.
  4. Збережіть налаштування та перезавантажте.

Таким чином, ви без проблем завантажуєтесь у Windows, навіть якщо підключено зовнішній жорсткий диск. GRUB, який існує на цьому диску, не повинен бути проблемою.

Див. Розділ Як відключити завантаження з USB чи CD у програмі BIOS


Третій приклад:
Примітка. Наведені нижче дії працюють лише для Legacy (MBR) GRUB . Не використовуйте для EFI GRUB .

Якщо ці двоє не допомагають або не задовольняють ваші потреби, є інший спосіб.

Документація щодо зображення GRUB визначає наступне про завантажувальне зображення GRUB:

У системах PC BIOS це зображення є першою частиною роботи GRUB. Він записується в основний запис завантаження (MBR) або в завантажувальний сектор розділу. Оскільки завантажувальний сектор ПК становить 512 байт, розмір цього зображення становить рівно 512 байт.

Таким чином, перезаписавши перші 512 байти зовнішнього жорсткого диска нулями, ви отримаєте чистий диск із запису завантаження або GRUB.

Зробити це:

  1. Завантажте живий Ubuntu ISO і запишіть його на зовнішній жорсткий диск, або, якщо можливо, на інший накопичувач USB . Однак, майте на увазі , що в протягом наступних кроків, зовнішній жорсткий диск повинен бути підключений до мережі.
  2. Увімкніть живу середу Ubuntu та відкрийте свій термінал.
  3. Знайдіть пристрій, що відповідає вашому зовнішньому жорсткому диску, за допомогою via lsblk. Якщо ви завантажуєтесь із зовнішнього жорсткого диска, його перший розділ слід встановити на /. Майте на увазі, що вам потрібен шлях до всього диска, а не до розділу, наприклад /dev/sdb, ні /dev/sdb1 .
  4. Перезапишіть перші 512 байти:
sudo dd if=/dev/zero of=[path_to_external_hard_drive] count=1

Це скопіює 1 блок ( count=1) з /dev/zeroфайлу і запише його в шлях, вказаний після of=, який повинен бути вашим зовнішнім жорстким диском. Це розпочнеться з початку сектора. У більшості версій ddрозмір блоку за замовчуванням становить 512 байт , тому нам не потрібно його вказувати. Однак, якщо ви хочете бути в безпеці, ви можете вказати розмір блоку, використовуючи bs:

sudo dd if=/dev/zero of=[path_to_external_hard_drive] bs=512 count=1

bsзадає розмір блоку в байтах. /dev/zeroце файл , який містить нескінченну кількість 0 символів (з вікіпедії ):

/ dev / zero - це спеціальний файл у схожих на Unix операційних системах, який забезпечує стільки нульових символів (ASCII NUL, 0x00), скільки прочитано з нього.

Таким чином, команда буде копіювати 1 блок з 512 байт з /dev/zero(тобто 1 блок повних нулів) і записати його за вказаним шляхом. Якщо ми припускаємо, що /dev/sdbце ваш зовнішній жорсткий диск, то ось повний приклад команди ( не використовуйте, /dev/sdbякщо ви не впевнені, що це зовнішній жорсткий диск ):

sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1

В цьому випадку вам не потрібно переформатувати зовнішній жорсткий диск, вам не потрібно , щоб перемістити файли з, однак , існує ймовірність того, що файл з корупцією може статися, таким чином, пропонується ще зробити резервну копію дані. Якщо виникла пошкодження файлів, можливо, вам доведеться знову відформатувати зовнішній жорсткий диск. Однак після цього ваш диск буде вільний від будь-якого MBR / GRUB.


0

Щоб уникнути складних команд, рекомендую використовувати RMPrepUSB . Просто виберіть свій привід, а потім натисніть кнопку «Очистити» внизу. Це знищить MBR.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.