You are not logged in.
Bonjour, tout les gens. Here's the solution. I've experienced the problems myself and I've solved them myself. I hope it also works for all you out there having problems with the most recent grand update.
:!: The update I wrote this how-to for was that large one which includes GNOME 2.12 and Arch Kernel 2.6.13.
Contents:
1) Migrating from devfs to udev.
2) Reconfigure alsa.
3) Reconfigure NVIDIA.
4) F.A.Q.
4A)I've already rebooted after upgrade, now my system is broke.
4B)Kernel panic on Arch Kernel 2.6.13.
4C)Couldn't find init= on Arch Kernel 2.6.13.
4D)NVIDIA doesn't work anymore.
4E)Boot-process stuck at alsa/sound / alsa doesn't work anymore.
Summary (step-by-step):
1) Upgrade system.
2) Follow section 1: Migrating from devfs to udev, but do not reboot!
3) Follow section 2: Reconfigure alsa, but do not reboot and also, do not perform the required after-boot tasks yet!
4) Follow section 3: Reconfigure NVIDIA, but do not reboot and also, do not perform the required after-boot tasks yet!
5) Reboot system and perform the required after-reboot tasks now and FINALLY (thus after having performed all after-reboot required steps) reboot.
6) If your system still fails, post a comment. I'll see what I can do...
1) - Migrating from devfs to udev
Don't ask why, but get along with it. The main noticable difference between devfs and udev is the way devices are naming conventions.
- For example:
In devfs, the third partition of your first hard disk was called:
/dev/discs/disc0/part3
In udev, it is probably called (according to your BIOS and jumper settings and your IDE cabling):
/dev/hda3
:arrow: In general, you can rename a devfs-name to udev-name as following: /dev/discs/discX/partY becomes /dev/hdXY (where Y is now a letter, e.g. disc1 becomes hdb).
:idea: Your hard-disks are S-ATA or SCSI? The udevfs naming convention probably turned your harddisk into sdXY instead of hdXY. Make sure to read next tip!
:idea: You can use some utils to check your udevfs-names. You could check it up using cfdisk or by reading kernel messages by performing the command dmesg in a console
In order to make your system work properly, you have to change all critical devfs-names to udevfs-names. There are two places where you have to update the names:
- Your bootloader config file.
- Your fstab.
:idea: You use LILO as bootloader? The idea behind udevfs in GRUB is the same as it is for GRUB. Unfortunately, I don't have that much experience with LILO, so please consult the man-pages or another forum/how-to. See LILO mini-HOWTO for more information.
:!: After having configured LILO, you have to run lilo as root user to get things configured properly. The configuration file for LILO is /etc/lilo.conf
Your bootloader config file.
I use GRUB, so I had to change /boot/grub/menu.lst. So, the given example is based on the GRUB-configuration. You have to specify the partition where your root is located.
- For example:
My old devfs name:
kernel /vmlinuz26 root=/dev/discs/disc0/part3 ro
Went into the new, udevfs name:
kernel /vmlinuz26 root=/dev/sda3 ro
Your /etc/fstab file.
Also, you have to migrate your file system mount points.
:!: Because I have S-ATA hard-disks, the udevfs-names in the example are sdXY instead of hdXY!
- For Example:
My old devfs names:
/dev/discs/disc0/part2 swap swap defaults 0 0
/dev/discs/disc0/part3 / ext3 defaults 0 1
/dev/discs/disc0/part1 /boot ext3 defaults 0 1
/dev/discs/disc0/part4 /mnt/storage1 ext3 rw,user 0
/dev/discs/disc1/part1 /mnt/storage2 ext3 rw,user 0
Went into new, udevfs names:
/dev/sda2 swap swap defaults 0 0
/dev/sda3 / ext3 defaults 0 1
/dev/sda1 /boot ext3 defaults 0 1
/dev/sda4 /mnt/storage1 ext3 rw,user 0
/dev/sdb1 /mnt/storage2 ext3 rw,user 0
2) - Reconfigure alsa
As the new 2.6.13 Arch kernel comes along, alsa has changed. Before you reboot your system, you have to disable a few things in your rc.conf first in order to prevent heavy system errors and sometimes critical system fails.
Modifying /etc/rc.conf
You have to temporarily disable all sound facilities until you reconfigured alsa after you've booted with the new kernel 2.6.13.
- In my case, it went like this:
The old stuff:
MODULES="(...) snd-emu10k1"
DAEMONS="(...) sound (...) alsa (...)"
And the new stuff:
MODULES="(...) !snd-emu10k1"
DAEMONS="(...) !sound (...) !alsa (...)"
Reboot and reconfigure
Now, after having rebooted into the new kernel, you run alsaconf and you re-enable the sound facilities.
In my case:
The temporary stuff:
MODULES="(...) !snd-emu10k1"
DAEMONS="(...) !sound (...) !alsa (...)"
And the good stuff:
MODULES="(...) snd-emu10k1"
DAEMONS="(...) sound (...) alsa (...)"
Now, reboot your system again and every sound-related problem has been solved.
3) - Reconfigure NVIDIA
The NVIDIA-diver is compiled everytime after the kernel has been upgraded or recompiled. Unfortunately, we cannot install the NVIDIA-diver until we're in our new coasy kernel and in a real (text) console, without having any form of graphical process (Gnome, GDM, KDE, KDM, X: whatever!) running.
What you do
After having performed all required steps for your system, reboot your system. Login as regular user and THEN su into root account (it's more secure!).
Now, you manually install the NVIDIA-driver from the pacman package repository cache.
:!: Ofcoarse, I've picked the most recent driver. It's wise to do this also, but it is not required.
- Like this:
pacman -U /var/cache/pacman/pkg/nvidia-1.0.7676-3.pkg.tar.gz
Now, fire your things up again. Go look at glx_gears till your eyes pop out. Live again! Whoo-hoo!
4) - F.A.Q.
Too make this solution even more accessible...
Kernel panic on Arch Kernel 2.6.13.
Have you migrated from devfs to udev well?
:arrow: See section 1: Migrating from devfs to udev.
Couldn't find init= on Arch Kernel 2.6.13.
Have you migrated from devfs to udev well?
:arrow: See section 1: Migrating from devfs to udev and go to the bootloader section.
NVIDIA doesn't work anymore.
Have you performed reconfiguration properly?
:arrow: See section 3: Reconfigure NVIDIA
Boot-process stuck at alsa/sound / alsa doesn't work anymore.
Have you performed reconfiguration properly?
:arrow: See section 2: Reconfigure ALSA
L. M. Laurijssen
-- Simplicity is the highest level of complexity.
Offline
Offline
just a question: is he migration from /dev/discs name to /dev/hd or /dev/sd names in fstab really necassary? for me everything works fine with the old names and it seems as udev is configured to provide the /dev/discs names with the /dev/hd or /dev/sd names.
Offline
I've got such message:
"Can't load module hw_random"
and then system stops loading. Any suggestions?
Offline
add hw_random to /etc/hotplug/blacklists
Offline
just a question: is the migration from /dev/discs name to /dev/hd or /dev/sd names in fstab really necassary? for me everything works fine with the old names and it seems as udev is configured to provide the /dev/discs names with the /dev/hd or /dev/sd names.
For clearance, udev DOES NOT take /dev/discs names. It just doesn't.
In my case, got kernel panics and a lot of other errs without having changed the filesystem directors.
Have you compiled that kernel yourself? Are you sure you have compiled in udev?
L. M. Laurijssen
-- Simplicity is the highest level of complexity.
Offline
just a question: is the migration from /dev/discs name to /dev/hd or /dev/sd names in fstab really necassary? for me everything works fine with the old names and it seems as udev is configured to provide the /dev/discs names with the /dev/hd or /dev/sd names.
For clearance, udev DOES NOT take /dev/discs names. It just doesn't.
In my case, got kernel panics and a lot of other errs without having changed the filesystem directors.
Have you compiled that kernel yourself? Are you sure you have compiled in udev?
Hi,
my Kernel is a 2.6.13
my uname -a :
Linux pingus 2.6.13-ARCH #1 SMP Fri Sep 30 13:14:11 CEST 2005 i686 AMD Athlon(tm) XP 2600+ AuthenticAMD GNU/Linux
My arch works perfectly with the old names
My fstab :
/dev/discs/disc0/part6 swap swap defaults 0 0
/dev/discs/disc0/part7 / ext3 defaults 0 1
/dev/discs/disc1/part5 /home ext3 defaults 0 1
Offline
It's because udev provides devfs-style symlinks. Anyway, it's safer to move to udev/old dev scheme (who knows how long would the symlinks last).
ILLucionist, you actually didn't mention that to get to 'real console mode', one ought to change to runlevel 3 (init 3). Good job anyway, cheers ;-)
Offline
In some cases udevfs does devfs-symlinks, sometimes it just empties your /dev (well...almost). Depending on what occurred, you might have to migrate your filesystem mount points.
Anyway, sorry for the misunderstanding. To err is human... (don't slap)
L. M. Laurijssen
-- Simplicity is the highest level of complexity.
Offline
well I prefer my /dev/discs symlinks and if they disappear, I recreate them myself. (btw. I'm just backing up my udev rules )
Offline
It's because udev provides devfs-style symlinks. Anyway, it's safer to move to udev/old dev scheme (who knows how long would the symlinks last).
IIRC these symlinks are not provided by the default udev rules, but by the default Archlinux rules. I would highly suggest against removing them as they are just there to ease the transition and will be removed in the future... unless of course you want to maintain your own /dev/discs/* symlinks, but that's just more work when a real solution/scheme is already provided for you.
Offline
Thanks for the help.
I rebooted without paying attention and had to edit files with archie.
I changed menu.lst. Kernel panic disappeared. Good
I also changed my fstab.
New problem. I haven't seen it in the forums.
Warming: unable to open initial console
I can chroot into the system and do a pacman -Syu. Everything appears to work fine.
I know this is probably simple, but I haven't had this error before.
Could it be a symlink I'm missing?
"I hate rude behavior in a man. Won't tolerate it."
Offline
Run /sbin/migrate-udev. Ought to help ;-)
Offline
Ok, I didn't edit my stuff before I rebooted, so I tried to edit it with archie, and I get an error when trying to mount my disk. mount /dev/hda1 and mount /dev/hda3 both give me:
wrong fs type, bad option, bad superblock on /dev/hda1
missing codepage or some other error
...
I really don't want to lose the data on my drives, anyone know what to do?
Offline
did you make the appropriate directory in in /mnt?
Ie: mkdir /mnt/hda1, then do mount /dev/hda1 /mnt/hda1.
Offline
ah, yes, thanks, I got it booting, now to fix alsa and etc...
edit: for reconfiguring alsa, you don't need to edit any files, jsut
1. after boot, use "/etc/rc.d/alsa stop"
2. run alsaconf
3 everything else it automagical.
Offline
Thanks for the help.
/sbin/migrate-udev fixed the problem.
Using archie to mount drives.
mkdir /mnt/arch
mount /dev/hda1 /mnt/arch
Where /dev/hda1 is your root drive.
If you have a separate /boot partition you have to mount it also in order to edit /boot/grub/menu.lst. Say your boot part is /dev/hda2
mount /dev/hda2 /mnt/arch/boot
Change /etc/fstab and /boot/grub/menu.lst as written in the above posts.
If you have the problem that I had.
Then with everything still mounted.
chroot /mnt/arch /bin/bash
source /etc/profile
/sbin/migrate-udev
exit
Then umount any mounted volumes.
umount /mnt/arch
Reboot
This is what I did and I'm up and running.
Good Luck.
"I hate rude behavior in a man. Won't tolerate it."
Offline
I've made this excellent guide a sticky for the time being.
Offline
Thanks! I try to help where possible... Why don't share the knowledge with the community. Best thing I can give back to the community in exchange for this wonderful distro.
L. M. Laurijssen
-- Simplicity is the highest level of complexity.
Offline
Thanks for your most excellent guide, iLLucionist!
Offline
I fixed the boot paths without any problems, but unfortunately my network interface isn't being detected/set up.
I get an SIOCDELRT errror message during boot.
Offline
Do you have configured and compiled the new kernel yourself? Because some radically changes are made in 2.6.13.x. So, perhaps you might've missed some settings or whatsoever.
On the other hand, the Arch stock kernel could be not installed sucessfully. You could try to install the kernel manually.
:arrow: In my case...
pacman -U /var/cache/pacman/pkg/kernel26-2.6.13.2-1.pkg.tar.gz
If this doesn't work, I really have to know what you've exactly done.
L. M. Laurijssen
-- Simplicity is the highest level of complexity.
Offline
BryanY, I split up one of the other threads you posted to regarding this. Please continue this conversation here:
http://bbs.archlinux.org/viewtopic.php?t=15735
Offline
just to add to the line of thanks to iLLucionist here.
i was having allsorts of problems trying to upgrade. package errors and refusals. eventually got a partial pacman -Syu to run, then reboot to a Kernel Panic situation. didnt realise there was a devfs->udev upgrade as mentioned by cactus elsewhere.
strange that after modifying rc.conf, the reboot didnt seem to notice. had to do most things twice like a ghost version of Arch ran in the background!
Anyway, thanks again. system is running ok now.
a welcome contrast to the individual that condemned the entire distro and ran away : dustbin/troll
Offline
Thank you for the tips iLLucionist
Anyway I encountered a problem with today pacman -Syu
kernel won't upgrade from 2.6.14.2-1 to ~2.6.14.3-1, quoted message below
BTW I run stock kernel. 'testing' mirror allowed since I need kernel 2.6.14 for the Asrock Dual Sata ALi nic
#pacman -Syu
(...)
:: libcaca: local (0.9-1) appears to be newer than repo (whatah/0.7-1)
:: Above packages will be skipped. To manually upgrade use 'pacman -S <pkg>'
:: udev conflicts with hotplug. Remove hotplug? [Y/n]Remove: hotplug
Targets: aspell-0.60.4-1 cups-1.1.23-5 curl-7.15.0-1 dialog-1.0-4 gaim-1.5.0-3 gnutls-1.3.0-2 gpm-1.20.1-6 gtk2-2.8.8-1 hal-0.5.5.1-3 hdparm-6.3-1
imagemagick-6.2.5-1 kernel26-2.6.14.3-1 lftp-3.3.5-1 libogg-1.1.3-1 libvorbis-1.1.2-1 mc-4.6.1-2 nspr-4.6-3 ntp-4.2.0a-3 pango-1.10.2-1
parted-1.6.25.1-1 sane-1.0.16-3 streamtuner-0.99.99-3 udev-076-4 unzip-5.52-2Total Package Size: 48.8 MB
Proceed with upgrade? [Y/n]
(...)
checking package integrity... done.
removing hotplug...
warning: /etc/hotplug/usb.usermap saved as /etc/hotplug/usb.usermap.pacsave
warning: /etc/hotplug/usb.handmap saved as /etc/hotplug/usb.handmap.pacsave
warning: /etc/hotplug/usb.distmap saved as /etc/hotplug/usb.distmap.pacsave
warning: /etc/hotplug/blacklist saved as /etc/hotplug/blacklist.pacsave
done.
loading package data... done.
checking for file conflicts...
error: the following file conflicts were found:
kernel26: /lib/modules/2.6.14-ARCH/modules.ofmap: exists in filesystemerrors occurred, no packages were upgraded.
I couldn't find posts related to this problem in the forum. I post here since I'm not aware when it comes to kernel related issues :oops:
Seeded last month: Arch 50 gig, derivatives 1 gig
Desktop @3.3GHz 8 gig RAM, linux-ck
laptop #1 Atom 2 gig RAM, Arch linux stock i686 (6H w/ 6yrs old battery ) #2: ARM Tegra K1, 4 gig RAM, ChrOS
Atom Z520 2 gig RAM, OMV (Debian 7) kernel 3.16 bpo on SDHC | PGP Key: 0xFF0157D9
Offline