Я пишу initramfs , выполняемый в busybox , в котором я монтирую раздел, используя следующие команды:
/bin/busybox mount -n -t proc proc /proc
mount -n -t devtmpfs devtmpfs /dev
mount -n -t sysfs sysfs /sys
mount -n -t tmpfs inittemp /mnt
mkdir /mnt/saved
mount -n -t "${rootfstype}" -o "${rootflags}" ${device} /mnt/saved
Но когда система запускается , У меня такая ошибка:
mount: mounting /dev/mmcblk0p2 on /mnt/saved failed: No such file or directory
Я знаю, что когда устройство не найдено, появляется сообщение типа Device does not exist
, поэтому я думаю, что проблема исходит из каталога /mnt/saved
, который не правильно создан.
Я попытался добавить ls -l /mnt
после mkdir
, чтобы убедиться, что каталог создан правильно, но в большинстве случаев, если я это сделаю, ошибка исчезнет. Итак, я подумал, что проблема может заключаться в проблеме синхронизации (из tmpfs , странно!) Поэтому я попробовал некоторые другие вещи, такие как создание фиктивного файла в каталоге, чтобы вызвать своего рода синхронизацию. Это работает, но это грязный обходной путь, и я хочу найти настоящую причину проблемы, чтобы создать чистое решение.