You are not logged in.
Hello everyone
I have installed Archlinux 32bits with the default kernel. But few months ago I added 2GB more of ram to my machine, so, now, it has 4 GB of ram.
For that Archlinux 32bits detects this amount of ram, I decided compile a new kernel using the PKGBUILD from the AUR for PAE-Kernel: http://aur.archlinux.org/packages.php?ID=24469
I was successful doing it.
I edited the file /boot/grub/menu.lst and added the new kernel. But when it loads I get this error:
ERROR: Unable to determine major/minor number of root device '/dev/sda1'
I have searched in the forum and I find a lot of information related to this error.
But what catches my attention is that I have compared the PKGBUILD of the default kernel and its corresponding config file with the PKGBUILD of the PAE Kernel from the AUR and its corresponding config file, and I don't see any change in the PKGBUILD and in the config file from PAE kernel that could to cause the mentioned error, I mean the files are almost identical:
$ diff -w kernel26/PKGBUILD kernel26-pae/PKGBUILD
4,6c4,6
< pkgbase="kernel26"
< pkgname=('kernel26' 'kernel26-headers' 'kernel26-docs') # Build stock -ARCH kernel
< # pkgname=kernel26-custom # Build kernel with a different name
---
> # Contributor: Tom Wizetek <tom@wizetek.com>
> pkgbase="kernel26-pae"
> pkgname=('kernel26-pae' 'kernel26-pae-headers')
11d10
< makedepends=('xmlto' 'docbook-xsl')
26,28c25,26
< 'cc49d27766f55df22f9cb78228880e78'
< '8f8059fa252e2f81b31be0c1bdbef123'
< '25584700a0a679542929c4bed31433b6')
---
> '823a5f7304bcde8e5cf6133e1d97a8ff'
> '8640846f681d6f2b3f4c4043d7974cfb')
64,65c62,63
< package_kernel26() {
< pkgdesc="The Linux Kernel and modules"
---
> package_kernel26-pae() {
> pkgdesc="The Linux Kernel and modules with PAE support (HIGHMEM64G)"
113,114c111,112
< package_kernel26-headers() {
< pkgdesc="Header files and scripts for building modules for kernel26"
---
> package_kernel26-pae-headers() {
> pkgdesc="Header files and scripts for building modules for kernel26-pae"
222c220
< package_kernel26-docs() {
---
> package_kernel26-pae-docs() {
232a231,234
>
> # workaround for AUR split package upload
> pkgname=kernel26-pae
> pkgdesc="The Linux Kernel and modules with PAE support (HIGHMEM64G)"
$ diff -w kernel26/config kernel26-pae/config
384,385c384,385
< CONFIG_HIGHMEM4G=y
< # CONFIG_HIGHMEM64G is not set
---
> # CONFIG_HIGHMEM4G is not set
> CONFIG_HIGHMEM64G=y
5464a5465,5468
>
> # Tom Wizetek: settings not included in stock config (set to default)
> CONFIG_XEN=n
> CONFIG_I2O_EXT_ADAPTEC_DMA64=y
As you see in the comparation of the PKGBUILD files, the PKGBUILD for default kernel of Archlinux has this line:
makedepends=('xmlto' 'docbook-xsl')
The PKGBUILD for PAE kernel does not have this line.
Also, in the comparation of config files the difference is in the config file for PAE kernel has disabled CONFIG_HIGHMEM4G, enabled CONFIG_HIGHMEM64G and added CONFIG_XEN=n and CONFIG_I2O_EXT_ADAPTEC_DMA64=y.
Regarding to CONFIG_HIGHMEM4G and CONFIG_HIGHMEM64G I think this is correct becouse this is what I want.
Regarding to CONFIG_XEN=n and CONFIG_I2O_EXT_ADAPTEC_DMA64=y, I have searched information related, I understood this parameters has no relation in some way with the error mentioned (perhaps I am wrong about this).
Respect to the line makedepends=('xmlto' 'docbook-xsl') included in the PGKBUILD of default kernel but not in the PKGBUILD of PAE-Kernel, I think it does not have relation with the error, merely, is a dependency to the compilation process, but in that process, I don't got any message of error.
Maybe I am wrong with all this, maybe the mentioned parameters, yes, are related to the error.
Can anyone say if am I wrong or not?.
In case I am right about this, why I get that error if the new Kernel (PAE) was compiled changing parameters that has no relation with the correct recognition of partitions at the hard disk?
Thanks in advance.
Additional information:
/boot/grub/menu.lst:
# Config file for GRUB - The GNU GRand Unified Bootloader
# /boot/grub/menu.lst
# DEVICE NAME CONVERSIONS
#
# Linux Grub
# -------------------------
# /dev/fd0 (fd0)
# /dev/sda (hd0)
# /dev/sdb2 (hd1,1)
# /dev/sda3 (hd0,2)
#
# FRAMEBUFFER RESOLUTION SETTINGS
# +-------------------------------------------------+
# | 640x480 800x600 1024x768 1280x1024
# ----+--------------------------------------------
# 256 | 0x301=769 0x303=771 0x305=773 0x307=775
# 32K | 0x310=784 0x313=787 0x316=790 0x319=793
# 64K | 0x311=785 0x314=788 0x317=791 0x31A=794
# 16M | 0x312=786 0x315=789 0x318=792 0x31B=795
# +-------------------------------------------------+
# for more details and different resolutions see
# http://wiki.archlinux.org/index.php/GRUB#Framebuffer_Resolution
# general configuration:
timeout 5
default 0
color light-blue/black light-cyan/blue
# boot sections follow
# each is implicitly numbered from 0 in the order of appearance below
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*
# (0) Arch Linux
title Arch Linux
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/sda1 ro
initrd /boot/kernel26.img
# (1) Arch Linux
title Arch Linux (PAE Kernel)
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/sda1 ro
initrd /boot/kernel26-pae.img
# (2) Arch Linux
title Arch Linux Fallback
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/sda1 ro
initrd /boot/kernel26-fallback.img
# (3) Arch Linux
title Arch Linux Fallback (PAE Kernel)
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/sda1 ro
initrd /boot/kernel26-pae-fallback.img
# (4) Windows
title Windows
rootnoverify (hd0,3)
makeactive
chainloader +1
You can see the PKGBUILD and config file to compile the ABS Kernel in the AUR: http://aur.archlinux.org/packages.php?ID=24469
/etc/mkinitcpio.conf:
MODULES=""
BINARIES=""
FILES=""
HOOKS="base udev autodetect pata scsi sata filesystems"
/etc/fstab:
#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
devpts /dev/pts devpts defaults 0 0
shm /dev/shm tmpfs nodev,nosuid 0 0
#/dev/cdrom /media/cd auto ro,user,noauto,unhide 0 0
#/dev/dvd /media/dvd auto ro,user,noauto,unhide 0 0
#/dev/fd0 /media/fl auto user,noauto 0 0
/dev/sda1 / ext4 defaults 0 1
/dev/sda2 swap swap defaults 0 0
/dev/sda3 /home ext4 defaults 0 1
/dev/sdb1 /media/usbstick vfat rw,flush,user 0 0
Last edited by zuargo (2011-03-07 09:15:01)
Offline
Shouldn't your grub kernel line for the PAE kernel mention "vmlinuz26-pae" instead of "vmlinuz26"?
I think posting the default Arch kernel .config and PKGBUILD wasn't necessary . That's quite a bit of text.
Offline
Sorry, my mistake, that solved the problem.
Sorry, I am very newbie in all of this.
Thank you very much
Offline
No worries, you provided the required information to solve the problem... Glad to have been of help.
Offline