Видалити GPT - повернення за замовчуванням до MBR


33

Я продовжую отримувати цю помилку:

Увага!! Виявлено непідтримуваний GPT (таблиця розділів GUID). Використовуйте GNU Parted

Я хочу повернутися до звичайного MBR. Я знайшов тут поради і зробив:

parted /dev/sda
mklabel msdos
quit

Але коли я переходжу до цього mklabelваріанту, він видає попередження, що я втрачу всі дані /dev/sda. Чи є спосіб повернути нормальний MBR без форматування диска?


2
Яка ваша причина, коли ви хочете перейти? Яку справжню проблему ви намагаєтеся вирішити?
Йорданм

1
Якщо ви форматуєте диск, спробуйте це: blog.gnub.net/2009/03/die-gpt-die.html (вибачте, що не маєте репутації, щоб відповісти!)
Lester Cheung,

Відповіді:


28

Це посилання, яке ви опублікували, виглядає як дуже некрасиве рішення для злому.

Однак, згідно з довідковою сторінкою, gdiskяка використовується для конвертації MBR -> GPT, в меню "відновлення та перетворення" також є опція (натисніть, rщоб отримати) для перетворення GPT -> MBR; gключ буде:

Перетворити GPT у MBR та вийти. Цей параметр перетворює якомога більше розділів у форму MBR, знищує структури даних GPT, зберігає новий MBR та виходить. Використовуйте цю опцію, якщо ви спробували GPT і виявили, що MBR працює для вас краще. Зауважте, що ця функція генерує до чотирьох первинних розділів MBR або трьох первинних розділів і стільки ж логічних розділів, скільки можна створити. Кожен логічний розділ вимагає принаймні одного нерозподіленого блоку безпосередньо перед його першим блоком.

Я спробую це спершу.


Легко так, але це все ж ризиковано.
Йорданм

@jordanm: Я цього не робив сам (саме тому я визнаю, що "Google має на увазі"), але оскільки gdisk, мабуть, має явні засоби, чому ви вважаєте, що це ризиковано? На сторінці "gdisk man" для параметра r-> gвзагалі немає жодних застережень ...
goldilocks

Цю відповідь було б покращено, якби ви поставили у відповідь необхідний крок gdisk. Особливо з тим, наскільки короткий крок. Ніколи не знаю, коли посилання може перерватися, залишаючи відповідь марною.
дероберт

@derobert: Так, оригінал був більше коментарем. gdiskНатомість я використовував речі зі сторінки man.
золотинок

1
Щоб повністю стерти, вам слід ZAP в gdisk
Сергій П. aka azure

16

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

Щоб позбутися від GPT, потрібно пам’ятати, що з цим форматом є таблиця розділів, написана до кінця диска, де вона залишиться, якщо ви просто спробуєте видалити її за допомогою fdisk або файлової системи, що не знає GPT інструмент. Те, що ви зробили з розлукою, не стосувалося цієї таблиці розділів.

Щоб стерти GPT, потрібно використовувати щось на зразок gdisk. Введіть gdiskяк кореневий підказку, а потім скажіть gdisk на який пристрій ви хочете подивитися (тобто / dev / sd ??). Використовуйте gdisk, щоб записати захисний MBR на диск, щоб переконатися, що у вас є доступ до якоїсь структури даних MBR. Потім ви можете перейти до розділу з параметрами експертів (натисніть ?на різні запити програми, щоб побачити варіанти, доступні вам у різний час) та знайти опцію, що говорить "Зап (знищити) структури даних GPT та вийти". Програма підкаже підтвердження, після чого запитає, чи хочете ви зберегти структуру MBR. Збережіть це.

Після цього це повинно бути таким же простим, як перезавантаження комп'ютера (тому що ядро ​​все ще буде використовувати стару таблицю розділів і йому потрібно перезапустити оновлення), а потім запустити fdisk та видалити залишок розділу GPT. Ви все одно побачите те саме попередження про використання GNU Parted, яке ви бачили раніше, але цього разу ви можете проігнорувати його, оскільки воно вийде, коли ви видалите розділ.

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


1
"Я думаю, що я просто відповім на ваше запитання, замість того, щоб вважати, що ви неправильно запитуєте". - це просто досить божевільно працювати!
Михайло Мрозек

6

Використовуйте gdisk /dev/sda

Примітка. /dev/sda Це стосується особи, яка задала це питання, але змініть його на ім'я вашого приводу.

Після того, як ви всередині використовуєте gdisk:

x   extra functionality (experts only)

тоді, коли ви введете, pщоб побачити всі параметри, ви побачите це:

Expert command (? for help): ?
a   set attributes
c   change partition GUID
d   display the sector alignment value
e   relocate backup data structures to the end of the disk
g   change disk GUID
h   recompute CHS values in protective/hybrid MBR
i   show detailed information on a partition
l   set the sector alignment value
m   return to main menu
n   create a new protective MBR
o   print protective MBR data
p   print the partition table
q   quit without saving changes
r   recovery and transformation options (experts only)
s   resize partition table
t   transpose two partition table entries
u   Replicate partition table on new device
v   verify disk
w   write table to disk and exit
z   zap (destroy) GPT data structures and exit
?   print this menu

Використовуйте z

Expert command (? for help): z
About to wipe out GPT on /dev/xvdf. Proceed? (Y/N): Y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): Y

2
Лише ця відповідь спрацювала для мене, дякую за те, що поділився.
Олександр

1

Це повинно працювати в більшості випадків. Ви знаєте, що не можете використовувати MBR, якщо у вас розділи більше 2 ТБ або для більш ніж 15 розділів.

  • Використовуйте проділ, щоб перевірити розміри розділу (тобто всі вони менше 2 ТБ?), parted /dev/sdX p
  • Якщо є більші розділи, зменшіть відповідну файлову систему та все інше, що потрібно зробити. (Детальніше про це наприкінці цієї публікації.)
  • Скиньте всі точні розміри розділів parted /dev/sdX u B p(покажіть розміри в байтах), щоб ви знали, як можна в кінцевому підсумку відтворити макет розділу. Використовуйте телефон, щоб зробити фото з обох partedвихідних даних.
  • Пам'ятайте, що ви можете мати лише чотири первинних розділу з MBR через внутрішню структуру. Отже, якщо у вас є більше розділів, вам потрібно вільний простір десь на вашому диску (звичайно, ви повинні знати, де це могло бути!), Щоб створити логічний розділ, на який можна поставити VBR, щоб ви могли «виділити» інші 4 / 5-й / 6-й розділ, який раніше існував.
  • Використовуйте gdiskдля запаювання GPT.
  • Створіть новий MBR.
  • Відтворіть ваші розділи, 1/2/3 в якості первинних розділів, потім на деякому вільному просторі (де БЕЗ ДАНИХ БУДЬ ЛОКОВАНО ПРІОР !!!) створіть логічний розділ, а потім створіть інші.
  • Збережіть, киньте.
  • Моліться.
  • Перезавантажте.

Ви повинні використовувати лівіскіск, як і grmlдля всього цього. Якщо ви зробили щось не так, перезавантажте та повторіть спробу.

Поки ви не записуєте жодних даних на диск, нічого не втрачається. Пам'ятайте, що у вас все ще є макет розділів на телефоні, так що ви можете відтворити оригінальний GPT, якщо це дійсно потрібно.

Якщо ви насправді щось розігріли і не зробили фотографії, спробуйте testdiskвизначити межі розділу. Але не ставте на це жодних грошей, як тільки ваш макет став чимось надзвичайним.


Щодо зміни розміру для зменшення перегородок, перспектива пташиного польоту:

  • Спочатку завжди потрібно скоротити файлову систему. Легкий для ext4 ( resize2fs -M dev/sdX), але неможливий для XFS, оскільки його неможливо скоротити. Дізнайтеся, що ви використовуєте та google, перш ніж робити такі трюки.
  • Якщо у вас є LVM, зменшіть логічний обсяг далі. ( lvreduce -L 20G /dev/mapper/<VG>-<LV>)
  • Наступним кроком LVM є зменшення фізичного обсягу. pvresize --setphysicalvolumesize 25G /dev/sdXце шлях.
  • Після цього скористайтеся інструментом розділення, який вибираєте, видаліть розділ, на який розміщений ваш lvm, і відтворіть його менший розмір.

Розміри всіх згаданих тут елементів є такими: Filesystem <LV <PV <розділ, якщо це не так, після наступної перезавантаження ви побачите, що вам потрібно зробити перевірку FS. Не робіть цього, просто знову перезавантажтесь у медіавіску та внесіть свої корективи. Якщо ви виправите там речі, ваша система знову завантажиться, обіцяю.

Щоб мати змогу все це зробити, якщо у вас є PARTITION + LUKS + LVM + FILESYSTEM, ось декілька підказок, як це зробити з оболонки:

  • df -h є вашим другом за показ розміру файлової системи під час встановлення розділу
  • lsblkі lsblk -fє вашими друзями для показу розділів
  • Якщо ви використовуєте LUKS, відкрийте криптоконтейнер через cryptsetup open /dev/sdX asdf, введіть свій пароль, і він повинен стати доступним /dev/mapper/asdf. Не потрібно змінювати розміри криптовалютних контейнерів. (Пропустіть це, якщо, звичайно, у вас немає зашифрованого розділу.)
  • vgchange -aay активувати всі логічні томи, щоб ви могли працювати з ними.
  • mkdir asdf; mount /dev/mapper<VG>-<LV> asdfа потім df -hперевірити розмір вашої файлової системи перед зміною розміру.
  • umount asdf тому його знову відключають.
  • resize2fs -M /dev/mapper/<VG>-<LV>.
  • mount /dev/mapper/<VG>-<LV> asdf; df -h щоб перевірити, наскільки великою є ваша файлова система.
  • Зробіть LV на 1 ГБ більшим, ніж файлова система. Швидше за все, цього буде недостатньо. Зробіть його ще більшим, ніж це, якщо ви можете собі це дозволити, інакше Linux скаже вам після перезавантаження, що він не працюватиме. НЕ РОБИТИ перевірку FS, коли буде запропоновано, перезавантажте програму liveisk і почніть знову, дані не втрачаються, якщо це було так.
  • Зробіть PV на 1 ГБ більшим, ніж НН.
  • Зробіть розділ на 1 ГБ більшим від PV. 100M теж має бути достатньо, оскільки LVM створює розширення розміром 4М (це дещо схоже на блоки на жорсткому диску безпосередньо, але для LVM), і ви хочете, щоб він не опускав останню міру, роблячи розділ занадто малим. Але, як я вже сказав, слід . Не розраховуйте все, просто відрегулюйте речі та виправте їх, якщо вони зламаються. Зрештою, це Linux, це дозволимо вам зробити це.

Зробити речі більшими, ніж вони повинні бути, тому вам не доведеться перезавантажувати так часто.

Щоб легко розпізнати , що це те , що з допомогою LVM, завжди використовувати ім'я хоста як ім'я для VG і точки монтування ( root, swap, var...) для ЛВ при створенні настройки LVM, якщо ви вже не зробити. Це загальна підказка, а не те, що потрібно робити для будь-якого з вищезазначених кроків.


1

GParted зробив цю роботу для мене (тестувався на Kali Linux USB Live v2.1), виконавши:

Device --> Create Partition Tablet --> Type MSDOS

Спочатку видаліть усі розділи.

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