Переместить логический том на новый физический диск


14

У меня есть три логических тома в одной группе томов, использующих один физический том (весь существующий диск / dev / sda).

Теперь я хочу переместить один из этих логических томов на новый, более быстрый диск, т. Е. Из:

/dev/sda
    |-vg0-root → mounted to /
    |-vg0-foo  → mounted to /foo
    |-vg0-bar  → mounted to /bar

чтобы:

/dev/sda
    |-vg0-root → mounted to /
    |-vg0-foo →  mounted to /foo

/dev/sdb
    |-vg1-bar  → mounted to /bar

Насколько я понимаю, я не могу использовать pvmoveили vgsplitпотому, что в существующей группе томов только один физический том.

Какой хороший подход для достижения этой цели (желательно в Интернете, создание новой группы томов для нового диска не является обязательным)?


Я проверил много похожих вопросов, но, насколько я понимаю, они не описывают мою ситуацию. Дополнительный вопрос: является ли использование целого диска в качестве физического тома плохой идеей? Кажется, это решение сделало решение намного сложнее в моем случае.
htorque

2
Есть ли у вас особая причина, по которой вы не хотите добавлять новый физический диск в качестве физического тома в существующую группу томов?
Ульрих Шварц

Не за что. Если это облегчает задачу, новый диск также может быть частью vg0.
htorque

Ответы:


21

Одно решение для группы томов:

 pvcreate /dev/sdb
 vgextend vg0 /dev/sdb
 pvmove -n /dev/vg0/bar /dev/sda /dev/sdb

Решение для двух томов:

 pvcreate /dev/sdb
 vgcreate vg1 /dev/sdb
 lvcreate -l100%FREE vg1
 mkfs -t ext4 /dev/vg1/lvol1
 mount /dev/vg1/lvol1 /mnt

Теперь трудная часть, все виды деятельности ДОЛЖНЫ остановиться на /bar:

 cd /mnt ; ( cd /bat ; tar cf - * ) | tar xf -
 cd /
 umount /mnt
 mount /dev/vg1/lvol1 /bar

где

  • pvcreate стереть все данные на диске (и подготовиться к LVM)
  • lvcreate должен создать логический том lvol1, вы указываете имя lv с -n bar
  • Я использую синтаксис HP-UX для lv, возможно, вам придется использовать /dev/mapper/myvg-mylvсинтаксис

После того, как вы проверили данные в порядке, на новом месте:

  • вы можете смело удалять старые /bar
  • изменить, /etc/fstabчтобы использовать новый/bar

Ух ты, кажется, я совершенно неправильно прочитал справочную pvmoveстраницу. В этом случае я, очевидно, остановлюсь на решении с одной группой томов. :)
htorque

На самом деле, можно использовать vgsplitпосле pvmoveдля достижения решения двух групп томов немного легче (однако, логический том все еще должен быть деактивирован с помощью lvchange).
htorque

1
Полезность «pvmove» - очень веская причина использовать один VG вместо нескольких VG.
Тгарольд

1
Кажется, что vgreduceзатем можно использовать для удаления старого тома, если это является требованием (это было не для конкретного вопроса, но вопрос о перемещении всех томов, скорее всего, будет помечен как дубликат)
Герт ван ден Берг

Мой текущий опыт заключается в том, что в одном решении vg pvmoveтребуется -nфлаг для указания логического тома. Или это говорит об Physical volume /dev/vg0/bar not found Run `pvmove --help' for more information.ошибке. Страница руководства говорит то же самое. Могу ли я вставить его в пост?
Петер - Восстановить Монику
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.