Форум программистов, компьютерный форум, киберфорум
Ubuntu, Mint Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/25: Рейтинг темы: голосов - 25, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97

Ubuntu, LVM, Raid. Замена жестких дисков

08.09.2015, 17:27. Показов 5174. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужен совет.
Есть комп с двумя винтами. На нем организован зеркальный рейд и LVM. Хочу заменить винты на другие, большей емкости так, чтобы рейд и LVM расширились свободное пространство.
С чего начать? И можно ли вообще так сделать без переустановки.

С linux я на вы. Попробовал наивно клонировать диски на новые прогой HDClone (без каких-либо изменений).
Но с самого начала не срослось. На новых дисках Ubuntu Server не запускается.
Bash
1
2
error: no such disk
grub rescue>
Почему обычное клонирование не сработало? С виндой проходит все как по маслу...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.09.2015, 17:27
Ответы с готовыми решениями:

Как в ubuntu отключить авто монтирование жестких дисков?
Как в ubuntu отключить автомонтирование любых жестких дисков, т.е. чтобы при подключении нового hdd он не монтировался и запись на него...

RAID из 3-х жестких дисков
Доброго времени суток, подскажите пожалуйста как сделать зеркальный массив из 3-х жестких дисков?

Добавление жестких дисков в RAID
Здравствуйте! Задача стоит не из легких поэтому прошу Вашей помощи! Имеется сервер на котором необходимо поменять жесткие диски, НО! На...

17
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
08.09.2015, 22:38
kolin_k, Какой рэйд?
Если железный с поддержкой горячей замены, то можно и без остановки - меняете первый диск, ждете, пока восстановится рэйд, потом второй второй. После этого расширяете lvm, затем файловые системы.
Если фэйковый (как встроенные на системных платах), то должно получиться то же самое, но с остановками системы при замене дисков.
Если софтовый (mdadm), то опять же можно без остановки поменять диски по одному утилитой mdadm. Эта процедура описана в их вики.
Расширять lvm и файловые системы нужно в любом случае.
Цитата Сообщение от kolin_k Посмотреть сообщение
Почему обычное клонирование не сработало? С виндой проходит все как по маслу...
Я не знаком с HDClone. В случае железного или фэйкового рэйда используют специальные утилиты клонирования.
В случае софтового массива правильное выполненное обычное клонирование тоже должно работать.
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
09.09.2015, 11:22  [ТС]
Цитата Сообщение от gng Посмотреть сообщение
Какой рэйд?
Софтовый
Цитата Сообщение от gng Посмотреть сообщение
Если софтовый (mdadm), то опять же можно без остановки поменять диски по одному утилитой mdadm.
По причине поих скудных познаний в *nix, хочу совершить данное действие не на ходу, чтобы в случае чего, можно было вернуть старые диски на место. Сейчас тренируюсь на кошках. Собрал комп с двумя дисками, поставил Ubuntu Server + Raid + LVM.
Цитата Сообщение от gng Посмотреть сообщение
Я не знаком с HDClone.
А с какими знаком?
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
09.09.2015, 12:01
Цитата Сообщение от kolin_k Посмотреть сообщение
Софтовый
Цитата Сообщение от kolin_k Посмотреть сообщение
А с какими знаком?
В данном случае для копии образа дисков достаточно dd.
Но коль скоро это зеркало, имеются собственные средства (утилита mdadm) удалять диски из рэйда, добавлять новые, перестраивать и расщирять рэйд.
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
27.01.2016, 15:12  [ТС]
Наконец-то выбил у начальства новые диски. Полумертвые не давали полноценно тренироваться так сказать, на кошках.
Поставил систему на raid1. Система нормально загружается, если вынуть любой из винтов. Добавил третий винт. Скопировал на него таблицу разделов. Подключил к raid1. Сделал на него grub-install. Удалил один из старых винтов. Получилась опять система из двух винтов, которая нормально загружается, если вынуть любой из винтов. Взял еще один новый винт. Проделал все те же действия. Но вот после команды grub-install выскочила ошибка:
Bash
1
2
3
4
5
root@ubuntu:# grub-install /dev/sdb
ошибка: found two disks with the index 0 for raid md/0
ошибка: found two disks with the index 0 for raid md/0
ошибка: found two disks with the index 0 for raid md/0
Installation finished. No error reported.
1. Что это за ошибка? На сколько критичная (система продолжает успешно работать как с двумя новыми винтами, так и с любым одним винтом)?

2. После замены дисков на большего размера получилось:
/dev/sda1 (md0)
/dev/sda2 - расширенный
/dev/sda5 (md1)
/dev/sda6 (md2) (LVM том1)
/dev/sda7 (md3) (LVM том2)
свободное место
/dev/sdb1 (md0)
/dev/sdb2 - расширенный
/dev/sdb5 (md1)
/dev/sdb6 (md2) (LVM том1)
/dev/sdb7 (md3) (LVM том2)
свободное место
Теперь необходимо расширить sda2 и sdb2 (я так понял это разделы, которые содержат в себе 5,6,7). Затем как-то расширить 7-ые разделы вместе с md3. Затем как-то обновить LVM том. Помогите, пожалуйста. Пока не нашел решение, в поиске...

Добавлено через 3 часа 27 минут
Можно ли вообще менять разделы на горячую? Что-то всюду попадаются решения с помощью Live CD...
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
27.01.2016, 18:49
Цитата Сообщение от kolin_k Посмотреть сообщение
Можно ли вообще менять разделы на горячую?
Очевидно, что нет.
Выбивайте у начальства ещё деньги на аппаратный рэйд. :-)))
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
29.01.2016, 17:18  [ТС]
Создал на свободном месте новые разделы. На них создал новый рейд. Добавил его к LVM и получил кучу свободного места. Но на сервере (там, где мне предстоит это сделать), как оказалось, разделы созданы по другому.
Там уже существует по 4 первичных раздела и создать новый система не дает. Надо какой-то убить, создать расширенный и т.д. Так что простой вариант отпадает. Придется все таки расширять последние разделы на свободное место.
Т.е. sda4+sdb4 надо раздвинуть до конца диска, при этом на нем находится рейд1, который в свою очередь входит в том LVM, на котором находится информация.
1.Это можно сделать не перенося никуда информацию?
2.Это можно сделать штатными прогами, которые есть в убунте?
3.Подскажите какими?
fdisk - я успешно убил инфу, пришлось откатывать.
gparted - выдает ошибку (cannot open display). Видимо нужен GUI.
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
29.01.2016, 18:27
Цитата Сообщение от kolin_k Посмотреть сообщение
1.Это можно сделать не перенося никуда информацию?
Да. Но делать так без резервной копии - признак крайнего "безбашенства"
Цитата Сообщение от kolin_k Посмотреть сообщение
2.Это можно сделать штатными прогами, которые есть в убунте?
Да.
Цитата Сообщение от kolin_k Посмотреть сообщение
3.Подскажите какими?
fdisk, mdadm, lvm, утилиты файловых систем.
Цитата Сообщение от kolin_k Посмотреть сообщение
fdisk - я успешно убил инфу, пришлось откатывать.
См. п. 1.
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
30.01.2016, 12:59  [ТС]
Цитата Сообщение от gng Посмотреть сообщение
Да. Но делать так без резервной копии - признак крайнего "безбашенства"
Ну пока я учусь на тестовой машине. И, второе, когда буду на сервере ваять, то как минимум все данные останутся на старых винчестерах, т.е. в любой момент, можно вернуть их на место и будет все как было.
Цитата Сообщение от gng Посмотреть сообщение
fdisk, mdadm, lvm, утилиты файловых систем.
Можно озвучить порядок действий? В меню fdisk расширения не нашел, а удаляя один раздел и создавая новый все грохается. mdadm - я так полагаю понадобится, когда смогу sda/b расширить. Далее уже с LVM разбираться.
Пробовал resize2fs, но жалуется, что раздел занят, как я понял из-за того, что на нем raid.
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
30.01.2016, 13:19
Цитата Сообщение от kolin_k Посмотреть сообщение
Можно озвучить порядок действий? В меню fdisk расширения не нашел, а удаляя один раздел и создавая новый все грохается. mdadm - я так полагаю понадобится, когда смогу sda/b расширить. Далее уже с LVM разбираться.
Пробовал resize2fs, но жалуется, что раздел занят, как я понял из-за того, что на нем raid.
Можно, в общих чертах. Детально смотрите в манах.

1. fdisk.
Удаляем четвертый раздел и тутже создаем его заново большего размера (до конца диска) но с тем же начьным сектором.
Проделываем это на обоих дисках. Проверяем, идентичны ли размеры разделов и метки начала разделов.

2. mdadm нужен для расширения массива.

3. lvm. Добавляем в группу томов новое пространство. На нем либо создаем новые тома, либо расширяем старые.

4. Для расширенных в п.3 томов расширяем файловые системы (для ext2/3/4 resize2fs). Если в п.3 создавались новые тома, то на них создаем новые файловые системы.

Добавлено через 5 минут
PS. В первом пункте предполагалось, что 4-й раздел действительно является последним и свободное место находится в конце диска.
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
30.01.2016, 14:27  [ТС]
Цитата Сообщение от gng Посмотреть сообщение
PS. В первом пункте предполагалось, что 4-й раздел действительно является последним и свободное место находится в конце диска.
Да, именно так. В понедельник буду пробовать. Спасибо.
ЗЫ:
Цитата Сообщение от gng Посмотреть сообщение
Удаляем четвертый раздел и тутже создаем его заново большего размера
Именно так я все и убил. Правда там я удалял расширенный раздел и вместе с ним убились все остальные логические...
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
31.01.2016, 16:22
Цитата Сообщение от kolin_k Посмотреть сообщение
Именно так я все и убил.
Давайте попробуем. Двух флэшек под рукой нет. Воспользуемся файлами в качестве дисков.
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# dd if=/dev/zero of=sda bs=1K count=10K
# fdisk sda
# cp sda sdb
# losetup /dev/loop1 sda
# losetup /dev/loop2 sdb
# partprobe /dev/loop[12]
# ls /dev/loop[12]*
/dev/loop1  /dev/loop1p1  /dev/loop1p2  /dev/loop2  /dev/loop2p1  /dev/loop2p2
 
# fdisk -l /dev/loop[12]
Disk /dev/loop1: 10 MiB, 10485760 bytes, 20480 sectors
Device       Boot Start   End Sectors Size Id Type
/dev/loop1p1       2048  4095    2048   1M 83 Linux
/dev/loop1p2       4096  6143    2048   1M 83 Linux
Disk /dev/loop2: 10 MiB, 10485760 bytes, 20480 sectors
Device       Boot Start   End Sectors Size Id Type
/dev/loop2p1       2048  4095    2048   1M 83 Linux
/dev/loop2p2       4096  6143    2048   1M 83 Linux
 
# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/loop[12]p2
mdadm: array /dev/md0 started.
 
# mkfs -t ext4 /dev/md0
# mount /dev/md0 /mnt
# echo "Test File!" > /mnt/testfile
Расширяем вторые разделы до размеров и диска, рэйд и файловую систему.
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# umount /mnt
# fdisk /dev/loop1
# fdisk /dev/loop1
# partprobe /dev/loop[12]
# fdisk -l /dev/loop[12]
Disk /dev/loop1: 10 MiB, 10485760 bytes, 20480 sectors
Device       Boot Start   End Sectors Size Id Type
/dev/loop1p1       2048  4095    2048   1M 83 Linux
/dev/loop1p2       4096 20479   16384   8M 83 Linux
Disk /dev/loop2: 10 MiB, 10485760 bytes, 20480 sectors
Device       Boot Start   End Sectors Size Id Type
/dev/loop2p1       2048  4095    2048   1M 83 Linux
/dev/loop2p2       4096 20479   16384   8M 83 Linux
 
# mdadm --grow /dev/md0 --size max
mdadm: component size of /dev/md0 has been set to 8175K
root@s20:~/test# e2fsck -f /dev/md0
e2fsck 1.42.13 (17-May-2015)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/md0: 12/120 files (0.0% non-contiguous), 38/960 blocks
root@s20:~/test# resize2fs /dev/md0
resize2fs 1.42.13 (17-May-2015)
Resizing the filesystem on /dev/md0 to 8172 (1k) blocks.
The filesystem on /dev/md0 is now 8172 (1k) blocks long.
 
# mount /dev/md0 /mnt
# cat /mnt/testfile 
Test File!
 
# df -h /mnt
Filesystem      Size  Used Avail Use% Mounted on
/dev/md0        8.0M   18K  7.4M   1% /mnt
Добавлено через 14 минут
Правка. В строке 3 второго листинга
# fdisk /dev/loop2
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
01.02.2016, 17:50  [ТС]
Цитата Сообщение от gng Посмотреть сообщение
Расширяем вторые разделы до размеров
Не увидел во втором листинге команды на увеличение разделов...
Сделал так:
Bash
1
2
3
4
5
6
7
#fdisk /dev/sda
d (удалил)
4 (4 раздел)
n (создал)
p (первичный)
default - (начальный сектор совпал с default)
default - (конечный сектор - конец диска)
Тоже самое для второго раздела.
Затем перезагрузка.
Далее:
Bash
1
2
3
# mdadm --grow /dev/md3 --size max
# pvresize /dev/md3
# reboot
Сейчас идет синхронизация md3, причем начал не с начала, а примерно с 18%. Видимо только добавленное место.

В процессе возник еще один вопрос.
До всех изменений все разделы значились как "fd" "Автоопределение Linux raid".
Сейчас увеличенные разделы значаться как "83" "Linux"
Вроде все работает, но на что это влияет?
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
01.02.2016, 17:55
Цитата Сообщение от kolin_k Посмотреть сообщение
Затем перезагрузка.
Достаточно
partprobe /dev/sd[ab]
Цитата Сообщение от kolin_k Посмотреть сообщение
Сейчас увеличенные разделы значаться как "83" "Linux"
Скорее всего ни на что не повлияет, если /boot не на этих разделах.
Хотите - поменяйте тип раздела.
1
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
02.02.2016, 09:08  [ТС]
Цитата Сообщение от gng Посмотреть сообщение
Достаточно
partprobe /dev/sd[ab]
Пробовал. Не прокатило. Выдавал ошибку, что раздел занят.
0
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
13.02.2016, 21:01  [ТС]
Не знаю есть кто или нету... Взялся за сам сервак, делаю все те же действия.
Но после удаления и создания четвертых разделов и последующей перезагрузкой (partprobe не прокатывает), md3 не собирается.
Снова удаляю четвертые разделы и создаю как было (те же сектора), md3 собирается.
Голову сломал, пока не могу понять, почему так...

Добавлено через 7 минут
ЗЫ: Попробовал еще такой вариант (посоветовали). Удалил один раздел из рейда. Удалил этот раздел и пересоздал. Перезагрузил. Попытался вставить этот увеличенный раздел обратно в рейд, пишет что Device or resource busy и не добавляет.
0
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
15.02.2016, 07:41  [ТС]
В общем что сделал так:
Из md3 выкинул sdb4. Пересоздал sdb4 до конца диска. Создал зеркало md4 на sdb4.
Добавил md4 как физический том LVM. Сказал pvmove с md3. Через час md3 стал свободен.
Удалил md3, переразметил sda4 и добавил к md4. Началась синхронизация (часа на три). Все работало.
Часа через четыре все отказало. Ребутнул сервак, не поднялось. Вернул старые винты на место, размышляю над причинами и другими способами добиться своего.
Как вариант, хочу попробовать так. После перекатывания на новые винты, добавить третий, разметить так же только последний раздел расширенный в котором два раздела, один размером как sda/b4, второй до конца диска.
Добавить все разделы к зеркалам как spare. Выкинуть из зеркал второй винт, дождаться синхронизации, переразметить как и третий, добавить как spare. Тоже самое для первого винта. Потом третий выкинуть.
На получившихся разделах создать новый PV и добавить к LVM. Как-то так...
Советы принимаются.
0
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 97
01.03.2016, 09:45  [ТС]
Со второго захода все получилось. Местами по другому, но в целом тем же методом.
Вопрос более не актуален...
gng - спасибо за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.03.2016, 09:45
Помогаю со студенческими работами здесь

RAID массив сервера, индикация жестких дисков
Здравствуйте! Имеется сервер Dell Dell CS24-SC Настроили RAID-1 с помощью встроенного в сервер контроллера LSI. 2 жестких диска...

Замена жестких дисков на сервере
Доброго времени суток. Встала такая задача, на двух серверах RAID 10 стоит по 8 жестких дисков (72гб), необходимо заменить все HDD на...

Замена дисков в Raid 1E
Здравствуйте, уважаемые форумчане. Поделитесь пожалуйста советом. Имеется Старенький сервер Supermicro, Windows server 2003, ...

Замена дисков в raid на большей емкости
Здравствуйте, имеется аппаратный raid10(3x1TB+1x750GB)на сервере hp. Имеется acu (array configuration utility). Собственно...

Ремонт жестких дисков.
Добрый день. Недавно восстановил работоспособность одного харда и очень заинтересовался этим. Хочется больше разобратся в этой сфере и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru