You are not logged in.
Hi,
I was trying to set up my arch system on an SD card on EeePC. I was using arch like that for about 4 months already, before my card crapped out, so now I have to reinstall it on a new card.
This time I thought I make an effort and use encrypted root, just like it is in the wiki.
I followed it exactly, and everything went fine - except when I actually tried to boot the system, it didn't work. Apparently the "encrypt" hook is being executed earlier than my /dev/sdb2 is recognized by the system.
However, when I use the arch-install cd to boot it ("arch root=/dev/sdb2") it correctly asks for my password and everything is fine, I'm in my newly installed system!
So, is this difference because the arch-install uses a different order of hooks? Or because it has to wait for the cdrom to settle, the /dev/sdb2 is not too late anymore?
I guess one solution would be is adding a "sleep 5" or something to the "encrypt" hook at installation. Where does the arch install find that version of "encrypt" that mkinitcpio uses during the install?
Or - is there any better solution? Like rearranging the order of hooks?
Thanks!
Offline
try adding rootdelay=<seconds> to your kernel command line.
Offline
It doesn't seem to help - i think the "rootdelay=" kernel parameter only appears to have a difference at a different stage (and I think the [usb] hook has that already)
The problem is, that the udev hook (or the hardware recognition in [autodetect]?) doesn't finish before the [encrypt] hook runs.
I can see, that the hook [encrypt] passes, and a few lines afterwards "waiting for devices to settle", then the /dev/sdb is recognized....
Using the install CD - all hardware section finishes way before [arch_encrypt]...
Offline