Як розділити диск на 22 ТБ?


33

У мене на диску 22 ТБ /dev/sdb. Як створити розділ 22 ТБ? Не дуже піклується про файлову систему - ext4або zfsце добре.

Запуск CentOS 6.2 - розділ буде використовуватися як дамп даних. Лише один потік даних, тож прискіпливий / вибагливий до того, яка файлова система зараз насправді не викликає занепокоєння. Диск сформований з приводних SAS-дисків 12x2TB і контролера Dell Perc.

Я просто хочу розділ 22 ТБ.


1
ще кілька відомостей були б корисні. яку ОС ви використовуєте? яку виставу ви очікуєте чи потрібно отримувати від неї? що є основним обладнанням? це вже рейдовий набір? чи має це надмірність? вам потрібні додаткові функції захисту даних zfs?
Тім Кеннеді

3
Які спроби поки не вдалися? fdisk, cfdisk?
Нілс

Відповіді:


44

Найпростіше рішення - використовувати розділ GPT , 64-бітну версію Linux та XFS :

  • GPT необхідний тому, що створена та створена компанією MSR -DOS таблиця розділівfdisk обмежена двома дисками TiB. Отже, вам потрібно використовувати partedіншу програму розділення, відому GPT fdisk. ( gdisk, gpartedІ т.д.)

  • 64-бітове ядро ​​необхідне, оскільки 32-розрядні ядра обмежують вас у файлових системах менше, ніж ви просите. Ви або досягаєте обмеження розміру на основі 32-бітових цілих чисел, або не зможете вирішити достатню кількість оперативної пам’яті для належної підтримки файлової системи.

  • XFS - не єдине рішення, але, на мою думку, це найпростіший варіант для систем RHEL.

    Ви не можете використовувати ext4 для цього в RHEL 6. Хоча файлова система була розроблена для підтримки файлових систем 1 EiB , у версії, e2fsprogsвключеній до RHEL 6 та її похідних , існує штучний обмеження обсягу 16 TiB . І Red Hat, і CentOS називають це у своїх документах. (Межа ext4 16 TiB значно підвищена в RHEL від 7 до 50 TiB.)

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

    Виключивши дві обрані вами файлові системи, я пропоную XFS. Це файлова система за замовчуванням у RHEL 7, вона була доступна у якості підтримуваної файлової системи у всіх версіях RHEL 6 та була підтримана до наступних версій RHEL 5 після виходу RHEL 6.

Ось процес:

  1. Перевірте, чи mkfs.xfsвстановлено ви , запустивши його без аргументів. Якщо його немає, встановіть інструменти XFS userland:

    # yum install xfsprogs
    

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

  2. Створіть розділ:

    Оскільки ви кажете, що ваш об'єм 22 TiB увімкнено /dev/sdb, команди для parted:

    # parted /dev/sdb mklabel gpt
    # parted -a optimal -- /dev/sdb mkpart primary xfs 1 -1
    

    Це змушує зайняти весь обсяг за допомогою одного розділу. Насправді він ігнорує перші 1 Мб обсягу, щоб досягти вирівнювання в 4 Кб, необхідного для отримання повної продуктивності з жорстких дисків розширеного формату та SSD .

    Ви можете пропустити цей крок і відформатувати весь том за допомогою XFS. Тобто ви б використали /dev/sdbу наведеному нижче прикладі замість /dev/sdb1. Це дозволяє уникнути проблеми вирівнювання сектору. У випадку з томом, який бачитиме лише ваша ОС на базі Linux, про недоліки, про які варто говорити, немає, але я застерігаю цього не робити на знімному або внутрішньому томі в багатозавантажувальному комп'ютері, оскільки деякі Операційні системи (наприклад, Windows і macOS) пропонують відформатувати жорсткий диск без розділів для кожного разу, коли він з’явиться. Розміщення файлової системи на розділі вирішує це.

  3. Відформатуйте розділ:

    # mkfs.xfs -L somelabel /dev/sdb1
    
  4. Додати /etc/fstabзапис:

    LABEL=somelabel    /some/mount/point    xfs     defaults   0 0
    
  5. Гору!

     # mount /some/mount/point
    

Якщо ви хочете йти вниз по LVM шлях, вищевказані кроки в основному тільки більш докладно варіант другого набору команд користувача bsd«s відповідь нижче . Ви повинні виконати його перший набір команд перед наведеними вище.

LVM пропонує певні переваги при вартості складності. Наприклад, ви можете пізніше "виростити" групу томів LVM, додавши до неї більше фізичних томів, тим самим зробивши простір для збільшення логічного обсягу ("свого роду", сортування), що, в свою чергу, дозволяє вам розробити файлову систему, що живе на логічній обсяг. (Подивіться, що я маю на увазі щодо складності? :))


4
Частина ZFS є дискусійною. Порт Linux пройшов довгий шлях з 2010 року і порівняно з XFS він має багато переваг
TheLQ

Що стосується GPT / MBR, чи не застосовується це лише тоді, коли він /bootє частиною /? MBR не має байдуже, наскільки великим він /є, якщо він повинен лише встановити невелике /bootправо? Я можу помилитися.
jonescb

1
@jonescb: Місце розташування /bootне має жодного відношення до обмежень MBR. Якщо вам потрібен розділ розміром понад 2 ТБ, ви не можете використовувати розділ MBR. Це є правдою, однак, що можна обійти відсутність підтримки BIOS для завантаження з GPT, поставивши /bootна меншому MBR-диск містить розділи. Після того, як ядро ​​створено, вам не доведеться турбуватися про обмеження BIOS, оскільки воно знає, як інтерпретувати таблицю розділів GPT. Якщо ваша машина базується на EFI, вам не потрібно займатися цим танцем, оскільки EFI розуміє GPT.
Воррен Янг

16

Як альтернатива іншим пропозиціям.
Вам взагалі не потрібно розділяти диск.
Можна просто створити групу томів з одним або кількома логічними томами .

pvcreate /dev/sdb
vgcreate data /dev/sdb
lvcreate --name dump -L '100%VG' data

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

mkfs.XXXX /dev/mapper/data-dump #<- XXXX can be ext4, xfs, btrfs, reiser
mount /dev/mapper/data-dump /mntpt

LVM - це в основному розширена форма розподілу. Безглуздо використовувати LVM, якщо ви просто збираєтесь створити один LV, використовуючи весь простір, тож ви можете просто просто mkfs безпосередньо на цілому дисковому пристрої.
psusi

4
відсутні інструменти LV для додавання знімків живих даних, зміна розміру, декілька копій метаданих; набагато гнучкіший, ніж простий FS на пристрої.
bsd

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

Я не рекомендував LVM у випадку цього індивіда, просто перерахував його як альтернативу "іншим" поділам, нерозбиваючим відповіді / рішення. Їй належить прочитати всі відповіді, продовжити власне дослідження, а потім вирішити, який спосіб дій найкраще відповідає її потребам.
bsd

3
Однією з переваг LVM, навіть якщо у вас є лише один LV - це дозволяє легко додавати сховище пізніше.
plugwash

6

Запитання до запитання: Ви запитували " як розділити диск на 22 ТБ", а потім у запитанні знову сказали, що ви просто хотіли розділ 22 ТБ. Тож це в першу чергу неоднозначності.

Якщо у вас вже є одноблочний пристрій, який може підтримувати 22 ТБ простору на ньому, то ви вже володієте цілим розділом 22 ТБ. Все, що вам потрібно, - це файлова система поверх неї, яка зробить пристрій підготованим і зручним для читання / запису в системних процесах. Більше того, вам потрібно мати ядро ​​Linux, що працює в 64-бітному режимі, з модулем / драйвером файлової системи, який підтримує і масштабує до 22 ТБ зростання даних, може обробляти входи та виходи управління даними на (одиничному) блоковому пристрої за допомогою легкість. Продуктивність - це зовсім інший вимір для цього. У такому випадку я б вирішив обрати XFSяк свою файлову систему з тієї причини, що це 64-бітна файлова система і здатна обробляти файлові системи розміром в мільйон терабайт. Він підтримує до 9 EXABYTES.

2^63  = 9 x 1018 = 9 exabytes 

Детальніше про XFS: http://oss.sgi.com/projects/xfs/

Якщо ви шукаєте для подальшого розділення величезного блочного пристрою розміром 22 ТБ, використовуйте gpartedдля того, щоб розділити пристрій на зручні розділи, а потім відформатувати їх за допомогою файлових систем, щоб зробити їх змонтованими.

Схоже, у вас є апаратний RAID-контролер, оскільки ви згадуєте, що у вас є DELL perc RAID-контролер - що означатиме це, ви повинні сказати, яку конфігурацію RAID (саме, який рівень RAID ви використовуєте?) І в більшості випадків, ви не збираєтеся отримати повний 22 ТБ місця для використання, я можу помилитися.


Я також збирався запропонувати xfs, але xfs_check займе великий об'єм пам'яті та довгий час для запуску w / 22G fs. Між фізичним та свопом потрібно перевірити щонайменше 32G, тобто якщо він коли-небудь піклується про те, щоб перевірити fs на "датчик даних" (що б там не було)
bsd

@bdowning, ви можете виправити це на 22T fs :)
Nikhil Mulley

Це рейд 22 Тб. 5. У мене багато дисків :)
LVLAaron

Це була помилка (мозок пердеть). У мене той самий пристрій, 10TB, з LSI Megaraid (така ж карта, як і Dell Perc)
bsd

@bdowning: xfs_checkдійсно використовує багато пам'яті, але на сторінці керівництва (8) зазначається: " Зауважте, що використання xfs_checkНЕ рекомендується. Будь ласка, використовуйте xfs_repair -nзамість цього для кращої масштабованості та швидкості. "
Крістіан Цюпіту

4

Під час використання ZFS вам не потрібно мати жодних розділів, просто створіть пул ZFS на пристрої 22 ТБ та файлову систему в ньому, якщо ви не хочете використовувати типовий і все. Якщо чомусь zpool не підтримує використання всього диска, спершу створіть мітку EFI та розділ, використовуючи весь доступний всередині простір, а потім використовуйте цей розділ для створення пулу.

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

Зауважте, що вам краще порушити конфігурацію апаратного RAID і використовувати дванадцять пристроїв як JBOD для створення пулу ZFS з використанням своїх можливостей програмного RAID. Якщо ваша мета - ефективність, ви можете відобразити пари дисків, і якщо ваша мета має максимальний простір, ви можете використовувати конфігурацію RAIDZ, RAIDZ2 або RAIDZ3. Це значною мірою поліпшить надійність ваших даних та відмовостійкість рішення.


1
Я знаю, що це стара відповідь на старе запитання, але .... якщо використовується ZFS, найкращим варіантом є знищення масиву RAID, налаштування контролера RAID для JBOD, щоб Linux бачив кожен окремий диск, а потім створював дзеркальні пари (менша ємність, велика продуктивність) або RAIDZ / Z2 / Z3 (більша ємність, низька продуктивність) з окремих дисків. Ви втратите велику частину переваги ZFS, якщо нанести її поверх поверх існуючих RAID, а не дозволити їм обробляти диски. Те саме стосується btrfs.
cas

@cas Ви напевно праві, відповідь оновлена. Я був зосереджений на питанні про ОП, хоча "як розділити диск на 22 ТБ", а не "що б ти порадив зробити з моєю конфігурацією диска".
jlliagre

3

Я не впевнений, що наразі це можливо за допомогою стандартної таблиці розділів. У стандартній схемі таблиці розділів обсяги обмежені 2 32 секторами. Маючи 512 байт на сектор, ви просто не вистачаєте чисел, щоб призначити секторам близько 2 ТБ.

Однак ви повинні зробити це, якщо ви використовуєте таблицю розділів GUID замість стандартної. Таблиці розділів GUID дозволяють розширювати обсяги в діапазоні zettabyte. Більшість дистрибутивів Linux завантажуються з тома GUID, однак жодної версії Windows (крім Windows 7 на EFI) наразі немає.

Деякі інструменти, такі як fdisk, не можуть працювати з томами GUID, проте інші інструменти, такі як GParted, можуть. Створюючи таблицю розділів GUID, ви повинні мати змогу створити об'єм за допомогою однієї з декількох загальних файлових систем, що підтримують обсяг такого розміру (наприклад, EXT4.)


На 32-бітній системі може бути. Мені вдалося створити розділ розміром 3,5 ТБ на 64-бітному сервері Ubuntu, підтримуваному версією 8.04 та новішої версії. Якщо говорити про cyberciti.biz/tips/…
Карлсон

Наскільки мені відомо, вам може не знадобитися навіть таблиця розділів для розміщення файлової системи на жорсткому диску. Плюс згідно з ОП, це не завантажувальний привід, а просто великий відвал.
Карлсон

3

Для таблиці ваших розділів, як згадувалося в іншому місці, GPT є прекрасним варіантом, оскільки він підтримує розділи розміром до 9,4 ZiB (9,4 × 10 21 байт), що значно перевищує все, що вам знадобиться 22 TiB.

Для вашої файлової системи в Linux BTRFS є прекрасною файловою системою "копіювання на запис":

  1. Його атрибут копіювання при записі означає, що жоден дублікат не зберігається двічі.
  2. Він оснащений стисненням на ходу, тому ваші дані запускаються через LZO або GZip перед тим, як записуватись і читатись з диска, економивши фізичний простір на диску.
  3. Він підтримує надмірність у конфігураціях RAID-1, RAID-10, RAID-5 та RAID-6 без накладних витрат.
  4. Він також підтримує RAID-0, якщо швидкість є суттєвою.
  5. Він також містить підтомники, знімки тощо.
  6. Практично всі завдання файлової системи виконуються в Інтернеті , тому зазвичай вам не доведеться деактивувати файлову систему для виправлення речей.

За функціями він схожий на ZFS, але є частиною основного ядра Linux.


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

1

Якщо ви не шукаєте надмірності або можливості резервного копіювання, можливо, ви можете:

mkfs -t ext4 /dev/sdb

4
Ви пробували? Я змінив, mkfsщоб вказати файлову систему
Karlson

1
@AaronJAnderson пояснення допоможе.
n0pe

Ця команда не працюватиме, якщо пристрій перевищує 2 Тб
LVLAaron

1
@AaronJAnderson Я створив об'єм 3,5 ТБ, reiserfsі ext3тому, якщо ext4претензії на максимальний розмір гучності 16 екбабайтів, я не бачу жодної причини, що 22 ТБ не буде працювати.
Карлсон

1
версія e2fsutils, що постачається з цією версією linux (і більшість інших на даний момент не підтримує більше 16 ТБ)
LVLAaron
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.