Запускаем rescue system с altlinux-5.9.9-20100909-centaurus-i586-ru-install-dvd5.iso на qemu-kvm (kvm-83-164.el5_5.21.x86_64), подсовываем образ диска с ext3-разделом /dev/sda2. fsck /dev/sda2, mount /dev/sda2/ /mnt/somewhere завершаются с "device /dev/sda2 busy". strace показывает open("/dev/sda2","O_RDONLY|O_EXCL) == -1.
strace не врёт. В чём вы видите ошибку ?
(В ответ на комментарий №1) > strace не врёт. В чём вы видите ошибку ? Устройство не должно быть "busy". Его никто не открывал до этого.
Это вопрос к вашей системе: кто держит устройство. Невозможность mount смонтировать это устройство лишь следствие.
(In reply to comment #3) > Это вопрос к вашей системе: кто держит устройство. Невозможность mount > смонтировать это устройство лишь следствие. Не видно, кто его успел открыть. В вирт. машине вывод `grep sda /proc/mounts', `ls -l /proc/[0-9]*/fd/[0-9]* | grep sda' пустой. В хост-машине весь образ диска открыт только qemu-kvm. При загрузке с того же iso в режиме "установка" /dev/sda* монтируются нормально.
с высокой долей вероятности ошибка в kvm
С голым qemu (qemu-0.10.5-1.el5.2.x86_64) без kvm та же ошибка. mount("/dev/sda2"...), open("/dev/sda2"...) вылетают с EBUSY.
Кажется, в vbox тоже вылазило -- думал сам глянуть, но в таком виде rescue почти совсем бесполезен.
В qemu из p5 ошибка не воспроизводится: qemu-0.11.50-alt5 + kernel-modules-kqemu-hpc-std-1.4.0-alt0.1.pre1.132635.2
Поддтверждаю. Была произведена попытка установить на реальное железо... Установка проводилась в графическом режиме. При попытке подсунуть уже имеющийся диска (просто назначив ему метку), выдавалась ошибка, что диск или устройство занято. Попытки были две: на бете версии 5.9.9-20100909, и на недавней (на момент написания данного поста) бете версии 5.9.9-20100922... Обе окончились вышеназванным.
(В ответ на комментарий №2) > (В ответ на комментарий №1) > > strace не врёт. В чём вы видите ошибку ? > > Устройство не должно быть "busy". Его никто не открывал до этого. evms? попробуйте работать с /dev/evms/*
попробуйте провести любую операцию с /dev/dm-* Тогда, когда ругается на BUSY /dev/sd*
(В ответ на комментарий №10) > > попробуйте работать с /dev/evms/* /dev/evms/sda* монтируются. Thx!
(В ответ на комментарий №11) > попробуйте провести любую операцию с /dev/dm-* > > Тогда, когда ругается на BUSY /dev/sd* mkfs.ext2 /dev/dm-1 && mount /dev/dm-1 /mnt/somewhere работает. mkfs.ext2 /dev/sda2 выпадало с open("/dev/sda2",...) = -1 (EBUSY)
Отсюда вопрос: а не лучше ли вынести подъём evms из rescue? Автоматический сбор информации не стоит дополнительных разборок, когда всё и так предположительно паршиво (и нужен спасательный образ).
[12:40:23] <stanv> У меня в rescue не хочет монтироваться ни один диск [12:40:39] <stanv> already mounted or busy [12:41:02] <vsu> потому что evms надо гнать ссаными тряпками Удалите пожалуйста evms с rescue.
Монтировать диски в rescue удобнее всего скрптом mount-system (о чём теперь выводится соответствующее сообщение в конце загрузки rescue). Поскольку mount-system && fixmbr из rescue, насколько я могу судить используют evms, в ближайшее время evms оттуда не исчезнет.
Можно хотя бы добавить в /etc/issue или ещё куда напоминание пользоваться /dev/evms/* вместо /dev/*?