чи можливо одночасно монтувати 2 томи LVM, які є точними копіями один одного (однакові UUID)?


11

Я клонував (використовуючи dd) жорсткий диск в живій системі на декілька резервних жорстких дисків. Корінний розділ в живій системі - це об'єм LVM. Резервні копії призначені для заміни оригіналу для оригіналу, і це означає, що вони повинні мати той самий UUID, що і головний.

Швидке запитання: чи можна встановити один із резервних HD-дисків на живій системі? Коли я намагаюся це зробити, LVM зрозуміло збивається з цього приводу через однакові UUID та назви груп томів. Після натяку, знайденого в [цій відповіді] [1], щоб спочатку перейменувати оригінальну групу LVM, я спробував:

  1. підключення зовнішньої резервної копії HD до порту USB

  2. працює (зверніть увагу, що рядок "test" - це назва групи в цій системі)

# vgrename test test-live
Volume group "test" successfully renamed to "test-live"
vgscan --mknodes
Reading all physical volumes.  This may take a while...
Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0
Found volume group "test" using metadata type lvm2
# vgchange -ay
Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0
2 logical volume(s) in volume group "test" now active

У цей момент я б очікував, що зможу отримати доступ до окремих логічних томів у /dev/test/. Біг lvdisplayпродукує.

Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0

  --- Logical volume ---
  LV Name                /dev/test/root
  VG Name                test
  LV UUID                UuKUH3-yzPo-CbOz-tU4B-W6om-qdMn-0XSNZU
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                126.48 GiB
  Current LE             32378
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

  --- Logical volume ---
  LV Name                /dev/test/swap_1
  VG Name                test
  LV UUID                OGJhJu-QByo-6AzG-sk1x-jh3e-dU9L-sHk91t
  LV Write Access        read/write
  LV Status              available
  # open                 2
  LV Size                3.90 GiB
  Current LE             999
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:2

Однак його /dev/test/взагалі не існує, і тому я не можу отримати доступ до логічних томів на /dev/test/rootі /dev/test/swap_1як запропоновано lvdisplay.


Час думки: Якщо у вас є запасні диски, ви дійсно повинні дивитись на те, як їх розмістити в конфігурації RAID (якщо навіть програмне забезпечення RAID, щоб заощадити якусь монету) замість того, щоб підключити таке рішення, як це. RAID1 або навіть RAID5 - це хороші варіанти.
Гаррет

Відповіді:


0

Вся суть UUID полягає в унікальному визначенні чогось, і те, що ви намагаєтеся зробити, робить їх не унікальними. Я дуже сумніваюся, що це можливо. Я грав разом із тим, pvchange -uщоб змінити UUID дубльованого ПВ, але операція завжди провалювалася.

Якщо вам дійсно потрібно встановити резервні копії на живому хості, я пропоную створити резервні копії LV окремо (тобто створити нові PV, VG та LV на резервному пристрої та dd кожен LV окремо).


17

Якщо ви хочете встановити lv's з клонованого диска, я знайшов цей корисний метод тут http://www.linuxquestions.org/questions/linux-hardware-18/unable-to-change-uuid-of-cloned-drive- пристрій-зліва-відкрито-4175470893 /

vgimportclone -n orignalvgname_clone   /dev/sdx [/dev/sdy....]

sdx, sdy .. - клоновані диски, які складають vg.

vgchange -ay orignalvgname_clone

Після цього ви зможете змонтувати lvs з клонованого диска.


4
Це має бути прийнятою відповіддю. Працювали для мене, дякую!
neuviemeporte

Це працює, і vgimportclone робить те, що підказує його назва. У моєму випадку я повинен був вказати всі диски та розділи, на яких складається vg- наприклад, vgimportclone -n orignalvgname_clone /dev/sdx /dev/sdx2 /dev/sdx5але очевидно, що це може сильно відрізнятися від конкретного випадку.
Jey DWork

3

Відповідь trekkerboy / modonnell @ linuxquestions є найпростішою, використовуйте vgimportclone.

Зауважте також, що після створення клону ви повинні його активувати vgchange -a y newvgname, і вам потрібно очистити вузли пристрою oldvgname dmsetup remove /dev/oldvgname/*.

Для довідки, далі - більш ручний метод, який, мабуть, нагадує підмножину того, що можна прочитати у джерелі vgimportclone.


Ви можете це зробити, якщо вам вдасться спочатку тимчасово відключити управління оригінальною копією, додавши в devicesфільтр шаблон, що відповідає оригіналу lvm.conf. Наприклад, якщо ви клонували /dev/sdxв /dev/sdy, ви повинні тимчасово додати /dev/sdxв filterв devices { ... }розділі.

Оригінальні пристрої залишатимуться в Інтернеті, але інструменти LVM їх ігнорують. Вмонтовані файлові системи на них залишаться змонтованими та працездатними, що не є щільно поєднаним з управлінням LVM.

Після встановлення фільтра зробіть новий vgscan, щоб переконатися, що дублікати та лише вони зараз знаходяться під управлінням LVM. Ви можете переконатися , що ви бачите дублюючі /dev/sdyпристрої , наприклад , через pvs.

Потім зробіть:

vgchange -a n originalvgname

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

pvchange -u physicaldevice
vgchange -u originalvgname

Це дасть нові UUID для дублікатів.

vgrename originalvgname newvgname

Це дозволить перейменувати дублюється групу томів.

Після цього ви можете вийняти фільтр lvm.confі повторно переглядати, і обидва набори пристроїв LVM будуть видні під різними назвами та UUID.

Крім того, якщо ви насправді не зацікавлені у збереженні оригінального імені VG та PV / VG UUID, ви можете утилізувати їх замість цього, пор. /superuser/256061/lvm-and-cloning-hds


"Оригінальна копія" - це резервна копія чи резервне джерело (яке є в прямому ефірі)? Тоді ви пропонуєте деактивувати живу систему та змінити її UUID, правильно?
катпноз

1
@catpnosis Резервне джерело, але лише його управління . Все залишається в Інтернеті, але інструменти LVM тимчасово перестають бачити оригінал. Потім інструменти LVM виявляють дублікати і можуть їх змінити, тобто змінювати свої UUID. І як тільки ви закінчите, ви дозволяєте їм бачити все, що потім спрацює, оскільки UUID більше не стикаються.
Йосип Родін

Дякую. Це цікавий підхід. Важко зрозуміти, хоча. "Це деактивує групу гучності на дублюючих пристроях" - але насправді?
капноз

1
@catpnosis його активується попереднім vgscanавтоматично, це просто означає, що в цей момент інструменти LVM бачать дублікати (а не оригінал). Вся справа в тому, що ви не повинні мати їх активними обома одночасно - і тим, і іншим, не обом. Як тільки ти потрапиш у стан, де ти бачиш лише дублікати, ти можеш працювати з ними.
Йосип Родін

0

Я зіткнувся з цією проблемою лише вчора. У мене є файлова система (LVM (MD (sda, sdb, sdc-синхронізація лише на тиждень)) в Linux та потрібна для доступу до старих даних на sdc.

Я дещо вирішив цю проблему, приєднавши резервний диск (SDC) до VM. Це безпечна операція, якщо я приєднаю диск з "qemu ... -drive file = / dev / sdc, readonly" (або використовую параметр знімка для конфігурації копіювання під час запису).

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