[Sysadmins] e2fsck не может провести проверка при загрузке корневой ФС на LVM RAID1

Васюк Максим vasukma на yandex.ru
Ср Дек 5 09:16:57 MSK 2018



04.12.2018 17:38, Sergey пишет:
> On Tuesday 04 December 2018, Васюк Максим wrote:
> 
>> Здесь понятно, что e2fsck хочет заюзать один из зеркал рейда, но райд
>> уже активен и не даёт его использовать.
> 
> С чего бы e2fsck знал про RAID? Он просто должен проверить устройство
> с ФС, и всё. Нет, причина в чём-то другом. Но в чём - не скажу. У меня
> живёт конфигурация вида (лишнее убрал)
Выхлоп:
Checking root filesystem
/dev/mapper/vg00-root_sys_rimage_0 is in use.
e2fsck: Cannot continue, aborting.

...is in use... разве это не говорит о том, что устройство кем-то 
используется?
Напоминаю, что на текущей машине RAID1 организован средствами LVM, без 
использования md.
К моменту начала работы e2fsck RAID уже собран, и e2fsck по идее должна 
проверять только его, а зеркала не трогать, потому как, по идее, за 
целостностью следит сам LVM.

Так наверно понятней будет:
# lvs -a -o +devices
   LV                  VG   Attr       LSize  Pool Origin Data%  Meta% 
Move Log Cpy%Sync Convert Devices
   root_sys            vg00 rwi-aor--- 10,00g         100,00 
root_sys_rimage_0(0),root_sys_rimage_1(0)
   [root_sys_rimage_0] vg00 iwi-aor--- 10,00g 
/dev/sda2(1)
   [root_sys_rimage_1] vg00 iwi-aor--- 10,00g 
/dev/sdb2(2562)
   [root_sys_rmeta_0]  vg00 ewi-aor---  4,00m 
/dev/sda2(0)
   [root_sys_rmeta_1]  vg00 ewi-aor---  4,00m 
/dev/sdb2(2561)
   test                vg00 -wi-a----- 20,00g 
/dev/sdb2(5122)

RAID1 это vg00/root_sys на нём корень и он использует скрытые тома 
vg00/root_sys_rmeta_0 и vg00/root_sys_rmeta_1, которую в свою очередь 
уже используют непосредственно разделы на разных дисках. Этот слоённый 
пирог LVM сам организовал и если пользоваться просто lvs без -а, то он 
их не показывает.
Ну и df:
Файловая система          Размер Использовано  Дост Использовано% 
/dev/mapper/vg00-root_sys   9,8G         1,9G  7,4G           21% /

В итоге boot не надо выносить отдельно куда-то. Grub грузит initrd прямо 
с LVM RAID1 организованного только одним LVM.

Возможно из-за того, что e2fsck видит на LVM зеркалах систему, пытается 
её почекать, а на md зеркалах она её не видит и соответственно обруливает.
И нет бы сказал, что-то типа того: "Не могу работать, устройство 
занято!" и пошел дальше грузиться, но останавливает загрузку.

> Filesystem             Size  Used Avail Use% Mounted on
> 
> /dev/sda1              182M   81M   89M  48% /boot
> /dev/mapper/main-root  3,8G  659M  3,0G  18% /
> /dev/mapper/main-home  3,8G  3,0G  610M  84% /home
> /dev/mapper/main-usr   3,8G  902M  2,7G  25% /usr
> /dev/mapper/main-var   3,8G  2,1G  1,6G  58% /var
> /dev/mapper/main-www   7,6G  684M  6,5G  10% /var/www
> /dev/mapper/main-rrd   385G   91G  275G  25% /var/lib/collectd2
> 
> тут mdadm/RAID10 c LVM поверх RAID. Везде ext4 и всё, вроде как, нормально
> чекается.
На другой машине у меня организация загрузки с аналогичная Вашей, только 
корень лежит на md разделе. На новой машине хочу избавится от 
дополнительного слоя md.

>> Один вариант вижу, не использовать ext4. Смотрел в сторону btrfs, но
>> боюсь могут возникнуть проблемы в rescue live cd, там что-то btrfs-ом
>> и не пахнет.
> 
> btrfs в rescue не самая главная проблема - добавить не сложно, если на
> самом деле отсутствует. Вот RAID средствами btrfs - это чёрный ящик.
> Хотя и пишут, что некоторые варианты уже считаются стабильными. Плюс не
> интересовался наработанной практикой исправления порушенного btrfs raid.
Хотел использовать btrfs поверх LVM и испльзовать её просто как замену 
ext4, без дополнительных её возможностей по организации массивов и 
работе с томами. Наш установщик на неё почему-то ставиться не захотел, 
хотя гуй видел том и давал его выбрать, глянул из rescue, поддержки её 
там не увидел, подумал нам ещё рановато, раз не добавили. И во избежания 
проблем во время возможных отказов, решил не выпендриваться.

04.12.2018 17:58, Michael Shigorin пишет:> On Tue, Dec 04, 2018 at 
02:38:24PM +0700, Васюк Максим wrote:
>> Один вариант вижу, не использовать ext4. Смотрел в сторону btrfs
>
> Насколько понимаю, если данные не нужны, вполне себе вариант...
С данными всё в порядке, система то в итоге грузится и копию образа 
системы через снапшот я уже сделал. На машину система только накатилась, 
KVM и LXC ещё не начал настраивать, т.к. вышеописанный вопрос надо закрыть.

> В http://altlinux.org/rescue есть и btrfs-progs, если что.
>
У меня alt-p8-server-20180913-x86_64.iso я с этого диска грузился в 
rescue. И только сейчас докумекал, что Вы говорите про отдельный образ 
rescue. Просто раньше у меня не было вопросов, я просто брал любой образ 
с текущей ветки и грузился с него в rescue и отдельным образом для 
возобновления работы машины не пользовался, как-то хватало. Будем знать, 
спасибо!

-- 
Васюк Максим


Подробная информация о списке рассылки Sysadmins