вторник, 16 июля 2013 г.

resize2fs: Couldn't find valid filesystem superblock.

Например:

# resize2fs /dev/vg-www/www
resize2fs 1.41.12 (17-May-2010)
resize2fs: Device or resource busy while trying to open /dev/vg-www/www
Couldn't find valid filesystem superblock.

Для нас было актуально, когда надо было ресайзить /var/www без перезагрузки системы и желательно даже без отмонтирования раздела, благо облако selectel такое позволяет, и даже LVM уже умеет на лету увеличиваться. Проблема оказалась чисто в изменении размера раздела.

UP: как оказалось, эта ошибка в_том_числе значит, что нужно было сделать fsck (на отмонтированном разделе опять же). Вот такая тут магия.

Это значит, что пора обновить ваш дистрибутив, заменив г-но мамонта 2010 года на что-то более актуальное. В частности, пора переходить с centos 5 на centos 6.
Как, это и так "свежий" дебилян 6? Увы, такова политика дистра -- вы обязаны использовать старые уже не поддерживаемые версии. Так что если сильно хочется сидеть именно на нём - надо в очередной раз доставать костыли. Что забавно: в дебиляне поддержка ext4 есть, а ресайзить его нечем. Вот такой "юмор" авторов. (для центоси 5 в частности - есть resize4fs)
Самый простой способ посмотреть, какая у нас ФС - заглянуть в /etc/fstab

В случае дебиляна наиболее простым решением окажется переформатировать раздел с нужным размером, чуть сложнее -- обновиться до 7 (сквиз -> вхизя)
Поключать что dotdeb, что backports не помогло, нету там более свежего e2fsprogs. Быстрый поиск подходящего пакета из ubuntu ничего не дал, но уже не было желания серьёзно искать.

В итоге оказалось, что надо было убрать раздел из автомонтирования (особенно актуально для /home и подобных системных мест) и перезагрузиться. "По живому" ресайз невозможен, несмотря на то, что и утилита и сама фс поддерживает даже ресайз без отмонтирования. Спишем это на "правильную" версию 2010 года и древнее ядро.

2 комментария:

  1. В селектеловском облаке проще всего было бы реюбутнуть ВМ в рекавери, все там быстренько сделать и ребутнуть обратно в ОС.

    ОтветитьУдалить
    Ответы
    1. для не-системной части можно делать даже без рекавери, закомментировать только лишнее в fstab, а потом подмонтировать. Тут именно факт ребута сбивает, при том что resize2fs на ext3 и 4 уже давно умеет на лету увеличиваться, но "кошерный софт должен быть устаревшим ".
      Собственно, для более простого ресайза и выносим всё не-системное на отдельные диски и отдельные лвм-разделы.

      Удалить