lvm - Переместить определенные данные с одного логического тома на другой

Система - это CentOS 7.

У меня есть логический том, смонтированный по адресу / .

При настройке сервера я забыл указать / home ] собственный логический том.

Теперь я хочу переместить все в / home на собственный логический том.

Как лучше всего это сделать? Есть ли в lvm встроенный способ сделать это?

Сейчас я могу действовать следующим образом:

Отключить его

  • Перевести сервер в автономный режим (чтобы веб-приложения работали на он недоступен во время операции)
  • mv / home / old-home (для предотвращения изменений файлов во время операции)
  • Перезагрузите сервер, чтобы любой процесс, имеющий открытый дескриптор файла в / home отказывается от дескриптора и не может начать, пока / home снова не станет доступным

Перемещение данных

  • Создать новый логический том (lv)
  • Смонтировать новый lv в / mnt / new-lv
  • cp -r все содержимое из / home в / mnt / new-lv
  • Установить новый уровень в / home

Проверка результата

  • Переключить сервер обратно в онлайн и протестировать приложение
  • Сохранить / old-home на время в качестве аварийной резервной копии, если все будет хорошо
  • rm -rf / old-home в какой-то момент позже

Но, может быть, есть менее ручной способ? Или способ избежать простоев?

редактировать 1: Добавьте новый уровень в / etc / fstab , чтобы он автоматически запускался вместе с системой.

редактировать 2: Рассматриваемая система представляет собой виртуальную систему в центре обработки данных нашего хостера, поэтому загрузка в альтернативных режимах ОС (например, rescue / minimal) невозможна.

0
задан 8 October 2019 в 10:02
1 ответ

Вот что я бы сделал:

  1. Создать LV для дома
  2. Отформатировать LV в нужной файловой системе
  3. Перезагрузить с Live или System Спасательный компакт-диск
  4. Mount /
  5. Переименуйте / home в / home-old
  6. Mount / home
  7. Внесите необходимые изменения в / etc / fstab
  8. Скопируйте данные с помощью rsync -av / home-old / * / home /
  9. Для проверки: diff -r / home-old / home

Если все в порядке, перезагрузите сервер на его собственную ОС, и все будет в порядке.

Ура, OJ

3
ответ дан 4 December 2019 в 12:14

Теги

Похожие вопросы