НЕтривиальная проблема при монтировании дисков при загрузке

Очень хочется, чтоб помимо дисков, флешка тоже монтировалась при загрузке. Естественно, это делается элементарно - добавлением записи в fstab
/dev/sdb1	/mnt/dm_kingston_2GB	vfat	rw,nosuid,nodev,uid=1000,gid=100,shortname=mixed,dmask=0077,utf8=1,flush	0	0

Флешка прекрасно монтируется руками через
sudo mount /mnt/dm_kingston_2GB
Однако, во время загрузки на этапе Mounting local file systems арч пишет:
mount: special device /dev/sdb1 does not exist
и флешка не монтируется! Тем не менее, она может быть спокойно примонтирована позже руками
sudo mount /mnt/dm_kingston_2GB
Логи на предмет ошибок молчат.

!!!Более того, ИНОГДА флешка-таки абсолютно нормально монтируется при загрузке!!! (Проверялось опытным путем последовательных перезагрузок)

Есть подозрение, что udev (или кто-то там)) просто не успевает создать/опросить/проинициализировать соотв. девайс /dev/sdb1, а иногда, наоборот, успевает (такое ВСЕГДА бывает, когда корень принудительно проходит проверку диска т.е. для корректного монтирования необходима какая-нибудь задержка!). Я не удивлюсь, если вообще медленно монтирующиеся диски подвержены этой же проблеме.

В связи с этим возникает вопрос как это можно обойти? Как заставить систему подождать этого создания/опроса/инициализации, т.е. синхронизировать монтирование? У кого какие мысли на этот счет?

ПС. Аналогичные проблемы встретил на http://forum.ubuntu.ru/index.php?topic=30494.0 но там до решения так и не дошли….

Вот что выдает fdisk -l:
Диск /dev/sdb: 2040 МБ, 2040528896 байт
63 heads, 63 sectors/track, 1004 cylinders
Units = цилиндры of 3969 * 512 = 2032128 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
Disk identifier: 0x3ecb2e94
Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sdb1               1        1005     1992641    4  FAT16 <32M
Раздел 1 имеет различные физические/логические окончания:
     физ=(987, 62, 63) логич=(1004, 7, 28)
Вывод команды mount после ручного монтирования:
[dm@arch-host ~]$ mount
.....
/dev/sdb1 on /mnt/dm_kingston_2GB type vfat (rw,noexec,nosuid,nodev,iocharset=utf8,codepage=866)
А если просто написать скрипт и поставить в автозагрузку?
А что если просто прописать mount в .bashrc?
Не самое елегантное решение, но по крайней мере может сработать…
Уверен что флешка всегда sdb и не меняется? В fstab вместо /dev/sdb1 напиши UUID=…
Lupus pilum mutat, non mentem.
vadik
А если просто написать скрипт и поставить в автозагрузку?
scorpil
А что если просто прописать mount в .bashrc?
Не самое елегантное решение, но по крайней мере может сработать…
Че-то это костылями попахивает. Кроме того, не исключено, что и тогда не будет подобная проблема (хотя многовероятно, что она исчезнет). Я не могу понять суть проблемы.

jim945
Уверен что флешка всегда sdb и не меняется? В fstab вместо /dev/sdb1 напиши UUID=…
Да вроде не должна, все остальные диски монтируются по /dev/sd*, а не по UUID. Собственно, остальной fstab
/dev/sda1 swap swap defaults 0 0
/dev/sda2 /boot ext2 defaults 0 1
/dev/sda3 /home ext4 defaults 0 1
/dev/sda4 / ext4 defaults 0 1
/dev/sdb1  /mnt/dm_kingston_2GB vfat iocharset=utf8,codepage=866,user,rw 0 0
Попробую - отпишусь.
revup
vadik
А если просто написать скрипт и поставить в автозагрузку?
Че-то это костылями попахивает. Кроме того, не исключено, что и тогда не будет подобная проблема (хотя многовероятно, что она исчезнет). Я не могу понять суть проблемы.
Попробую - отпишусь.
Вы же не написали цель монтирования, вот и попахивает. А вообще у вас не грузиться возможно из-за того, что на момент инициализации флешки не успевает подгрузиться нужный модуль ядра (кстати копните в эту сторону, на форуме уже было) или драйвер ФС (или как он там называется). К моменту старта ДЕ (крипт) ядро уже будет загружено и флешка нормально примонтируется. Наверное так.
vadik
revup
vadik
А если просто написать скрипт и поставить в автозагрузку?
Че-то это костылями попахивает. Кроме того, не исключено, что и тогда не будет подобная проблема (хотя многовероятно, что она исчезнет). Я не могу понять суть проблемы.
Попробую - отпишусь.
Вы же не написали цель монтирования, вот и попахивает. А вообще у вас не грузиться возможно из-за того, что на момент инициализации флешки не успевает подгрузиться нужный модуль ядра (кстати копните в эту сторону, на форуме уже было) или драйвер ФС (или как он там называется). К моменту старта ДЕ (крипт) ядро уже будет загружено и флешка нормально примонтируется. Наверное так.
Очень и очень похоже на правду. Копание привело к udev'у. По-видимому, действительно не успевает подгрузиться нужный модуль, поэтому система не видит устройство, поэтому udev не создает файл /dev/sdb1. Надо подробнее разобраться.

Замечание. Чем то напоминает проблему с меняющимися именами сетевых интерфейсов.

revup,jim945
Попробую - отпишусь.
Попробовал - не работает, те же самые симптомы.
revup
Попробовал - не работает, те же самые симптомы.
В /etc/mkinitcpio.conf добавляешь usb. Вот так у меня.
HOOKS="base udev autodetect pata scsi sata usb filesystems"

Потом sudo mkinitcpio -p kernel26
В fstab думаю лучше оставить по UUID (у меня она то sdd, то sdg).
Lupus pilum mutat, non mentem.
Простейший костыльный метод:
1. В строчку fstab`a добавить опцию noauto для исключения ругани при загрузке.
2. echo ‘mount /mnt/dm_kingston_2GB’ >> /etc/rc.local
 
Зарегистрироваться или войдите чтобы оставить сообщение.