The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Удаление физического раздела из LVM
Монитор системы в Ubuntu 9.10 показал наличие проблемы с одним диском
(/dev/sdb), который включён в LVM.

Пришлось исключить этот диск из LVM вот таким образом, все операции опасны и выполняются под root.

   1. Сначала нужно определить на сколько следует уменьшить LVM
   2. Затем преобразовать файловую систему EXT3 в EXT2, и уменьшить
   3. Удалить физический том и извлечь его из VG
   4. Расширить LVM и EXT2 до предела
   5. Восстановить EXT3

Обязательно необходимо соблюдать последовательность выполнения операций

   pvs

   PV         VG      Fmt  Attr PSize   PFree
   /dev/sda5  mediavg lvm2 a-     6,24G    0 
   /dev/sda6  mediavg lvm2 a-    48,30G    0 
   /dev/sdb2  linux   lvm2 a-    32,49G 5,86G
   /dev/sdb5  media   lvm2 a-   200,20G    0 
   /dev/sdc1  media   lvm2 a-   596,17G    0

Видно, что LVM на media нужно уменьшить на более чем 200Gb, иначе не удасться извлечь /dev/sdb5

   vgs

   VG      #PV #LV #SN Attr   VSize   VFree
   linux     1   2   0 wz--n-  32,49G 5,86G
   media     2   1   0 wz--n- 796,36G    0 
   mediavg   2   1   0 wz--n-  54,54G    0

   lvs

   LV     VG      Attr   LSize   Origin Snap%  Move Log Copy% 
   ubuntu linux   -wi-a-   6,63G                              
   var    linux   -wi-ao  20,00G                              
   media4 media   -wi-a- 796,36G                              
   home   mediavg -wi-ao  54,54G

Первым делам нужно преобразовать EXT3 в EXT2 иначе resize2fs не сможет её
правильно уменьшить - удаляем журнал транзакций

   tune2fs -O ^has_journal /dev/media/media4
   fsck -n  /dev/media/media4

Уменьшаем EXT2, эта операция длительная, требует отмонтирования и для неё
необходимо достаточно свободного места

   resize2fs /dev/media/media4 590G

Если не удаётся отмонтировать то можно найти программу которая использует этот раздел вот так

   lsof -n|grep media

После уменьшения EXT2 необходима длительная проверка с помощью

   e2fsck -f /dev/media/media4

Затем уменьшаем LVM

   lvreduce -L-205G  /dev/media/media4

На предупреждение приходится отвечать Y

   lvs

   LV     VG      Attr   LSize   Origin Snap%  Move Log Copy% 
   ubuntu linux   -wi-a-   6,63G                              
   var    linux   -wi-ao  20,00G                              
   media4 media   -wi-a- 591,36G                              
   home   mediavg -wi-ao  54,54G

   vgs

   VG      #PV #LV #SN Attr   VSize   VFree  
   linux     1   2   0 wz--n-  32,49G   5,86G
   media     2   1   0 wz--n- 796,36G 205,00G
   mediavg   2   1   0 wz--n-  54,54G      0

Выводим его из vg

   vgreduce media /dev/sdb5

и если необходимо выводим физический раздел

   pvmove /dev/sdb5

В случае, если EXT2 не уместилась на одном PV эти команды не сработают и
придётся ещё раз уменьшать EXT2

Теперь осталось расширить LVM и EXT2 и конвертировать в EXT3

   lvextend -l +100%FREE  /dev/media/media4
   resize2fs /dev/media/media4
   tune2fs -j /dev/media/media4
 
23.11.2009 , Автор: ffsdmad , Источник: http://breys.ru/blog/464.html...
Ключи: linux, ext2, ext3, resize, lvm, disk / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Диски и файлы / Диагностика и Восстановление после сбоя

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, аноним, 17:09, 23/11/2009 [ответить] [смотреть все]
  • +/
    По-моему, resize2fs умеет правильно уменьшать ext3, без переконвертирования в ext2. Сам уменьшал недавно раздел на CentOS 5.3
     
     
  • 2.6, ffsdmad, 04:22, 24/11/2009 [^] [ответить] [смотреть все]
  • +/
    я пробовал, но затем ПОЧТИ всегда после уменьшения fsck выявлял миллион ошибок и складывал их в lost-found, но если вернуть LVM в до прежнего размера fsck всё восстанавливал
     
  • 1.3, VecH, 21:53, 23/11/2009 [ответить] [смотреть все]
  • +/
    А не целесообразней все же сначала прогнать fsck прежде чем журнал выносить?
     
     
  • 2.4, ponchick, 03:18, 24/11/2009 [^] [ответить] [смотреть все]
  • +/
    Не, resize2fs все равно потребует сначала выполнить fsck перед запуском, так что получим 2 запуска fsck.
     
  • 1.5, ponchick, 03:20, 24/11/2009 [ответить] [смотреть все]
  • +/
    Сначала выполняется pvmove, только потом vgreduce. А иначе с большой вероятностью умирает весь /dev/media/media4.
     
     
  • 2.8, ffsdmad, 14:13, 24/11/2009 [^] [ответить] [смотреть все]  
  • +/
    >Сначала выполняется pvmove, только потом vgreduce. А иначе с большой вероятностью умирает
    >весь /dev/media/media4.

    а можно подробнее?
    не понимаю каким образом vg и собсвенно lvm будет работать без pv

     
  • 1.7, dev, 10:19, 24/11/2009 [ответить] [смотреть все]  
  • +/
    >lsof -n|grep media

    man fuser

     
  • 1.9, avb, 20:29, 25/11/2009 [ответить] [смотреть все]  
  • +/
    По моему, слишком много лишних телодвижений, LVM тем и хороша, что позволяет переносить экстенты между физическими дисками без каких либо издевательств над файловой системой. Почему нельзя было просто добавить в систему другой диск, добавить его через pvcreate, затем перенести на него экстенты через pvmove и потом сделать pvreduce на сбойный диск после чего спокойно удалять последний из системы? А у вас как-то все наоборот да еще и манипуляции с ФС требуются.
     
     
  • 2.10, avb, 20:31, 25/11/2009 [^] [ответить] [смотреть все]  
  • +/
    прошу прощения, удалять диск надо командой vgreduce (не pvreduce)
     
  • 2.11, ffsdmad, 20:31, 25/11/2009 [^] [ответить] [смотреть все]  
  • +/
    >По моему, слишком много лишних телодвижений, LVM тем и хороша, что позволяет
    >переносить экстенты между физическими дисками без каких либо издевательств над файловой
    >системой. Почему нельзя было просто добавить в систему другой диск, добавить
    >его через pvcreate, затем перенести на него экстенты через pvmove и
    >потом сделать pvreduce на сбойный диск после чего спокойно удалять последний
    >из системы? А у вас как-то все наоборот да еще и
    >манипуляции с ФС требуются.

    буду рад почитать подробности
    самому пришлось по быстрому выводить сбойный диск, эстетничать было не когда

     
     
  • 3.12, avb, 21:13, 25/11/2009 [^] [ответить] [смотреть все]  
  • +/
    У меня была похожая ситуация, диск в lvm посыпался и надо было его срочно заменя... весь текст скрыт [показать]
     
     
  • 4.13, ffsdmad, 17:03, 26/11/2009 [^] [ответить] [смотреть все]  
  • +/
    вот это
    > 4. Добавляем физические тома в группы: vgextend linux /dev/sdd1, vgextend media /dev/sdd2.
    > 5.Переносим экстенты со старых физических томов на новые: pvmove /dev/sdb2 /dev/sdd1, pvmove /dev/sdb5 /sdd2. С помощью pvscan убеждаемся что sdb2, sdb5 пусты.

    интересно, но добавит не откуда было, там и так очень много данных пришлось расскидать в сети, места не было у ни кого

     
     
  • 5.14, avb, 21:26, 26/11/2009 [^] [ответить] [смотреть все]  
  • +/
    ну если купить диск на 250 гигабайт совсем было невозможно, то тогда согласен.
     
  • 1.15, sergei, 14:03, 28/11/2009 [ответить] [смотреть все]  
  • +/
    system-config-lvm не проще?
     
     
  • 2.16, locke314, 19:59, 20/03/2011 [^] [ответить] [смотреть все]  
  • +/
    Полтора года прошло с тех пор, а дистрибутивный system-config-lvm в убунте до сих пор ничего подобного не может.
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor