бадблоки занимают действительно много времени. или это заморожено?

enter image description here

Я выпустил sudo badblocks -nv /dev/sda6 вчера. Я только что проснулся, и это все еще так.

В документации говорится, что параметр -n указывает, что тест должен быть неразрушающим, но занимает немного больше времени.

Это работает или это заморожено или как? Кто-нибудь знает?

5
задан 15 April 2019 в 20:21

3 ответа

Вы можете наблюдать за процессами ввода-вывода с помощью iotop. Установите:

sudo apt-get install iotop

Затем запустите:

sudo iotop

Наблюдайте 30 секунд. Показывает ли он badblocks выполнение ввода-вывода? Если да, то он работает, если нет, скорее всего, он заморожен.

В следующий раз вы можете запустить badblocks с параметром -s:

sudo badblocks -nsv /dev/sda6

это покажет прогресс.

0
ответ дан 15 April 2019 в 20:21

Помимо iotop, можно также хотеть посмотреть dmesg:

dmesg -w

В моем случае, badblocks застрял на уровне 2,81%, не было никакого iotop действия, и dsmesg показал следующее сообщение на равных интервалах:

[ 7371.945131] INFO: task badblocks:19760 blocked for more than 120 seconds.
[ 7371.945134]       Tainted: G           OE     5.0.0-29-generic #31~18.04.1-Ubuntu
[ 7371.945135] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 7371.945136] badblocks       D    0 19760  19759 0x00000004
[ 7371.945137] Call Trace:
[ 7371.945140]  __schedule+0x2bd/0x850
[ 7371.945141]  schedule+0x2c/0x70
[ 7371.945145]  io_schedule+0x16/0x40
...

Не уверенный, что проблема находится в моем случае, но это может быть ошибка?

0
ответ дан 8 October 2019 в 18:43

Вы можете увидеть, где badblocks в настоящее время расположены на диске, посмотрев на его fdinfo в proc , то есть:

root@ubuntu:/home/ubuntu# ps ax | grep badblock
 3772 tty1     D+    12:11 badblocks -v /dev/sdb
 5478 tty2     S+     0:00 grep --color=auto badblock

root@ubuntu:/home/ubuntu# ls -l /proc/3772/fd
total 0
lrwx------ 1 root root 64 Mar  3 00:41 0 -> /dev/tty1
lrwx------ 1 root root 64 Mar  3 00:41 1 -> /dev/tty1
lrwx------ 1 root root 64 Mar  3 00:41 2 -> /dev/tty1
lr-x------ 1 root root 64 Mar  3 00:41 3 -> /dev/sdb

root@ubuntu:/home/ubuntu# cat /proc/3772/fdinfo/3
pos:    1707980816384
flags:  0140000
mnt_id: 24

root@ubuntu:/home/ubuntu# lsblk -bd /dev/sdb
NAME   MAJ:MIN RM          SIZE RO TYPE MOUNTPOINT
sdb      8:16   0 2000398934016  0 disk 

Итак, это ] выполнение badblocks выполнено примерно на 85%.

Ответ @ falconer (используйте iotop ) - хороший способ посмотреть его текущую скорость, но fdinfo показывает, насколько продвинулась программа.

4
ответ дан 3 March 2020 в 05:50

Другие вопросы по тегам:

Похожие вопросы: