[lfs-support] booting don't work with UUIDs

Pierre Labastie pierre.labastie at neuf.fr
Wed Jan 30 08:21:33 PST 2013


Le 30/01/2013 15:55, Sven Bartscher a écrit :
> Am 29.01.2013 22:02, schrieb Pierre Labastie:
>> Le 29/01/2013 13:42, Sven Bartscher a écrit :
>>> Am 23.01.2013 18:03, schrieb Bruce Dubbs:
>>>> Sven Bartscher wrote:
>>>>> hey guys!
>>>>> I didn't installed GRUB in the chapter 8 and configured my already
>>>>> installed GRUB
>>>> That's OK.
>>>>
>>>> with writing the following text in the /boot/grub.cfg
>>>>> set default=0
>>>>> set timeout=5
>>>>>
>>>>> insmod ext2
>>>>> set root=(hd0,msdos4) #i tried it with set root=(hd0,4) too
>>>>>
>>>>> menuentry "GNU/Linux, Linux 3.5.2-lfs-7.2" {
>>>>> linux /boot/vmlinuz-3.5.2-lfs-7.2
>>>>> root=UUID=4f9f6834-c55b-492e-a70c-4e3bca952f5b ro
>>>>> }
>>>> The kernel doesn't understand UUIDs. You need an initrd. See BLFS
>>>>
>>>> http://www.linuxfromscratch.org/blfs/view/svn/postlfs/initramfs.html
>>>>
>>>> -- Bruce
>>>>
>>>>> I can't use the /dev/sdxy partition names because i have two hard
>>>>> drives
>>>>> (IDE and SATA) and the names are after rebooting randomly mixed. So i
>>>>> can't be sure which is the right /dev/sdxy file.
>>>>>
>>>>> I try to boot my new lfs system and it don't work instead i get this
>>>>> message (a little bit more but i think this is the important part):
>>>>> VFS: Cannot open root device
>>>>> "UUID=4f9f6834-c55b-492e-a70c-4e3bca952f5b"
>>>>> or unknown-block(0,0): error -6
>>>>> Please append a correct "root=" boot option; here are the available
>>>>> partitions:
>>>>> Kernel panic - not syncing: VFS: Unable to mount root fs on
>>>>> unknown-block(0,0)
>>>>>
>>>>> I don't use an extra /boot partition so i have two /boot folders
>>>>> one on
>>>>> my Ubuntu(containing GRUB and the Ubuntu kernel) partition and one
>>>>> on my
>>>>> LFS (containing the LFS kernel) partition can this work?
>>>>> Can i even use UUIDs for lfs?
>>>>> Did i anything else wrong?
>>>>>
>>>>> my host system: Ubuntu 12.10
>>>>> my lfs version 7.2
>>>>>
>>>>
>>> I have created an initramfs. Here the log:
>>>
>>> root:/# mkinitramfs
>>> Creating initrd.img-no-kmods... cp: Aufruf von stat f�r
>>> �/etc/udev/udev.conf� nicht m�glich: Datei oder Verzeichnis nicht
>>> gefunden
>>> install: Aufruf von stat f�r �/usr/share/mkinitramfs/init.in� nicht
>>> m�glich: Datei oder Verzeichnis nicht gefunden
>>> done.
>>> root:/#
>> I do not understand german, but I have played a lot with mkinitramfs,
>>
>> So I think you got 2 "file not found" errors.
>> The first one (/etc/udev/udev.conf) is harmless, and always occurs
>> with modern udev.
>> The second one might be the explanation to your problem:
>> init.in is renamed to init in the initramfs, and is the heart of the
>> initramfs system.
>> If it is not there, nothing can work.
>>
>> Haven't you overlooked the second part of the mkinitramfs installation
>> (cat>  /usr/share/mkinitramfs/init.in<<  EOF)?
>>
>> Also, if you compiled the kernel with module support, you'd better
>> type mkinitramfs VERSION, where VERSION is the name of the modules
>> directory in /lib/modules.
>>
>> Actually, the text in the BLFS page is somewhat misleading: When not
>> specifying VERSION, you do not include
>> the kernel modules in the initramfs at all, so chances are that it
>> does not work if your kernel has modules.
>>
> I don't have any kernel modules. I need the initramfs only for the UUIDs
> I didn't created the the init.in. Didn't see that part. Here my new log
> from mkinitramfs:
> root:/# mkinitramfs
> Creating initrd.img-no-kmods... cp: Aufruf von stat f�r
> �/etc/udev/udev.conf� nicht m�glich: Datei oder Verzeichnis nicht gefunden
> done.
> root:/#
> I still get the same error. (WHY?!) Regards Sven 
Well,
You shouldn't...

Have you copied the new initrd to /boot ?
One thing is sure. If /init is found and executed in the initramfs,
then an error could still occur, but should be different.

One possibility is:
Something got wrong when creating the initrd (including not copying it),
and the kernel rejects it because it is malformed.
In this case, the kernel continues without the initrd
and fails as before. You may see an error message
about the initrd if you are able
to scroll back the console with shift-PgUp.

Regards
Pierre





More information about the lfs-support mailing list