Назад | Перейти на главную страницу

Как проверить прогресс lvconvert --replace

Я заменяю несколько дисков с RAID5 на LVM.

Для замены используется следующая команда:

lvconvert --replace /dev/oldpv vgname/lvname /dev/newpv

Это запускает процесс в фоновом режиме.
Параметр -i # не имеют никакого эффекта -v

Я пробую много вариантов в lvs -o +<fields> (и пвс, вгс) этот прогресс никто не вернет ..

Я хочу проверить прогресс, потому что диски большие, а LV мало. Это займет несколько минут, я не хочу запускать следующий LV, пока текущий процесс все еще работает ...

Сейчас я слежу за вводом-выводом с помощью команды dstats / iostats, но это очень уродливый способ проверить это ...

Насчет RAID5 не уверен на 100%, но для зеркал используйте

# dmsetup status

rootvg-testmirror: 0 9216000 raid raid1 2 AA 3233673/9216000 idle 0

В этом примере это около 33%, когда вы оцениваете 3233673/9216000

У меня недостаточно дисков для создания тестового RAID5, но я уверен, что это будет что-то подобное.

Раскрывая ответ banjo67xxx, вы можете получить процент завершения (с десятичными знаками), используя следующее:

echo "(`dmsetup status | tail -n 1 | awk '{print $8}'`)*100" | bc -l

Если вы хотите ограничить количество десятичных знаков, вы используете объявление масштаба в строке, отображаемой на bc. Вот та же команда, ограниченная двумя десятичными знаками:

echo "scale=2; (`dmsetup status | tail -n 1 | awk '{print $8}'`)*100" | bc -l