November 2019

S M T W T F S
      12
34 5 678 9
10111213141516
17181920212223
24252627282930

Style Credit

Expand Cut Tags

No cut tags
Sunday, March 13th, 2011 10:03 am

В компьютере есть два SATA-диска: небольшой диск A (относительно небольшой, подключенный как sda, на нём живут основные системные разделы) и B (sdb, побольше, со всякой остальной фигнёй – /home, /usr/local/, etc).

В порядке апгрейда закуплено ещё два диска, C и D, одинакового размера, большие.

Из дисков C и D предполагается с помощью mdadm построить RAID1 (зеркало), перелить на него содержимое диска B, на диск B перелить содержимое диска A, а сам диск A удалить.

Дополнительное условие: в наличии пока есть только два SATA-шлейфа. В связи с чем RAID1 придётся временно построить из одного диска C.

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

Оригинал этой записи. Комментировать можно тут или там.

Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме

Sunday, March 13th, 2011 12:59 pm (UTC)
насчёт конкретных команд (упомянутого параметра "missing") у меня только смутное представление (хоть и уверен что подобное предусмотрено в RTFM), но насчёт порядка действий я бы попытался сделать так:

1. временно откладываем [юзерские] данные на диске В в сторонку, вместо него к шлейфу подключаем диск С. Делаем из него degraided RAID1 с местом под данные (под копию диска В), а также любым способом делаем на нём root-fs -- хоть крипто-том, хоть игра с динамически переделываемыми партишинами -- что нам мешает переразбивать разделы на RAID-ах с сохранением данных?

Итак у нас есть почти пустой degraded RAID1 с загружабельным линуксом (копией диска А)

2. отключаем диск А, подключаем диск В, при этом грузимся с диска С. Копируем данные с В на С.

2а. (опционально) отключаем В, подключаем Д, синхронизируем С с Д, снова "ломаем" RAID1 и откладываем диск Д в сторонку до лучших времён (покупки шлейфа).

3. дилаем на диске В системный раздел вместо юзерских данных (копируем его с диска С).

4. грузимся с диска В и убиваем на диске С root-fs. Если надо -- растягиваем юзерский раздел на весь диск С без потери данных (если мы root-fs делали отдельным разделом). Но "а-ля крипто-том" в таких случаях наверное удобнее

Теперь у нас система на диске В и данные на degraded RAID1 С, что и требовалось.

Возможно моя схема оказалась бы проблемной, но начал бы я именно так.
Sunday, March 13th, 2011 01:12 pm (UTC)
"3. дИлаем..."

опечатка по Фрейду. ;)
Sunday, March 13th, 2011 01:28 pm (UTC)
Неплохой вариант, вдобавок не требующий дополнительных устройств типа загрузочной флешки или CD.
Sunday, March 13th, 2011 02:57 pm (UTC)
Кстати, как вариант, если на юзер-данных юзается несколько разделов, типа /home/, /usr/local/ и прочее таки на отдельных разделах, тогда п.1 ещё проще:

1. диск С разбиваем с перспективой на копию диска В, но один раздел (типа который под /home или любой другой) временно отдаём на root-fs, а соотв. данные с диска В копируем абы куда на диске С -- всё равно предполагается что места на нём хватает. :)

2. без изменений

3. без изменений

4. root-fs переносим с раздела на диске С на диск В. Освободившийся раздел на диске С используем по самому первоначальному предназначению (в нашем примере под /home)
Sunday, March 13th, 2011 02:59 pm (UTC)
...в этом варианте мы обходимся без "а-ля крипто-том" и без ресайза разделов с живыми данными.