Даже не знаю, с чего начать эту отладку ...
У меня есть виртуальная машина Debian 9 (Linux 4.9.0-7-amd64 на x86_64) с четырьмя жесткими дисками -
/ (RootFs) 30Gb 26% used raw
/mnt/data1 2TB 91% used qcow2
} тот же физический жесткий диск/mnt/data2 2TB 88% used qcow2
}/mnt/data2 2.5TB 73% used raw
(не существовало, когда эта история началась)Несколько дней назад я пытался скопировать файл на диск 3
используя Samba и заблокированный сервер, я перезагрузился, и сервер снова заблокировался сразу после экрана GRUB. Я использовал USB-накопитель для восстановления и отредактировал fstab, чтобы не монтировать не-root, затем снова перезагрузился. Это сработало, и сервер снова заработал. Я вручную установил привод 2
и все было нормально, но когда я установил привод 3
его тут же снова заперли.
Перезагрузился снова, диск без комментариев 2
в fstab пробовал вручную монтировать диск 3
снова и получил тот же результат (сюрприз-сюрприз). Полагая, что это сбой диска, я использовал gddrescue для копирования диска 3
к новому драйву, драйву 4
. Я оставил это на ночь, и к утру все было готово - без ошибок. Я перезагрузился и попытался смонтировать диск 4
и это сработало нормально. Затем я продлил диск 4
используя gparted, чтобы заполнить весь диск и добавить запись в fstab, перезагрузился и снова работал нормально (можно читать с диска, без проблем).
Однако, когда я попытался скопировать файл на диск 4
при использовании Samba произошло то же самое, вся ОС была заблокирована, и мне пришлось остановить виртуальную машину. Я пытался скопировать файл локально с диска 1
к драйву 4
и это тоже заперло его.
Я смотрел в /var/log/syslog
, debug
, messages
и kern
log-файлы, и перед стартовыми записями нет ничего даже отдаленно любопытного, что могло бы объяснить, что произошло непосредственно перед блокировкой.
В прошлом я сталкивался с тем, что в случае избыточного использования дискового пространства между виртуальными машинами, когда базовое хранилище заполняется, виртуальная машина будет заблокирована от работы до тех пор, пока дисковое пространство не освободится, чтобы виртуальная машина могла завершить свою операцию ввода-вывода. Это соответствует тому, что вы описываете, что происходит.
Освободите место на хосте виртуальной машины, и виртуальная машина сможет работать.