Как использовать перемещение пространства из /home lvm в root lvm

У меня есть root lvm с 10 ГБ, большая часть которого используется, и /home lvm с 877 ГБ. Я хочу изменить размер /home lvm, чтобы освободить место, а затем выделить его для root. Мне не ясно, могу ли я динамически изменять размеры разделов во время монтирования, но, насколько я могу судить, это невозможно. Кроме того, насколько я могу судить, я не могу размонтировать / home или root, если не использую спасательный диск.

Обычно, если бы я хотел изменить размер раздела диска, который не мог бы быть размонтирован, я бы использовал gparted live disk. Но, насколько я знаю, gparted работает только с "настоящими" разделами и не может работать с разделами lvm. Итак, как лучше всего получить доступ к размонтированным разделам и изменить их размер?

Спасибо,

Морис

1 ответ

LVM делает это довольно легко и просто. lvreduce придется размонтировать файловую систему, которую вы хотите сжать, но расширяемая файловая система может сделать это во время монтирования.

Шаги: 1 резервное копирование - 2 уменьшение home lv - 3 проверки - 4 растут root lv - 5 проверок - 6 настроек резервного копирования

Нужны только шаги 2 и 4 - остальное - просто хорошая практика. Я также рекомендую регистрировать весь процесс, запустив script,

Примечание. Группа томов в выходных данных примера называется tetrad (так же, как имя хоста), вам нужно будет ввести имя вашей группы томов в команды. Пример выходных данных был получен из архивных журналов, которые могут быть получены из разных номеров версий команды resize2fs.

  1. Резервное копирование (по крайней мере, ваша текущая конфигурация). Скопируйте резервную копию куда-нибудь за пределы изменяемой группы томов.

    root@tetrad:~/Documentation/LVM# vgcfgbackup -f tetrad-vgcfg-2014-10-09-before-2
    
  2. Уменьшить дом лв

    root@tetrad# lvresize --resizefs -L -35G /dev/mapper/tetrad-export

    resize2fs 1.42 (29-Nov-2011)
    Resizing the filesystem on /dev/mapper/tetrad-export to 23955456 (4k) blocks.
    
    The filesystem on /dev/mapper/tetrad-export is now 23955456 blocks long.
    
    Reducing logical volume export to 91.38 GiB
    Logical volume export successfully resized
    
  3. Отметьте (необязательно), резервное копирование текущего состояния, как в шаге 1. Вы заметите, что шаг 4 делает резервную копию в /etc/lvm/backup/<vgname>, но поскольку он находится в изменяемой файловой системе, вы хотите, чтобы ваша копия была где-то еще.

    root@tetrad# pvs
    PV         VG     Fmt  Attr PSize   PFree 
    /dev/sda3  tetrad lvm2 a-   201.14g 37.76g
    
  4. Расти корень лв

    root@tetrad:~/Documentation/LVM# lvextend -L +2G /dev/mapper/tetrad-root -r -v
        Finding volume group tetrad
        Executing: fsadm --verbose check /dev/tetrad/root
    fsadm: "ext4" filesystem found on "/dev/mapper/tetrad-root"
    fsadm: Skipping filesystem check for device "/dev/mapper/tetrad-root" as the   filesystem is mounted on /
        fsadm failed: 3
        Archiving volume group "tetrad" metadata (seqno 27).
      Extending logical volume root to 26,00 GiB
        Found volume group "tetrad"
        Found volume group "tetrad"
        Loading tetrad-root table (252:0)
        Suspending tetrad-root (252:0) with device flush
        Found volume group "tetrad"
        Resuming tetrad-root (252:0)
        Creating volume group backup "/etc/lvm/backup/tetrad" (seqno 28).
      Logical volume root successfully resized
        Executing: fsadm --verbose resize /dev/tetrad/root 27262976K
    fsadm: "ext4" filesystem found on "/dev/mapper/tetrad-root"
    fsadm: Device "/dev/mapper/tetrad-root" size is 27917287424 bytes
    fsadm: Parsing tune2fs -l "/dev/mapper/tetrad-root"
    fsadm: Resizing filesystem on device "/dev/mapper/tetrad-root" to 27917287424 bytes (6291456 -> 6815744 blocks of 4096 bytes)
    fsadm: Executing resize2fs /dev/mapper/tetrad-root 6815744
    resize2fs 1.42.9 (4-Feb-2014)
    Filesystem at /dev/mapper/tetrad-root is mounted on /; on-line resizing required
    old_desc_blocks = 2, new_desc_blocks = 2
    The filesystem on /dev/mapper/tetrad-root is now 6815744 blocks long.
    

Вы сделали Теперь давайте просто полюбоваться результатами и сохранить резервную копию текущего состояния.

  1. Проверить с pvs, lvs
  2. Резервное копирование конфигурации и сохранение копии в отдельной файловой системе для безопасного хранения.
Другие вопросы по тегам