fdisk - мені це потрібно чи я можу зробити файльну систему безпосередньо?


9

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

Якщо я маю намір використовувати весь диск в цілому, чи все-таки це мені потрібно?

1) створити fdisk і створити первинний розділ, який набирає розмір всього диска або

2) я можу просто йти вперед і mkfs.ext4, не роблячи жодного fdisk?

3) А чому ->

Відредаговано -> Прочитавши всі коментарі (деяких так і ні), я думаю, що буде добре, якщо хтось міг би вказати на мене, що насправді робить fdisk? так що я можу зрозуміти більше того, для чого насправді він потрібен у порівнянні з тим, якщо ми цього не робили.

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

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

Відповіді:


5

Ні, вам це не потрібно . Ваш диск і файлова система будуть працювати нормально без таблиці розділів. Деякі старі BSD навіть робили це за замовчуванням, якщо ви вибрали небезпечно виділений .

Однак настійно рекомендується з причин порівняння.


Дещо докладніше:

Ви можете запустити mkfs.ext4 безпосередньо в / dev / sdb. Це спрацює. Потім ви зможете це встановити без проблем. ( mkfs.ext4 -F -F /dev/sdb).

Ви можете налаштувати завантажувальний диск таким чином. Для завантаження все ще знадобиться деякий код. Що означає, що вам потрібно пропустити перший біт дисків. (наприклад, простір, який класично використовується MBR та кілька традиційних секторів поза ним). Це технічно досі не використовує MBR, хоча ви втрачаєте еквівалентний простір.

Однак для будь-яких сучасних установок ці декілька секторів є невеликою часткою потужності приводу. Я для цього рекомендую використовувати GPT (або в старовинних системах MBR). Але можна обійтися і без.


Здається, що mkfs.ext4 приймає параметр -F, щоб змусити створювати файлову систему, навіть якщо, здається, ціль не є розділом, або навіть якщо цільовий пристрій здається встановленим! Я думаю, що це вказує на властиві цим ризикам ...
David W

Домовились. І "цей параметр повинен бути вказаний двічі" є вторинною обережністю.
Геннес

@Hennes Я оновив свою первісну публікацію, сподіваюсь, що Ви подивитесь
Noob

1
Порівняйте fdisk з написанням індексу для книги. Люди очікують індексу і плутаються, коли його немає. Книга без покажчика та з однією історією / главою ще працюватиме.
Hennes

1

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


навіть якщо я мав намір використовувати сховище як необроблений пристрій? мені ще потрібен fdisk? я читав про fdisk-створення розділу, але не розумію, для чого це потрібно
Noob

1
Якщо я передаю вам диск із просто необробленими байтами на ньому та жодної іншої інформації, як би ви його інтерпретували, щоб отримати дані з нього? Ви не могли. Це надмірне спрощення, але саме це робить таблиця розділів. Там написано "Ось де дані зберігаються на диску (місце початку / зупинки / циліндр / трек), і ось як це організовано (файлова система)"
David W

Власне, ти міг би. Візьміть дискету. Ми припускаємо один розділ / том. Ми вказуємо використовувану файлову систему (оскільки у нас немає MBR, щоб сказати, для чого використовується, нам потрібно вручну вказати це або ввести його в / etc / fstab) і прочитати інформацію для файлового файлу. Класичний приклад: дискети та FAT12.
Геннес

1
У стандартній таблиці розділів немає інформації, яка не є, або її легко можна було б скласти, вже в записі завантаження томи файлової системи. Будь-яка залежність програмного забезпечення на таблиці MBR / розділів для належного розпізнавання та / або завантаження з файлової системи є абсолютно штучною.
kreemoweet

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

0

Ви можете створити файлову систему на голому диску, але це рідко працює. Деякі маятники організовані так. Але для жорсткого диска ви цього не хочете.

Якщо це буде ваш основний / єдиний привід, він взагалі не буде завантажуватися, якщо створити його як такий. Що робить BIOS - це прочитати перший сектор накопичувача та виконати його (він же перескочить на перший байт). Ви справді не хочете виконувати метадані файлової системи? На щастя, ви цього не зробите, оскільки BIOS містить відмову - останні два байти цього сектора повинні бути 0x55 0xaa, щоб BIOS вважав накопичувач завантажувальним. А у вас система UEFI - це ще гірше, оскільки для роботи UEFI необхідний чіткий розділ FAT.

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

Потім знову це іноді можливо зробити, але в дуже хаком чином, вимагаючи заплутані знання кількох файлових систем на диску організації. Я колись бачив опис зображення, яке може бути записане на завантажувальний компакт-диск, на завантажувальний USB-накопичувач або навіть завантажений у старших Mac, але це було на рівні "Якщо я покладу довжину файлової системи на xxx, коли вона виконує інша архітектура, яку він виконує як нешкідливе порівняння реєстру ".


Розширена інформація на прикладі pendrive: також використовується на дискетах та мандрівниках без MBR, де їх часто називають "формат superfloppy".
Геннес

@Torinthiel, я оновив свій початковий пост, сподіваюсь, що ти подивишся
Noob

-1

Навіть якщо ви плануєте використовувати весь диск, його все одно доведеться розділити. У цьому випадку з розміром, розміром з самим диском (майже, щонайменше. Таблиця розділів займає деяке місце. Детальніше про це див. Нижче).

Коли я знайомлю людей з поняттям розділів і файлових систем людям, які зазвичай просто думають про "жорсткі диски, порожні проти повних", це таке: жорсткий диск - це будівля, а перегородка - фактична кімната. Ви форматуєте розділ з певною файловою системою, а потім робите його корисним, а в аналогії будівлі це відповідає оголошенню типу кімнати, наприклад кухні проти спальні (Іншими словами, як ним користуватися).

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

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

Оновлення, що відображає ваше редагування запитання: що робить fdisk, це дозволяє вибрати певні аспекти розділу, наприклад, розмір, тип та фізичне розташування, як я впевнений, ви вже знаєте. Тоді fdisk - це перекласти їх у запис таблиці розділів. В основному, він бачить, що таблиця розділів оновлюється "списком" усіх розділів на диску, кожен елемент у списку вказує, який розділ можна знайти, де і який тип він є. Це так, що операційна система знає, де отримати доступ до даних на розділах.


1
Ні. Це не потрібно. Я користувався без. Це все ж дуже рекомендується, але можна обійтися і без цього.
Геннес

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