boot root no /dev

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greetings helpful people, welcome to me your kindly list  :)

I set up raid-1 on new drive /dev/sdb, and copied files from /dev/sda. I test boot to it with following grub.conf:

title  Gentoo 2.6.18-r4-md
root   (hd1,0)
kernel /2.6.18-gentoo-r4-md root=/dev/md1 dxs_support=5 video=mtrr,vesafb:1024x768

/dev/md1 corresponds to /dev/sd*2 which is root part. (/dev/sd*1 is /boot)

Kernel autodetects and reiserfs looks happy with it, then I get "Warning: unable to open an initial console." This an error that occurs in init/init.c after setting up the initial rootfs and freeing initial memory. After the warning init.c tries to run /sbin/init, /etc/init, /bin/init, or /bin/sh.

I believe it succeeds because then udev errors scroll by endlessly and killing things with magic-sysrq give me the impression that bash is running. So I get the impression that /dev/md1 got mounted automagically. I did create an empty /dev dir on md1 for /dev to mount to, but I didn't copy anything from original /dev (shouldn't have to right?) It just occurred to me to cd-boot and see if the original system is cheating with static /dev/ entries--it was originally a devfs system.

The kernel docs imply (it wouldn't be appropriate to be crystal clear) that there is always a default initramfs built in if not overridden, correct? In my source it looks like that would be:

---

# This is a very simple, default initramfs

dir /dev 0755 0 0
nod /dev/console 0600 0 0 c 5 1
dir /root 0700 0 0
# file /kinit usr/kinit/kinit 0755 0 0
# slink /init kinit 0755 0 0

---

in the course of my wanderings I tried making my own initramfs list with the addition of "nod /dev/md1 0600 0 0 b 9 1" which makes no difference.

in my kernel config:

CONFIG_INITRAMFS_SOURCE="/root/my_initramfs_list"
CONFIG_INITRAMFS_ROOT_UID=0
CONFIG_INITRAMFS_ROOT_GID=0

# CONFIG_BLK_DEV_RAM is not set
CONFIG_BLK_DEV_INITRD=y

Note that sometime in 2.6.17 the CONFIG_BLK_DEV_RAM option was given to break out ramdisk from INITRD. CONFIG_BLK_DEV_INITRD now enables only initramfs by itself but it has to be enabled along with CONFIG_BLK_DEV_RAM if you want a ramdisk. Maybe I'll build a 2.6.16 md kernel and see what happens.

Is it required that this initramfs be built-in so that I have /dev nodes? How can I verify it is doing so? In init/initramfs.c it seems I should get a message from printk(KERN_INFO "Unpacking initramfs..."); which I never see even when successfully booting this kernel from /dev/sda.

Thanks for any assistance...


-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux