Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
Am Montag, 9. Februar 2009 23:26:46 schrieb Stroller: Am I not correct in thinking that initramfs used to be / can be / was originally a separate file which goes in /boot and is described with an extra boot parameter? Yes, you are. There are several ways nowadays. I use the easy one: Populate a directory tree with the contents of the initramfs and configure that directory in menuconfig. The kernel build system handles the details. I wasn't aware that you could embed the initramfs into the kernel itself - after reading Neil's message yesterday I looked up more about the initramfs, contemplated about the idea of doing so and decided naw, you'll never be able to do that, it would make the kernel too big and take up too much memory. Nope. It's freed right after swithing to the real root fs. I certainly can recognise that you're doing something bogus, because your kernel parameters use realroot= and not just root= Luckily the kernel ignores everything it doesn't know so you can give it any option you like. In this case I use realroot inside initramfs to tell it (by parsing /proc/cmdline) what's the real volume for the encrypted root device (/dev/mapper/c-root) listed in fstab. Bye... Dirk signature.asc Description: This is a digitally signed message part.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On Monday 09 February 2009, Dirk Heinrichs wrote: Am Montag, 9. Februar 2009 17:51:24 schrieb Stroller: I don't like initrd and the longer kernel lines in grub.conf that they require. Errh, which longer lines in grub.conf? Here's mine, as an example: title=Gentoo Linux kernel /vmlinux.gz realroot=/dev/evms/root vga=0x31B notsc Quite short and simple, isn't it? You don't even recognize that it uses an initramfs (because it's embedded in the kernel itself). How do you embed the initramfs in the kernel? -- Regards, Mick signature.asc Description: This is a digitally signed message part.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On Tue, 2009-02-10 at 18:46 +, Mick wrote: On Monday 09 February 2009, Dirk Heinrichs wrote: Am Montag, 9. Februar 2009 17:51:24 schrieb Stroller: I don't like initrd and the longer kernel lines in grub.conf that they require. Errh, which longer lines in grub.conf? Here's mine, as an example: title=Gentoo Linux kernel /vmlinux.gz realroot=/dev/evms/root vga=0x31B notsc Quite short and simple, isn't it? You don't even recognize that it uses an initramfs (because it's embedded in the kernel itself). How do you embed the initramfs in the kernel? CONFIG_INITRAMFS_SOURCE
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
Stroller wrote: On 9 Feb 2009, at 07:42, Dale wrote: Stroller wrote: ... strol...@hex ~ $ sudo mount -v -L boot /dev/sda1 on /boot type ext2 (rw,noatime) strol...@hex ~ $ ... You may have done this but just in case, you did use the tools to set the label on the drive right? tune2fs does it for ext2 and ext3. I'm not sure about ext4. Good question! I thought for a moment that the above demonstrated that I had done so, but of course it is necessary to boot from a LiveCD instead: r...@sysresccd /root % mount -v -L root /mnt/gentoo mount: you didn't specify a filesystem type for /dev/sda6 I will try type ext4 /dev/sda6 on /mnt/gentoo type ext4 (rw) r...@sysresccd /root % Stroller. Since ext4 is new and I have no experience with it yet, you may want to take this lightly. I think cfdisk, or fdisk, would show if the label was set or not. It to my knowledge can't change the label but it does show it if it is set. It should do that even if booted from the drive as well, just don't change anything. ;-) Dale :-) :-)
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 07:56, Stroller wrote: ... You may have done this but just in case, you did use the tools to set the label on the drive right? tune2fs does it for ext2 and ext3. I'm not sure about ext4. Good question! I thought for a moment that the above demonstrated that I had done so, but of course it is necessary to boot from a LiveCD instead: r...@sysresccd /root % mount -v -L root /mnt/gentoo mount: you didn't specify a filesystem type for /dev/sda6 I will try type ext4 /dev/sda6 on /mnt/gentoo type ext4 (rw) r...@sysresccd /root % I should have said: Thank you for the suggestion, though. Stroller.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
Stroller wrote: On 9 Feb 2009, at 07:56, Stroller wrote: ... You may have done this but just in case, you did use the tools to set the label on the drive right? tune2fs does it for ext2 and ext3. I'm not sure about ext4. Good question! I thought for a moment that the above demonstrated that I had done so, but of course it is necessary to boot from a LiveCD instead: r...@sysresccd /root % mount -v -L root /mnt/gentoo mount: you didn't specify a filesystem type for /dev/sda6 I will try type ext4 /dev/sda6 on /mnt/gentoo type ext4 (rw) r...@sysresccd /root % I should have said: Thank you for the suggestion, though. Stroller. Your welcome. Here is some more info. cfdisk (util-linux-ng 2.14.1) Disk Drive: /dev/hdb Size: 80026361856 bytes, 80.0 GB Heads: 255 Sectors per Track: 63 Cylinders: 9729 Name Flags Part Type FS Type [Label]Size (MB) -- hdb1 PrimaryLinux ext3[backup]80023.75 That partition is labeled backup on there. It is a drive I am not using so I could umount it to set the label. Hope that helps. Dale :-) :-)
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 08:02, Dale wrote: ... r...@sysresccd /root % mount -v -L root /mnt/gentoo mount: you didn't specify a filesystem type for /dev/sda6 I will try type ext4 /dev/sda6 on /mnt/gentoo type ext4 (rw) r...@sysresccd /root % Since ext4 is new and I have no experience with it yet, you may want to take this lightly. I think cfdisk, or fdisk, would show if the label was set or not. It to my knowledge can't change the label but it does show it if it is set. It should do that even if booted from the drive as well, just don't change anything. ;-) Hi Dale, Thanks for your help. I thought the above DID demonstrate that the partition is labelled correctly - does the -L flag not say mount the partition with the following label? Anyway, I checked with cfdisk, and because the output is formatted a bit too pretty for email I found another way to check the partition's / filesystem's label: $ sudo e2label /dev/sda1 boot $ sudo e2label /dev/sda6 root $ This matches the label I was using in grub.conf: $ grep LABEL= /boot/grub/grub.conf #kernel /boot/bzImage-2.6.28-gentoo-r1 root=LABEL=root $ Stroller.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On Mon, 9 Feb 2009 07:26:38 +, Stroller wrote: I can find numerous references to this syntax going back to 2005 or so, and some major distros seem to use it as the default way of describing root= to the kernel. It would appear that you need an initrd/initramfs to use this. http://mulix.livejournal.com/84768.html -- Neil Bothwick Can you be a closet claustrophobic? signature.asc Description: PGP signature
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 09:18, Neil Bothwick wrote: On Mon, 9 Feb 2009 07:26:38 +, Stroller wrote: I can find numerous references to this syntax going back to 2005 or so, and some major distros seem to use it as the default way of describing root= to the kernel. It would appear that you need an initrd/initramfs to use this. http://mulix.livejournal.com/84768.html Ah! Many thanks. I will live without this shortcut, then, I think. I bow to your vastly superior Google-Fu. Stroller.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On Mon, 9 Feb 2009 09:28:42 +, Stroller wrote: I bow to your vastly superior Google-Fu. Not really, I just hit the same problem as you a while ago, and came up with the same solution. -- Neil Bothwick Adolescence, n.: The stage between puberty and adultery. signature.asc Description: PGP signature
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
It would appear that you need an initrd/initramfs to use this. Ah! Many thanks. I will live without this shortcut, then, I think. If you, like me, prefere to compile your own kernel, there's still an easy way to create a initrd for your kernel: with genkernel I use this command to compile my pre-configured kernel genkernel --no-clean --no-mrproper \ --makeopts=-j2 --loglevel=5 --install --symlink all To include support for disk labels use the switch --disklabel
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 10:32, Michael Hampicke wrote: It would appear that you need an initrd/initramfs to use this. Ah! Many thanks. I will live without this shortcut, then, I think. If you, like me, prefere to compile your own kernel, there's still an easy way to create a initrd for your kernel: with genkernel I use this command to compile my pre-configured kernel genkernel --no-clean --no-mrproper \ --makeopts=-j2 --loglevel=5 --install --symlink all To include support for disk labels use the switch --disklabel I am resistant to the idea of using an initrd, because IIRC it's an extra file that has to be stored in /boot, creating extra clutter in there. I'm kinda thinking that using the label prevents failed boots in the event that the drives are recognised in a different order in the future, but nevertheless I don't like initrd and the longer kernel lines in grub.conf that they require. I appreciate this is somewhat irrational. Stroller.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On Monday 09 February 2009 18:51:24 Stroller wrote: On 9 Feb 2009, at 10:32, Michael Hampicke wrote: It would appear that you need an initrd/initramfs to use this. Ah! Many thanks. I will live without this shortcut, then, I think. If you, like me, prefere to compile your own kernel, there's still an easy way to create a initrd for your kernel: with genkernel I use this command to compile my pre-configured kernel genkernel --no-clean --no-mrproper \ --makeopts=-j2 --loglevel=5 --install --symlink all To include support for disk labels use the switch --disklabel I am resistant to the idea of using an initrd, because IIRC it's an extra file that has to be stored in /boot, creating extra clutter in there. I'm kinda thinking that using the label prevents failed boots in the event that the drives are recognised in a different order in the future, but nevertheless I don't like initrd and the longer kernel lines in grub.conf that they require. I appreciate this is somewhat irrational. Not really. initrds are there for two cases, and only two cases: 1) a generic boot process for precompiled binary distros where the maintainers has no idea what the user has and must support all combinations for all possible users. 2) Boot scenarios where you require access to the root device before you have access to the root device (/ on lvm, boot off some raid setups, etc) The first does not apply to gentoo at all. If you don't have the second, initrd is just extra unnecessary clutter and complexity and you are quite correct to resist it's presence. -- alan dot mckinnon at gmail dot com
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
Am Montag, 9. Februar 2009 17:51:24 schrieb Stroller: I don't like initrd and the longer kernel lines in grub.conf that they require. Errh, which longer lines in grub.conf? Here's mine, as an example: title=Gentoo Linux kernel /vmlinux.gz realroot=/dev/evms/root vga=0x31B notsc Quite short and simple, isn't it? You don't even recognize that it uses an initramfs (because it's embedded in the kernel itself). Bye... Dirk signature.asc Description: This is a digitally signed message part.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 18:03, Dirk Heinrichs wrote: Am Montag, 9. Februar 2009 17:51:24 schrieb Stroller: I don't like initrd and the longer kernel lines in grub.conf that they require. Errh, which longer lines in grub.conf? Here's mine, as an example: title=Gentoo Linux kernel /vmlinux.gz realroot=/dev/evms/root vga=0x31B notsc Quite short and simple, isn't it? You don't even recognize that it uses an initramfs (because it's embedded in the kernel itself). Am I not correct in thinking that initramfs used to be / can be / was originally a separate file which goes in /boot and is described with an extra boot parameter? I wasn't aware that you could embed the initramfs into the kernel itself - after reading Neil's message yesterday I looked up more about the initramfs, contemplated about the idea of doing so and decided naw, you'll never be able to do that, it would make the kernel too big and take up too much memory. I certainly can recognise that you're doing something bogus, because your kernel parameters use realroot= and not just root= Stroller.
[gentoo-user] Using root=LABEL=xxxx in grub.conf
Hi there, Is anyone using root=LABEL= grub.conf, please? Anyone also using ext4 for their root? I can find numerous references to this syntax going back to 2005 or so, and some major distros seem to use it as the default way of describing root= to the kernel. http://www.linuxforums.org/forum/redhat-fedora-linux-help/23010-root-label-grub-conf.html http://linux.derkeiler.com/Mailing-Lists/RedHat/2005-01/0026.html But it doesn't work for me. :( Here's a working configuration: strol...@hex ~ $ cat /etc/fstab # /etc/fstab: static file system information. # # fsmountpoint typeopts dump/pass # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts. LABEL=boot /boot ext2noauto,noatime 1 2 LABEL=root / ext4noatime 0 1 LABEL=swap noneswapsw 0 0 /dev/cdrom /mnt/cdrom autonoauto,ro 0 0 # glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for # POSIX shared memory (shm_open, shm_unlink). # (tmpfs is a dynamically expandable/shrinkable ramdisk, and will # use almost no memory if not populated with files) shm /dev/shmtmpfs nodev,nosuid,noexec 0 0 strol...@hex ~ $ sudo mount -v -L boot /dev/sda1 on /boot type ext2 (rw,noatime) strol...@hex ~ $ cat /boot/grub/grub.conf default 0 timeout 30 splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Gentoo Linux 2.6.28-gentoo-r1 root (hd0,0) kernel /boot/bzImage-2.6.28-gentoo-r1 root=/dev/sda6 strol...@hex ~ $ If I simply change the kernel line of grub.conf to: kernel /boot/bzImage-2.6.28-gentoo-r1 root=LABEL=root Then I get a kernel panic upon boot: VFS: Cannot open root device LABEL=root or unknown-block(0,0) 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) Full screenshot of kernel panic: http://stuff.stroller.uk.eu.org/KernelPanic.png Googling this error brings up quite a number of hits, and I reckon I must have spent a couple of hours now trying the most popular resolutions. This is quite a minor error - if I wasn't such an obsessive-compulsive I could easily ignore it, but I am, and it's frustrating the heck out of me. One forum thread / bug report suggests the ata_piix module is to blame, but compiling that statically into my kernel doesn't help. http://www.linuxquestions.org/questions/fedora-35/fc2-vfs-cannot-open-root-device-label-or-unknown-block00-269230/ https://bugzilla.redhat.com/show_bug.cgi?id=126953 Another post (can't find the reference now) suggests disabling Initial RAM filesystem and RAM disk (initramfs/initrd) support but that doesn't make any difference, either. Finally, this thread http://kerneltrap.org/node/2318 says check your .config and look for CONFIG_BLK_DEV_IDE and CONFIG_BLK_DEV_IDEDISK entries. This is quite an old post, however, and these options aren't available in 2.6.28 (from my distro); I enabled CONFIG_BLK_DEV_IDEPCI instead, but it has no positive effect. I had better mention that I am using a 3ware 9500 RAID controller on the PCI bus. I suspect the problem is specific to this (and my combination of modules / compiled-in kernel drivers), but I thought I would throw the question out there see if any other ext4 users had also seen the same thing. Thanks in advance for any suggestions, Stroller.
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
Stroller wrote: Hi there, Is anyone using root=LABEL= grub.conf, please? Anyone also using ext4 for their root? I can find numerous references to this syntax going back to 2005 or so, and some major distros seem to use it as the default way of describing root= to the kernel. http://www.linuxforums.org/forum/redhat-fedora-linux-help/23010-root-label-grub-conf.html http://linux.derkeiler.com/Mailing-Lists/RedHat/2005-01/0026.html But it doesn't work for me. :( Here's a working configuration: strol...@hex ~ $ cat /etc/fstab # /etc/fstab: static file system information. # # fsmountpointtypeopts dump/pass # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts. LABEL=boot/bootext2noauto,noatime1 2 LABEL=root/ext4noatime0 1 LABEL=swapnoneswapsw0 0 /dev/cdrom/mnt/cdromautonoauto,ro0 0 # glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for # POSIX shared memory (shm_open, shm_unlink). # (tmpfs is a dynamically expandable/shrinkable ramdisk, and will # use almost no memory if not populated with files) shm/dev/shmtmpfsnodev,nosuid,noexec0 0 strol...@hex ~ $ sudo mount -v -L boot /dev/sda1 on /boot type ext2 (rw,noatime) strol...@hex ~ $ cat /boot/grub/grub.conf default 0 timeout 30 splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Gentoo Linux 2.6.28-gentoo-r1 root (hd0,0) kernel /boot/bzImage-2.6.28-gentoo-r1 root=/dev/sda6 strol...@hex ~ $ If I simply change the kernel line of grub.conf to: kernel /boot/bzImage-2.6.28-gentoo-r1 root=LABEL=root Then I get a kernel panic upon boot: VFS: Cannot open root device LABEL=root or unknown-block(0,0) 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) Full screenshot of kernel panic: http://stuff.stroller.uk.eu.org/KernelPanic.png Googling this error brings up quite a number of hits, and I reckon I must have spent a couple of hours now trying the most popular resolutions. This is quite a minor error - if I wasn't such an obsessive-compulsive I could easily ignore it, but I am, and it's frustrating the heck out of me. One forum thread / bug report suggests the ata_piix module is to blame, but compiling that statically into my kernel doesn't help. http://www.linuxquestions.org/questions/fedora-35/fc2-vfs-cannot-open-root-device-label-or-unknown-block00-269230/ https://bugzilla.redhat.com/show_bug.cgi?id=126953 Another post (can't find the reference now) suggests disabling Initial RAM filesystem and RAM disk (initramfs/initrd) support but that doesn't make any difference, either. Finally, this thread http://kerneltrap.org/node/2318 says check your .config and look for CONFIG_BLK_DEV_IDE and CONFIG_BLK_DEV_IDEDISK entries. This is quite an old post, however, and these options aren't available in 2.6.28 (from my distro); I enabled CONFIG_BLK_DEV_IDEPCI instead, but it has no positive effect. I had better mention that I am using a 3ware 9500 RAID controller on the PCI bus. I suspect the problem is specific to this (and my combination of modules / compiled-in kernel drivers), but I thought I would throw the question out there see if any other ext4 users had also seen the same thing. Thanks in advance for any suggestions, Stroller. You may have done this but just in case, you did use the tools to set the label on the drive right? tune2fs does it for ext2 and ext3. I'm not sure about ext4. I only mention this cause this sounds like something I would do. Dale :-) :-)
Re: [gentoo-user] Using root=LABEL=xxxx in grub.conf
On 9 Feb 2009, at 07:42, Dale wrote: Stroller wrote: ... strol...@hex ~ $ sudo mount -v -L boot /dev/sda1 on /boot type ext2 (rw,noatime) strol...@hex ~ $ ... You may have done this but just in case, you did use the tools to set the label on the drive right? tune2fs does it for ext2 and ext3. I'm not sure about ext4. Good question! I thought for a moment that the above demonstrated that I had done so, but of course it is necessary to boot from a LiveCD instead: r...@sysresccd /root % mount -v -L root /mnt/gentoo mount: you didn't specify a filesystem type for /dev/sda6 I will try type ext4 /dev/sda6 on /mnt/gentoo type ext4 (rw) r...@sysresccd /root % Stroller.