Установка Ubuntu 8.04 с программным RAID1
Введение
Это руководство объясняет, как настроить программный RAID1 при первичной установке Ubuntu 8.04 (Hardy Heron), как сделать каждый диск загрузочным, как безопасно заменить вышедший из строя диск и как мониторить состояние массива. Программный RAID1 зеркалирует данные между дисками: при падении одного диска система остаётся работоспособной, пока второй диск цел. RAID1 требует минимум двух дисков.
Важно: Ubuntu 8.04 — устаревшая версия операционной системы. Там могут отсутствовать современные улучшения безопасности и поддержки оборудования. По возможности рассмотрите обновление до поддерживаемой версии Ubuntu.
Требования и подготовка
- Два физических жёстких диска одинакового или схожего объёма (например, /dev/sda и /dev/sdb).
- Доступ к установщику Ubuntu 8.04 (CD/ISO).
- Базовые знания работы с fdisk/sfdisk, mdadm, grub.
- Резервные копии критичных данных перед началом.
Во время установки Ubuntu
- При диалоге «Partition Disks» выберите «Manually edit the partition table».
- Выберите первый диск (/dev/sda).
- Подтвердите создание новой пустой таблицы разделов.
- Создайте первичный раздел, достаточный для корневой файловой системы.
- Для пункта «How to use this partition» выберите «physical volume for RAID», вместо стандартного «Ext3 journaling file system».
- Отметьте раздел как загрузочный (bootable).
- Создайте второй первичный раздел, занимающий оставшееся пространство — он будет использоваться как swap.
- Для второго раздела также выберите «physical volume for RAID» (не «swap area»).
- Повторите те же шаги для второго диска (/dev/sdb). Убедитесь, что раздел 1 на обоих дисках помечены как загрузочные.
- В основном диалоге «Partition Disks» выберите «Configure Software RAID».
- При запросе «Write the changes to the storage devices and configure RAID» выберите «Yes».
- Для «Multidisk configuration actions» выберите «Create MD device».
- Для «Multidisk device type» выберите «RAID1».
- Для «Number of active devices for the RAID1 array» введите «2».
- Для «Number of spare devices for the RAID1 array» введите «0».
- При выборе «Active devices for the RAID1 multidisk device» отметьте /dev/sda1 и /dev/sdb1.
- Создайте ещё один MD-устройство для /dev/sda2 и /dev/sdb2.
- В конце выберите «Finish».
Затем назначьте устройство md0 в качестве корневой файловой системы (/), а md1 — как swap:
- В диалоге «Partition Disks» выберите RAID device #0 и настройте его как Ext3, монтируемый в /.
- RAID device #1 назначьте как swap.
Делание каждого диска загрузочным
После установки загрузитесь в систему и выполните следующие команды в GRUB (в интерактивной сессии grub):
grub
device (hd1) /dev/sdb
root (hd1,0)
setup (hd1)
quit
Эти команды установят GRUB на второй диск (/dev/sdb). Повторите установку загрузчика на оба диска, если нужно.
Добавление записи в /boot/grub/menu.lst для резервной загрузки
Откройте файл:
vi /boot/grub/menu.lst
Добавьте примерно такой блок, чтобы при отказе sda можно было загружаться с sdb:
### To boot if sda fails ###
title Ubuntu 8.04.1, kernel 2.6.24-19-generic /dev/sda fail
root (hd1,0)
kernel /boot/vmlinuz-2.6.24-19-generic root=/dev/md0 ro quiet splash
initrd /boot/initrd.img-2.6.24-19-generic
### End mod ###
Замените имена vmlinuz и initrd на актуальные для вашей системы. Перезагрузитесь и проверьте загрузку с второго диска.
Уход и мониторинг массива
Программный RAID1 позволяет системе работать при выходе одного диска из строя. Однако диск может начать давать ошибки без полного отказа. В этом случае md-драйвер может не отключить его автоматически, а производительность массива снизится. Вы можете вручную пометить диск как «failed» и удалить его из массива.
Примеры команд для пометки как failed и удаления из массива:
mdadm --fail /dev/md0 /dev/sda1
mdadm --fail /dev/md1 /dev/sda2
mdadm --remove /dev/md0 /dev/sda1
mdadm --remove /dev/md1 /dev/sda2
Проверка статуса массива:
cat /proc/mdstat
mdadm --detail /dev/md0
mdadm --detail /dev/md1
Для мониторинга SMART используйте smartctl (smartmontools):
smartctl -a /dev/sda
smartctl -a /dev/sdb
mdadm может работать в режиме мониторинга и отправлять уведомления на почту root при обнаружении проблем:
mdadm --monitor --daemonise --syslog /dev/md0 /dev/md1
Для постоянной конфигурации мониторинга добавьте соответствующие опции в /etc/default/mdadm или настройте init/systemd unit.
Замена вышедшего из строя диска — пошаговый SOP
- Обнаружьте сбой: проверьте /proc/mdstat и логи.
- Если диск ещё не помечен как failed, вручную пометьте:
mdadm --fail /dev/md0 /dev/sda1
mdadm --fail /dev/md1 /dev/sda2
- Удалите из массива:
mdadm --remove /dev/md0 /dev/sda1
mdadm --remove /dev/md1 /dev/sda2
- Отключите питание и замените физический диск.
- Загрузите систему и создайте таблицу разделов на новом диске, сделав её идентичной оставшемуся рабочему диску. Можно использовать sfdisk для копирования:
sfdisk -d /dev/sdb | sfdisk /dev/sda
Внимание: Убедитесь, что источник и назначение указаны правильно — ошибка перезапишет рабочую таблицу разделов.
- Пометьте разделы как RAID (тип fd) при необходимости.
- Добавьте новые разделы в массивы:
mdadm --add /dev/md0 /dev/sda1
mdadm --add /dev/md1 /dev/sda2
- Мониторьте процесс восстановления:
watch -n 5 cat /proc/mdstat
- После завершения синхронизации убедитесь, что состояние массива — «clean» или «active»:
mdadm --detail /dev/md0
- При необходимости установите GRUB на новый диск, как было описано ранее.
Примечание
Синхронизация происходит в фоне и использует свободные ресурсы. На загруженных серверах ресинк может идти значительно дольше.
Создание нового массива на свободном пространстве
Если у вас есть свободное пространство и нужно создать новый RAID1, создайте разделы типа RAID (fd) на обоих дисках, затем выполните:
sudo mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 /dev/sda5 /dev/sdb5
Проверьте /proc/mdstat и затем отформатируйте и смонтируйте /dev/md3 как обычное устройство.
Критерии приёмки
- Массивы /dev/md0 и /dev/md1 отображаются в mdadm –detail как active и clean.
- cat /proc/mdstat показывает 100% синхронизацию и отсутствие резерва.
- Система успешно загружается с любого из дисков (проверено отключением одного физического диска).
- После замены диска синхронизация автоматически завершилась, и данные доступны.
Контрольные списки
Администратор перед установкой:
- Резервное копирование всех важных данных.
- Подготовлены два диска, проверены SMART-атрибуты.
- Наличие установочного носителя Ubuntu 8.04.
- Доступ к консоли сервера.
Действия при отказе диска (оператор):
- Проверить /proc/mdstat и журналы.
- Пометить диск как failed и удалить из массива.
- Заменить физический диск.
- Воспроизвести таблицу разделов и добавить разделы обратно в массив.
- Мониторить синхронизацию до завершения.
Тестовые сценарии и приёмка
- Отключите /dev/sda физически и убедитесь, что система продолжает работать и монтированные файловые системы доступны.
- Пометьте /dev/sda как failed и удалите: проверьте, что md-устройства продолжают работать с одним активным диском.
- Замените диск, воспроизведите таблицу разделов через sfdisk и добавьте разделы в массив — убедитесь в завершении ресинкa.
- Проверьте загрузку с /dev/sdb после установки GRUB туда.
Когда программный RAID1 не подходит (ограничения и альтернативы)
- Если вам нужен высокий уровень производительности на запись при масштабируемом RAID — аппаратный контроллер RAID или файлопомощник вроде ZFS/RAIDZ могут дать выигрыш.
- Если вам требуется управляемое аппаратное кэширование и батарейная защита, аппаратный RAID предпочтителен.
- Для тонкого управления томами и снапшотов рассмотрите LVM поверх RAID или ZFS вместо mdadm.
Альтернативы:
- Аппаратный RAID (RAID-контроллер).
- ZFS (зеркало) — современная файловая система с интегрированным управлением томами и контрольной суммой.
- LVM + mdadm — комбинирование логического менеджера томов с RAID.
Ментальные модели и эвристики
- RAID1 = зеркало. Дублирует данные на 2 диска. Если один диск умер, данные остаются на другом.
- RAID не заменяет бэкап. RAID защищает от отказа диска, но не от случайного удаления, ошибок ПО или повреждения данных.
- Регулярный мониторинг и тестовая процедура замены диска — ключ к высокой доступности.
Безопасность и жёсткая настройка
- Ограничьте доступ к /dev/md и /dev/sd через права и политики sudo.
- Храните /etc/mdadm/mdadm.conf под управлением версионного контроля и бекупьте файл.
- Настройте мониторинг mdadm с отправкой оповещений на внешнюю почту/систему уведомлений.
- Проверяйте и защищайте доступ к консоли GRUB.
Совместимость и миграция (заметки)
- Ubuntu 8.04 использует старые версии mdadm и init-системы; команды mdadm и поведение массивов в современных дистрибутивах могут отличаться.
- При планировании миграции на новый сервер/дистрибутив сохраните /etc/mdadm/mdadm.conf и используйте mdadm –examine для проверки UUID и состава массива.
Полезные сниппеты и шаблоны
Пример записи в /etc/mdadm/mdadm.conf (минимальный):
ARRAY /dev/md0 UUID=ваш-uuid-here
ARRAY /dev/md1 UUID=ваш-uuid-here
MAILADDR root
Команда для мониторинга с логированием в syslog:
mdadm --monitor --daemonise --syslog /dev/md0 /dev/md1
Копирование таблицы разделов (помните про риски):
sfdisk -d /dev/sdb | sfdisk /dev/sda
Добавление раздела в массив:
mdadm --add /dev/md0 /dev/sda1
Просмотр статуса синхронизации:
cat /proc/mdstat
Заключение
Программный RAID1 в Linux — доступное и гибкое решение для зеркалирования дисков. При правильной настройке и регулярном мониторинге он обеспечивает высокую доступность данных и простоту восстановления при отказе диска. Для Ubuntu 8.04 процесс создания RAID1 во время установки достаточно прямолинейный: создайте разделы как «physical volume for RAID», создайте MD-устройства и назначьте их как / и swap, затем убедитесь, что GRUB установлен на оба диска. Исполните SOP по замене диска и настройте мониторинг, чтобы минимизировать время простоя.
Важно: всегда имейте актуальные резервные копии и план миграции на поддерживаемую версию ОС.
Summary:
- Настройте RAID1 при установке, создавая разделы типа «physical volume for RAID» на обоих дисках.
- Установите GRUB на оба диска, чтобы обеспечить загрузку при отказе одного из них.
- Используйте mdadm и smartctl для мониторинга и управления массивом.
- Следуйте SOP при замене диска и проверяйте завершение синхронизации.
Похожие материалы

Google Meet бесплатно до 30 сентября

Live Photos на Android: Camera MX и альтернативы

Как выбрать телефон для торговли криптовалютой

Потеря пакетов в FFXI — как уменьшить

Резервное копирование почты Office 365 — руководство
