You are not logged in.
Pages: 1
I can't seem to figure this problem out, no matter what I put in root= of my kernel line for grub I can't get udev to work.
fdisk -l:
Disk /dev/hda: 203.9 GB, 203928109056 bytes
255 heads, 63 sectors/track, 24792 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 5 40162 83 Linux
/dev/hda2 6 38 265072+ 82 Linux swap / Solaris
/dev/hda3 39 24792 198836505 83 Linux
only configuration thats worked so far:
# (0) Arch Linux
title Arch Linux [/boot/vmlinuz]
root (hd0,0)
kernel /vmlinuz26 root=/dev/hda3 ro vga=792
initrd /initrd26.img
everthing else I've tryed has failed.
/etc/fstab:
# <file system> <dir> <type> <options> <dump> <pass>
none /dev/pts devpts defaults 0 0
none /dev/shm tmpfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
usbfs /proc/bus/usb usbfs defaults,users 0
0
/dev/cdroms/cdrom0 /mnt/cd iso9660 ro,user,noauto,unhide 0 0
/dev/cdroms/cdrom0 /mnt/dvd udf ro,user,noauto,unhide 0 0
/dev/floppy/0 /mnt/fl vfat user,noauto 0 0
/dev/discs/disc0/part3 / ext3 defaults 0 1
/dev/discs/disc0/part1 /boot ext2 defaults 0 1
/dev/discs/disc0/part2 swap swap defaults 0 0
#/dev/hda3 / ext3 defaults 0 1
#/dev/hda1 /boot ext2 defaults 0 1
#/dev/hda2 swap swap defaults 0 0
2.6.14-ARCH
Offline
try the steps listed in the first post in this thread
http://bbs.archlinux.org/viewtopic.php?t=15906
you probably have to start with step 5, the migrate-udev .
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
nope still same exact error, from the whole list of things to do migrate-udev is the only thing that give any type of output
# migrate-udev
creating device nodes: console null zero
# udev doesn't bring up any errors
this is the kernel panic:
VFS: unable to mount root device "hda3" bad or unknown-block (0:0)
Please append the correct "root=" option
I typed that from memory so it might be a little inaccurate.
only way I can get it to work is by adding this to my boot options:
initrd /initrd26.img
Offline
root is the partition where grub will find the kernel. It is NOT a name for "/". Therefore, if you have the kernel at /dev/hda1, root has to be /dev/hda1.
It should be
# (0) Arch Linux
title Arch Linux [/boot/vmlinuz]
root (hd0,0)
kernel /vmlinuz26 root=/dev/hda1 ro vga=792
initrd /initrd26.img
You can change the string by typing "e" inside the grub menu. Then boot and change /boot/grub/menu.lst.
Frumpus ♥ addict
[mu'.krum.pus], [frum.pus]
Offline
root is the partition where grub will find the kernel. It is NOT a name for "/". Therefore, if you have the kernel at /dev/hda1, root has to be /dev/hda1.
It should be
# (0) Arch Linux title Arch Linux [/boot/vmlinuz] root (hd0,0) kernel /vmlinuz26 root=/dev/hda1 ro vga=792 initrd /initrd26.img
You can change the string by typing "e" inside the grub menu. Then boot and change /boot/grub/menu.lst.
I thought root (hd0,0) is where the kernel is located then root=/dev/hda1 should be your / partition. I thought root= was an option passed to the kernel which I don't understand why the kernel would need to know where its at if grub already specified (hd0,0)
also the initrd /initrd26.img I though was for loading devfs with the newer kernels. That means this line shouldn't be required.
Offline
Major confusion here. I reckon udev is working fine. However, you have the wrong idea about initrd. This has nothing to do with devfs, which is dead and gone, and everything to do with booting your system correctly.
The current kernel package installs the kernel and associated initrd images. You can't boot with the kernel alone, as you have already discovered. This is because almost everything in this kernel is compiled as a module - nothing is built-in. To boot your kernel, you need support for your disk controller and root file system, at the very least, and the initrd loads the required modules, along with various others. So put that line back into grub's menu.lst, and you should be fine.
Oh, and have a glance over this - it's a longer version of this message.
Offline
I understand what your saying, but I think ext2/ext3 support should be compiled into the system as thats mainly the default linux partition other then reiserfs, whats the point of having it built as modules if probably 90% of arch users use these filesystems?
Also the idea of me already using udev was on my mind but I still don't have the naming scheme that udev has used on other distros I've used. For example /dev/hda isn't listed in my /dev/ directory but everything seems to be working with that layout.
edit: found out ext3 is compiled as a module for the default arch kernel, is there a reason for this?
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=m
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=m
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
CONFIG_XFS_EXPORT=y
# CONFIG_XFS_QUOTA is not set
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
# CONFIG_XFS_RT is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
CONFIG_QUOTA=y
CONFIG_QFMT_V1=m
CONFIG_QFMT_V2=m
CONFIG_QUOTACTL=y
CONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=y
CONFIG_FUSE_FS=m
Offline
Moo-Crumpus wrote:root is the partition where grub will find the kernel. It is NOT a name for "/". Therefore, if you have the kernel at /dev/hda1, root has to be /dev/hda1.
It should be
# (0) Arch Linux title Arch Linux [/boot/vmlinuz] root (hd0,0) kernel /vmlinuz26 root=/dev/hda1 ro vga=792 initrd /initrd26.img
You can change the string by typing "e" inside the grub menu. Then boot and change /boot/grub/menu.lst.
I thought root (hd0,0) is where the kernel is located then root=/dev/hda1 should be your / partition. I thought root= was an option passed to the kernel which I don't understand why the kernel would need to know where its at if grub already specified (hd0,0)
also the initrd /initrd26.img I though was for loading devfs with the newer kernels. That means this line shouldn't be required.
You may be right and I may be wrong. I have read some more grub howtos, and some share your point of view, some mine. The original readme is a bit weak at this point. I beg your pardon if I confused you.
Frumpus ♥ addict
[mu'.krum.pus], [frum.pus]
Offline
I understand what your saying
No offence, but I don't think you do. I'll take another shot at it.
There have been quite a few threads on the pros and cons of using initrd, so I'm not going to go in to that again. Suffice to say that Judd and the devs decided to run with it, and provided the required info to enable users to migrate.
I think ext2/ext3 support should be compiled into the system as thats mainly the default linux partition other then reiserfs, whats the point of having it built as modules if probably 90% of arch users use these filesystems?
Because that's the way initrd works - the kernel is made as modular as possible, and the initrd image provides the necessary modules at boot time.
Also the idea of me already using udev was on my mind but I still don't have the naming scheme that udev has used on other distros I've used. For example /dev/hda isn't listed in my /dev/ directory but everything seems to be working with that layout.
OK - that does sound like a udev problem. We'll come back to that.
found out ext3 is compiled as a module for the default arch kernel, is there a reason for this?
Because that's the way initrd works - the kernel is made as modular as possible, and the initrd image provides the necessary modules at boot time. (Hold on - that sounds familiar......... )
You've already established that you can boot your system if you include the initrd line in your grub config. That's the way it's meant to work, so why don't you want to do it that way?
Offline
xaos5 wrote:I understand what your saying
No offence, but I don't think you do. I'll take another shot at it.
There have been quite a few threads on the pros and cons of using initrd, so I'm not going to go in to that again. Suffice to say that Judd and the devs decided to run with it, and provided the required info to enable users to migrate.
Just because I don't know the reasoning for the devs to not compile the filesystems as built-in and then require an extra step which the installer for 0.7 doesn't include (initrd line for grub) doesn't mean I don't understand.
xaos5 wrote:I think ext2/ext3 support should be compiled into the system as thats mainly the default linux partition other then reiserfs, whats the point of having it built as modules if probably 90% of arch users use these filesystems?
Because that's the way initrd works - the kernel is made as modular as possible, and the initrd image provides the necessary modules at boot time.
xaos5 wrote:found out ext3 is compiled as a module for the default arch kernel, is there a reason for this?
Because that's the way initrd works - the kernel is made as modular as possible, and the initrd image provides the necessary modules at boot time. (Hold on - that sounds familiar......... )
My reasoning for having at least ext2/ext3/reiserfs built-in as the ONLY three options arch linux 0.7 installer gives for formatting, So why not at least include the basics built-in for the kernel? Making the filesystems builtin would simplify things and should allow for no initrd. Then users wouldn't have to go and modify the default grub config before they can even boot. I agree the kernel should be made modular as possible but if you read any kernel tutorial/howto it will specifically tell you to not to compile your main filesystems as modules, as then you need an initrd, which to me is an extra step that isn't need.
Offline
the 0.7 installer gives 5 options, not 3 :
reiserfs , ext2, ext3 , xfs, jfs
Reasons to leave them out : saving memory and increasing speed.
I only use ext3 and tweaked mkinitrd.conf to not use the modules for reiserfs, xfs and jfs.
This saved me 500k+ ram and also meant my kernel didn't have to waste clockcycles for unused modules.
If those modules had been compiled in, i would not have been able to remove them except by building my own kernel.
For me an important asset of AL is that it leaves ME in control and using initrd has increased the number of things i can control.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
the 0.7 installer gives 5 options, not 3 :
reiserfs , ext2, ext3 , xfs, jfsReasons to leave them out : saving memory and increasing speed.
I only use ext3 and tweaked mkinitrd.conf to not use the modules for reiserfs, xfs and jfs.
This saved me 500k+ ram and also meant my kernel didn't have to waste clockcycles for unused modules.
If those modules had been compiled in, i would not have been able to remove them except by building my own kernel.
For me an important asset of AL is that it leaves ME in control and using initrd has increased the number of things i can control.
alright that makes alot of sense, sorry I forgot two options in the installer. Is there a reason the initrd line is left out from the installer then?
Offline
when the 0.7 installer was made, initrd was still several months away.
The same is true for the replacement of devfsd by udev.
Let's hope the installer is updated with the official 0.7.1 release (no date known when that will be ready).
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
i'm hoping they get it into noodle cause it would help a lot
Offline
Pages: 1