Даже пользователь без прав администратора способен вызвать необратимую рассинхронизацию дисков.
В Linux обнаружена серьёзная уязвимость, существующая уже более десяти лет, и связана она с механизмом программного RAID при использовании флага O_DIRECT. Проблема позволяет привести массив в несогласованное состояние, причём без каких-либо ошибок или предупреждений со стороны системы. Несмотря на то, что баг впервые был зарегистрирован ещё в 2015 году, интерес к нему вновь возрос в контексте современных задач, таких как живая миграция виртуальных машин.
После трех с лишним лет разработки вышла новая версия пакета Einarc — универсального интерфейса для управления разными проприетарными и не очень проприетарными RAID-массивами. Как и раньше, Einarc предоставляет простой единый интерфейс командной строки (для управления вручную или из скриптов) и API (для программирования в составе систем deployment'а, различных NASов/SANов и т.п.), работая как оболочка-транслятор вокруг проприетарных утилит управления.
Новая версия получила номер 2.0 — и это логично, так как список нововведений широк:
Новые возможности: поддержка операций с выделенными hotspare-дисками, работа со SMART, операция принудительного сброса адаптера (полезно, если по какой-то причине какие-то диски не проинициализировались), показ соответствий /dev-файлов для логических дисков, расширенная поддержка модели SAS (атрибут WWN и объект «enclosure»), дампинг логов, поддержка переключения режим кэша записи и управления питанием для физических дисков.
Поддержка массы новых адаптеров и чипсетов, выпущенных за последние 3-4 года 3Ware, Adaptec, Areca, Intel, LSI, SuperMicro и т.д.
Более дружелюбные пользовательский интерфейс: на всех уровнях добавлены подсказки, большинство команд можно сокращать в UNIX-стиле («physical list» => «pd ls»), возможность не указывать аргументы, когда понятно, о чем идет речь.
Добавлена документация в виде man pages.
Решены множественные проблемы совместимости, тянувшиеся с прошлой версии: поддерживаются Ruby 1.8, 1.9 и 2.0, поддерживается ядро Linux 3.x (даже для тех утилит, которые требуют явно именно 2.6.x), поддерживается больше 26 физических дисков для HBA, произведен переход с HAL на udev (с хождением в sysfs вручную для совместимости с SAS), явно запрещено построение программного RAID на поверх дисков аппаратного RAID.
Кроме этого тем, кто использует Einarc как библиотеку в своих проектах стоит обратить внимание на то, что:
В API 2.0 сломана обратная совместимость с 1.x (в основном переименованы namespaces для разрешения конфликтов).
В релиз включен новый тестовый фреймворк, работающий даже в отсутствии физического адаптера и тестового стенда.
Крис Мэйсон (Chris Mason), автор файловой системы Btrfs, сообщил об интеграции в основной git-репозиторий проекта экспериментальной реализации RAID5 и RAID6, встроенной в Btrfs. Поддержка RAID5/6 доступна для тестирования в рамках ветки raid56-experimental, созданной как для компонентов Btrfs уровня ядра, так и для набора утилит btrfs-progs.
В статье F.Timme «Настройка программного массива RAID1 на работающей системе CentOS 5.3 (включая настройку GRUB)» показано, как создать программный массив RAID1 на уже установленной и работающей системе CentOS 5.3. Загрузчик GRUB будет настроен таким образом, чтобы при выходе из строя одного из дисков (любого) система все равно запускалась.
В статье описан процесс установки Slackware Linux на полуаппаратный (fakeraid) RAID-массив (RAID через BIOS). Протестировано с версиями 12.0 и 12.1. Рекомендую всем заинтересованным.
PS: Автору нужна помощь в переводе на английский.
Прим. Dimez: В статье ошибка, т.к. fakeraid не является аппаратным (hardware) RAID'ом.
Вышла версия 1.2 замечательного средства управления разнообразными RAID-массивами.
Einarc — универсальный интерфейс управления аппаратными (и не только) RAID-массивами. Как известно, у аппаратных RAID'ов обычно с этим все плохо: вопрос с управлением и мониторингом почти у всех производителей до сих пор сводится к их проприетарному софту, который есть не под все платформы и не под все архитектуры, который сложно ставится и у каждого из них свой собственный набор команд и вызовов. Einarc же, конечно, не делает чуда, но делает жизнь простого администратора чуть легче: за незатейливым объектным интерфейсом (одним и тем же для всех поддерживаемых адаптеров) скрывается хитрый преобразователь команд, который сам скачивает с нужного сайта нужный проприетарный пакет и выполняет нужные команды для создания/удаления/конфигурации/мониторинга массивов.
Поддерживаются практически все контроллеры на чипах Adaptec, Areca, LSI, MPT/Fusion.
Плохо то, что этот пакет никогда не появится ни в одном из дистрибутивов, кроме Gentoo, т.к. для его функционирования нужно в процессе инсталляции вытягивать из сети дополнительные проприетарные части.
В новой версии добавлена поддержка новых адаптеров Adaptec и существенно расширен объектный интерфейс.
30 мая в 18:30 в ауд. 707 второго учебного корпуса МГУ (факультет ВМК, МГУ1С52) состоится семинар Александра Герасёва (http://users.livejournal.com/_gq_/) по теме "Системы хранения данных". Доклад рассчитан на тех, кто пока мало что знает о СХД, SAN и тому подобных вещах (но хочет узнать больше), и на тех, кто готов вносить интересные комментарии; проходит в рамках семинара UNИX (http://uneex.mithril.cs.msu.su/).
Примерный план доклада:
Что такое хранение данных
Типы СХД
RAID
LVM
MultiPath
SAN
Пример построения отказоустойчивой системы на базе EMC CLARiiON AX150
Проприетарные решения vs. открытые на примере той же системы
Технологии будущего
В здании факультета ВМК работает бюро пропусков. Для получения пропуска необходимо предъявить паспорт и сказать, на что вы идёте — этого должно быть достаточно. В случае проблем в день семинара можно связаться с Артёмом Гавриченковым (http://ximaera.livejournal.com/) по телефону +7 916 515 4958 и в джаббере ximaera@gmail.com.
В статье Falko Timme (перевод - Андрей Синицын) "Настройка программного RAID1 на работающей системе (включая конфигурацию GRUB)" описывается настройка RAID1-массива на уже установленном и запущенном Debian Etch с конфигурацией загрузчика GRUB для корректной загрузки системы даже в том случае, если один из винчестеров поврежден.