Чому існують два різних значення розміру накопичувача та як їх узгодити з пристроєм-картографом та LVM?


13

У мене приєднаний накопичувач на 1 ТБ через USB. Він містить фізичний об'єм LVM, що заповнює весь пристрій (без будь-якої таблиці розділів). Коли я спробував розширити логічний об'єм за допомогою всього ПВ, пристрій-картограф почав скаржитися, що розділ, виділений LVM на PV, більший, ніж у пристрою. Повідомлення про помилку від пристрою-картографа (як показано dmesg) повідомляє про розмір 1953320367 [дм] секторів:

device-mapper: table: 254:0: sdf too small for target: start=1821353984, len=132169728, dev_size=1953320367

Але LVM створив PV з 238467 фізичними розширеннями , що становить 1953521664 [lvm] секторів (що приблизно на 100 Мб більше):

$ pvdisplay /dev/sdf
  --- Physical volume ---
  PV Name               /dev/sdf
  VG Name               apu-vg1
  PV Size               931.51 GiB / not usable 1.71 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              238467
  Free PE               100
  Allocated PE          238367
  PV UUID               LrKDDW-4dXz-kDgh-CK78-OWhY-4sCH-rKT0e4

Тепер, якщо я запускаю hdparm -gIна пристрої, я бачу два значення для розміру пристрою. Під геометрією є те саме значення, яке повідомляється пристроєм-картографом, як і розмір пристрою. Але у секторах , адресованих користувачеві LBA48, значення 1953525168 [lba], що менше, ніж на один PE більше, ніж розмір комбінованих PE в PV. Це змушує мене думати, що це значення, яке бачить LVM:

$ hdparm -Ig /dev/sdf

/dev/sdf:
 geometry      = 121588/255/63, sectors = 1953320367, start = 0

ATA device, with non-removable media
          Model Number:       ST1000LM024 HN-M101MBB                  
          Serial Number:      S2RUJ9BC702524      
          Firmware Revision:  2AR10001
          Transport:          Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
          Used: unknown (minor revision code 0x0028) 
          Supported: 8 7 6 5 
          Likely used: 8
Configuration:
          Logical         max     current
          cylinders       16383   16383
          heads           16      16
          sectors/track   63      63
          --
          CHS current addressable sectors:   16514064
          LBA    user addressable sectors:  268435455
          LBA48  user addressable sectors: 1953525168
...

Тепер до моїх запитань:

  • Чому існують два різних значення розміру пристрою, які використовуються різними частинами ядра?
  • І як я впорядкую / виправлюю цю ситуацію, щоб LVM не робив ПВ, які перевищують простір, до якого готовий / спроможний отримати доступ до пристрою-картографа?

яка точна команда, яку ви виконуєте, коли ви розширюєте? На голову ННМ зазвичай виділяється 2 Мб, що приблизно відповідає розміру вашої невідповідності.
Братчлі

7
Менший розмір, про який повідомляється, hdparm- це найбільше число, яке кратне 255 * 63 секторам і менше фактичного розміру. Це обмеження пов'язане з форматом циліндр / головка / сектори з 30-річного інтерфейсу BIOS. Новий інтерфейс LBA48 може чудово повідомити про розмір вашого диска. Я поняття не маю, чому Linux використовує розмір CHS ні для чого.
Жил 'ТАК - перестань бути злим'

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

1
@JoelDavis Я поширив VG за допомогою звичайної vgextend <vg-name> /dev/sdf. LVM робить саме те, що я очікую. pvdisplayнавіть говорить про те, що 1,71 МіБ - це unusabe, що є саме величиною різниці між [lvm] та [lba].
Фейермурмель

2
@Feuermurmel, будь ласка, відредагуйте своє запитання, щоб надати додаткову інформацію - не використовуйте коментарі.
Гунтберт

Відповіді:


1

Ключова проблема тут - ваша Free PEцінність. Зверніть увагу, як сказано, що лише 100 розширень безкоштовні? Це означає, що ви не зможете продовжити його. Якщо ви робите vgscan, pvscan, а потім vgdisplay (також vgs), ви, ймовірно, побачите, що ваш пристрій вже є частиною vg (і, ймовірно, lv (s)), тому розширення не є безкоштовними.

Чи можете ви надати висновок із:

vgscan;pvscan;vgdisplay;vgs

ви повинні мати можливість отримати додаткові 400 Мб залежно від розміру ваших розширень і скільки безкоштовних.


Так, цей ПВ вже має 238367 ПЕ, виділених на НН. Ці 100 розширень безкоштовні, тому що я зменшив LV після того, як пристрій-картограф поскаржився на те, що запитуване LVM запит не виходить за межі. Моя проблема полягає в тому, що PV, створений LVM, насправді більший, ніж фізичний диск. Цей диск вже не є частиною системи, тому я не можу надати потрібний вихід.
Feuermurmel
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.