Re: [newbie] System.map
July 7, 2002 12:43 pm, Damian G wrote: Outout of cat /etc/lilo.conf (the system boots the 'new' kernel by default) boot=/dev/hda map=/boot/map install=/boot/boot.b vga=normal default=linux keytable=/boot/us.klt lba32 prompt nowarn timeout=50 message=/boot/message menu-scheme=wb:bw:wb:bw image=/boot/vmlinuz label=old_linux root=/dev/hda5 initrd=/boot/initrd.img append=devfs=mount hdd=ide-scsi vga=normal read-write image=/boot/vmlinuz label=linux-nonfb root=/dev/hda5 initrd=/boot/initrd.img append=devfs=mount hdd=ide-scsi read-only image=/boot/vmlinuz label=failsafe root=/dev/hda5 initrd=/boot/initrd.img append=failsafe devfs=nomount hdd=ide-scsi read-only other=/dev/fd0 label=floppy unsafe image=/boot/vmlinuz-2.4.18-8.1mdk label=linux root=/dev/hda5 initrd=/boot/initrd-2.4.18-8.1mdk.img append=devfs=mount hdd=ide-scsi vga=normal read-write This is substantially correct, but it is better for your own use, and the system reliability, to define the label=linux more specifically, so that if you add the kernel version you make sure you remember which kernel you are booting , however by the time you add the failsafe and nonfb it all gets a bit long, so I devised a simple shortening to , 82-2.4.18-6mdk 82-2.4.18-6mdkfailsafe 82-2.4.18-6mdknonfb The new kernel82-2.4.18-1mdk (82=Mandrake8.2) 82-2.4.18-1mdkfailsafe 82-2.4.18-1mdknonfb This means 3 stanzas for each kernel version, and every time you add an updated kernel another set of stanzas go in . Likewise each of your image=/boot/vmlinuz, ought to include each kernel version it is to use,so image=vmlinuz-2.4.18-6mdk , just to be certain. At one time I had 4 kernel versions because I was looking for a driver that I had been told had been added to one of them. You might also consider adding rom drive scusi emulation support to your append= line , so that the writer programmes can recognise it. John -- John Richard Smith [EMAIL PROTECTED] Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map]
July 8, 2002 09:13 am, John Richard Smith wrote: big snip ~~~ What did I miss John? The append=line is shown in the output above Well I asumed that the append=hdd=ide-scsi was your writer. This is your rom? if not then depending upon your master ,slave relationship,you can add another line hd(x)=ide-scsi (where x = the ide device letter for your rom) and writer programmes like xcdroast will recognise your rom drive as well as your writer. If on the otherhand hdd is just a writer,but also used as your rom as well, and you don't have another rom device, which quite a few people do these days,then what you have is enough. Ah, OK. I get it now. I have both and I see why you suggested that now. There are other devices as well (4x60 GB hard drives, a CD/DVD-ROM combination, assorted other doodads.:-) )but I'll figure out the correct append= lines after I get caught up on a few things. It amazes me how much clearer things are this morning after 3 hours of sleep. Thanks. I suppose the labelling would get weird if I added a few more kernels but I seriously doubt that will happen. With just the two I don't have a problem knowing which I'm booting, and the newest one _is set as default_. It's probably good advice anyway though. Well that's quite correct, but I started out thinking that way and during the course of 12 months I found myself with more than 2 kernels.Issues of security came up. One thing that did interest me, was why the multiple symlinks, if this because of some non standard mandrake kernel version. There are non standard kernel versions too. Including a (broken) tainted (NVidia) kernel that isn't really there any more. Mostly sloppy housekeeping on my part. That's the sum total of it. Have you noticed there aren't enough hours for all the *projects*? :-) When I boot different kernels I also specify each initrd image to boot like this:- initrd=/boot/initrd-2.4.18-6mdk.img, as you have done with one example. The stanza for the second or third kernels have the same theme but the initrd version changes with each, and when I ran the mandrake install rpm it put the correct initrd version in the /boot directory(which is also a /boot partition) for me which made it easy to specify. I thought this takes care of the booting procedures. I therefore do not entirely understand your arangements, in creating the additional symlinks, cause I came in a little way into this thread and I have missed the point. Just curious, John It's probably just the fact that there's _nothing_ standard about this machine or myself. The points of commonality shared amongst kernel versions/distributions, other than the two shown, is hda9 (/home) and hdb. hdb has an /archive, and a /store. The /archive is where back-ups go and how I restore from some of my stupid experiments. /store is just image files, my ogg collection; I hate chasing Cds all over and my kids have a tendency to swipe them when they leave after a visit. Some day I'll learn a bit about GNU/Linux. Then I'll really be able to break it. ;) Thanks again for the excellent advice. -- Charlie Edmonton,AB,Canada Registered user 244963 at http://counter.li.org ...a most excellent barbarian ... Genghis Kahn! -- _Bill And Ted's Excellent Adventure_ Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
On Saturday 06 July 2002 09:22 pm, Damian G wrote: so, apparently, that system.map is not mandatory to make a kernel boot I don't believe so. When you install a Mandrake pre-compiled kernel the rpm (use 'rpm -ivh' ) it creates the proper links in /boot for you, besides generating a new initrd and edit/run lilo to add the new kernel. When I roll my own, I edit Makefile and change EXTRAVERSION = new_indentifier, but also I uncomment the line # export INSTALL_PATH=/boot (ie, remove the # ). Then a last command of 'make install' in the compile proccess also will make the proper links in /boot, make initrd, edit/run lilo, etc. for you. I use this /etc/bashrc alias to check, alias bootlinks='ll /boot/{initrd,vmlinuz,System.map}*' Typing 'bootlinks' then, at least initrd and vmlinuz should point to the right kernels (the current active links will be color hi-lited). My alias doesn't change anything, just displays the current state of important links in /boot. Until I boot the new kernel, the important links, initrd and vmlinuz point to the correct kernel(s), but System.map doesn't. After rebooting to the new kernel, all three then correctly point to the right kernel for all installed kernels. -- Tom Brinkman Corpus Christi, Texas Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
tom brinkman wrote: On Saturday 06 July 2002 09:22 pm, Damian G wrote: so, apparently, that system.map is not mandatory to make a kernel boot I don't believe so. When you install a Mandrake pre-compiled kernel the rpm (use 'rpm -ivh' ) it creates the proper links in /boot for you, besides generating a new initrd and edit/run lilo to add the new kernel. When I roll my own, I edit Makefile and change EXTRAVERSION = new_indentifier, but also I uncomment the line # export INSTALL_PATH=/boot (ie, remove the # ). Then a last In my Mandrake 8.2 the export INSTALL_PATH=/boot comes uncommentted. No need to uncomment it. command of 'make install' in the compile proccess also will make the proper links in /boot, make initrd, edit/run lilo, etc. for you. My system does not run lilo during the 'make install' process. I must do it myself. It does reconfig lilo.conf to add the new kernel. I use this /etc/bashrc alias to check, alias bootlinks='ll /boot/{initrd,vmlinuz,System.map}*' Typing 'bootlinks' then, at least initrd and vmlinuz should point to the right kernels (the current active links will be color hi-lited). My alias doesn't change anything, just displays the current state of important links in /boot. Until I boot the new kernel, the important links, initrd and vmlinuz point to the correct kernel(s), but On my system after I do the 'make install', neither 3 of the files points to the current working kernel. They all point to the new kernel that has not been rebooted yet. I think I must miss understand what you are saying!! System.map doesn't. After rebooting to the new kernel, all three then correctly point to the right kernel for all installed kernels. On my system I can point System.map to a System.map that is totally unrelated to the kernel that I boot and the system stills reboots operates correctly. I realize if the kernel 'oops' that the symbols in the kernel will not resolve correctly, but 1.) I never have kernel 'oops': 2.) unless I could repeat the kernel 'oops' I don't care. If I can repeat the kernel 'oops' then I could point System.map correctly. I make no claim about knowing anything about how the System.map works. Just on my system, System.map does not need to point to the correct kernel for the system to boot. -- Tom Brinkman Corpus Christi, Texas Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com I except the fact you have vastly superior knowledge than I about linux. Therefore I would welcome anymore insight in how to switch 'System.map' to point to the correct booted kernel when switching among kernels. Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
dfox wrote: My system does not run lilo during the 'make install' process. I must do it myself. It does reconfig lilo.conf to add the new kernel. It's not supposed to. 'make bzlilo' does that. Make install just plops the kernel in /usr/src/linux/arch/i386 somewhere. Not true. 'make install' copies the kernel (not plops) to /boot, make syslinks for vmlinuz etc, modifies lilo.config. You need to read the complete message. Does RTFM stand for 'Read the Fine message'?? make bzdisk puts the built kernel on a floppy disk. That's a good idea, especially for beginners - if the disk won't boot, you haven't hosed your system. There are better easier ways to do that. Just config lilo.conf to point to a know good kernel and keep that kernel in /boot. RTFM On my system after I do the 'make install', neither 3 of the files points to the current working kernel. They all point to the new kernel Well, they point to the kernel that's about to be booted - you're not trying to replace the working kernel on the fly, right? Still with make install, you have to do mv the kernels around yourself so that the next time you boot, the newly built kernel will be the one that's booted - that is why lilo needs to be rerun again. RTFM RTFM RTFM. PLEASE. Your comments has nothing to do with the message. make no claim about knowing anything about how the System.map works. Just on my system, System.map does not need to point to the correct kernel for the system to boot. No, but it's a probably good idea that it does. WHY? WHY? RTFM. Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com Charles Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
Not true. 'make install' copies the kernel (not plops) to /boot, make syslinks for vmlinuz etc, modifies lilo.config. You need to read the complete message. Does RTFM stand for 'Read the Fine message'?? Perhaps there's a difference in the Mandrake source kernels, rather than those from kernel.org? I usually get my kernels from the latter, and that's the way I learned. Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
July 7, 2002 12:43 pm, Damian G wrote: hey hey hey . i thought this was a RTFM-free list. now, the reason i started this thrad was: is there anything i need to add to my lilo settings in order to specify a different System.map when i choose to boot a different kernel? would somebody having more than one kernel working at the time please show me a ls -l /boot and a cat /etc/lilo.conf so i know what needs to be added? i've RTFM a bit but it mentions nuthin' about this and i'm afraid i'm gonna ruin my installation if i proceed with the incomplete info i have... thanks very much in advance. Damian outout of ls -l /boot : /boot total 3580 -rw-r--r--1 root root 512 May 27 09:53 boot.0300 lrwxrwxr-x1 root root 11 Jul 4 18:30 boot.b - lilo/boot.b -rw-r--r--1 root root 728 Feb 22 16:02 chain.b lrwxr-xr-x1 root root 20 Jul 4 18:22 config - config-2.4.18-8.1mdk -rw-r--r--1 root root40750 Mar 14 19:25 config-2.4.18-6mdk -rw-r--r--1 root root41021 Jun 24 14:04 config-2.4.18-8.1mdk drwxr-xr-x2 root root 4096 May 27 09:53 grub/ -rw-r--r--1 root root 401425 May 27 09:52 initrd-2.4.18-6mdk.img -rw-r--r--1 root root 347679 Jul 4 18:20 initrd-2.4.18-8.1mdk.imglrwxr-xr-x1 root root 24 Jul 4 18:20 initrd.img - initrd-2.4.18-8.1mdk.img lrwxr-xr-x1 root root 28 Jul 4 18:35 kernel.h - /boot/kernel.h-2.4.18-8.1mdk -rw-r--r--1 root root 441 May 27 15:56 kernel.h-2.4.18-6mdk -rw-r--r--1 root root 441 Jul 4 18:23 kernel.h-2.4.18-8.1mdk lrwxrwxr-x1 root root9 Jul 4 18:30 lilo - lilo-menu/ drwxr-xr-x2 root root 19 May 27 09:23 lilo-bmp/ drwxr-xr-x2 root root 33 May 27 09:23 lilo-graphic/ drwxr-xr-x2 root root 33 May 27 09:53 lilo-menu/ drwxr-xr-x2 root root 33 May 27 09:53 lilo-text/ -rw---1 root root62464 Jul 4 18:30 map -rw-r--r--1 root root 512 Feb 22 16:02 mbr.b lrwxrwxr-x1 root root 12 Jul 4 18:30 message - lilo/message -rw-r--r--1 root root 656 Feb 22 16:02 os2_d.b lrwxr-xr-x1 root root 24 Jul 4 18:22 System.map - System.map-2.4.18-8.1mdk -rw-r--r--1 root root 470935 Mar 14 19:25 System.map-2.4.18-6mdk -rw-r--r--1 root root 472594 Jun 24 14:04 System.map-2.4.18-8.1mdk-rw-r--r--1 root root 256 May 27 09:53 us.klt lrwxr-xr-x1 root root 21 Jul 4 18:20 vmlinuz - vmlinuz-2.4.18-8.1mdk -rw-r--r--1 root root 887614 Mar 14 19:25 vmlinuz-2.4.18-6mdk -rw-r--r--1 root root 890727 Jun 24 14:04 vmlinuz-2.4.18-8.1mdk Outout of cat /etc/lilo.conf (the system boots the 'new' kernel by default) boot=/dev/hda map=/boot/map install=/boot/boot.b vga=normal default=linux keytable=/boot/us.klt lba32 prompt nowarn timeout=50 message=/boot/message menu-scheme=wb:bw:wb:bw image=/boot/vmlinuz label=old_linux root=/dev/hda5 initrd=/boot/initrd.img append=devfs=mount hdd=ide-scsi vga=normal read-write image=/boot/vmlinuz label=linux-nonfb root=/dev/hda5 initrd=/boot/initrd.img append=devfs=mount hdd=ide-scsi read-only image=/boot/vmlinuz label=failsafe root=/dev/hda5 initrd=/boot/initrd.img append=failsafe devfs=nomount hdd=ide-scsi read-only other=/dev/fd0 label=floppy unsafe image=/boot/vmlinuz-2.4.18-8.1mdk label=linux root=/dev/hda5 initrd=/boot/initrd-2.4.18-8.1mdk.img append=devfs=mount hdd=ide-scsi vga=normal read-write You rang? LOL It probably ain't right but it works and I'm able to boot either kernel. Another drive has the 'secure' versions of the same kernels. No worries again but that's a 'bootdisk boot' so it doesn't matter here. -- Charlie Edmonton,AB,Canada Registered user 244963 at http://counter.li.org Bore, n.: A person who talks when you wish him to listen. -- Ambrose Bierce, The Devil's Dictionary Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
On Sat, 06 Jul 2002 16:50, Damian G wrote: snip ok, so in order to use my new kernel i've got to rename my new System.map to something like System.map2.4.28mine and change that link to make it point to my file. now, my question is: how am i supposed to keep both kernels? i've checked lilo.conf and the boot sections seem to have no reference to these files... what do i have to add in order to make lilo choose the corresponding system.map whenever i choose a kernel to boot? Took a quick look at the link that Charles provided (http://www.linuxmafia.com/~rick/linux-info/systemmap.html) which explains the answers to your questions. This is how I interpreted it: 1) System.map is a file containing the kernel symbol info. 2) System.map has versioning info (eg. System.map-2.4.18-16mdk or System.map-2.4.18-20mdk). 3) If a kernel oops occurs it is intercepted by klogd (a kernel logging daemon) which performs name-address resolution. 4) klogd uses the System.map file to perform the address resolution and looks for this file in 3 places in the following order: (i) /boot/System.map (ii) /System.map (iii) /usr/src/linux/System.map So if you have two System.map files: /boot/System.map-2.4.18mdk /boot/System.map-2.4.18mine and you boot with your new kernel image /boot/vmlinuz-2.4.28mine then klogd will first look in the /boot dir for the matching System.map file (ie. System.map-2.4.18mine). Still, I usually remove the old link in /boot and create a new one pointing to the new System.map-[new one] before I boot my new kernel. Same with the vmlinuz link - I delete the old and create a new link. Its also safer to put the actual kernel image filename in /etc/lilo.conf rather than link, eg. image=/boot/vmlinuz-2.4.18mine and NOT: image=/boot/vmlinuz Sharrea -- oxymoron: Microsoft Works Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
You rang? LOL It probably ain't right but it works and I'm able to boot either kernel. thanks much Charlie. this solves my doubt. so, using the latest system.map seems to work for both the old and the new kernel.. Damian Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
July 7, 2002 03:56 pm, Damian Gatabria wrote: You rang? LOL It probably ain't right but it works and I'm able to boot either kernel. thanks much Charlie. this solves my doubt. so, using the latest system.map seems to work for both the old and the new kernel.. Damian ~~~ It seems you are correct Damian. The system map seems to describe the actual physical parameters (hardware, memory, chipset[s], I/O, add-on boards, partitions, et cetera, ad infinito) of the system for the kernel. I haven't learned enough (yet) to be unequivocal in any response here but I'll always do what I can to try to help. De nada, you're very welcome. -- Charlie Edmonton,AB,Canada Registered user 244963 at http://counter.li.org It's sweet to be remembered, but it's often cheaper to be forgotten. Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
On Sunday 07 July 2002 10:22 am, ai4a wrote: In my Mandrake 8.2 the export INSTALL_PATH=/boot comes uncommentted. No need to uncomment it. Hmmm, I've never seen a kernel-source-.mdk.rpm that had it uncommented, I've always had to remove the #. I suppose the pre- built kernel-xxx.mdk.rpms would have it uncommented ... never looked. I use this /etc/bashrc alias to check, alias bootlinks='ll /boot/{initrd,vmlinuz,System.map}*' Typing 'bootlinks' then, at least initrd and vmlinuz should point to the right kernels (the current active links will be color hi-lited). My alias doesn't change anything, just displays the current state of important links in /boot. Until I boot the new kernel, the important links, initrd and vmlinuz point to the correct kernel(s), but System.map doesn't On my system after I do the 'make install', neither 3 of the files points to the current working kernel. They all point to the new kernel that has not been rebooted yet. I think I must miss understand what you are saying!! No, I just didn't say it very well ;) In every compile I can remember, vmlinuz and initrd point to the new (freshly compiled) kernel, even tho I haven't booted it for the first time yet. This is fine, since the other vmlinuz and initrd links in /boot point to their matching (existing) kernel(s). Only System.map doesn't point to the new kernel till I boot it for the first time. So, bottom line, I believe if after you compile a new kernel, just make sure there's vmlinuz and initrd links in /boot that point to the new kernel, don't worry about System.map -- Tom Brinkman Corpus Christi, Texas Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
System.map2.4.28mine and change that link to make it point to my file. Right... how am i supposed to keep both kernels? i've checked lilo.conf and the boot sections seem to have no reference to these files... There's a vmlinuz symlink that points to somethimg like vmlinuz-2.4.xx-1.mdk. What you probably should do is rename the old symlink to something like vmlinux-old, and create a new symlink that points to the new kernel in /boot. what do i have to add in order to make lilo choose the corresponding system.map whenever i choose a kernel to boot? I don't think Lilo chooses the system map but there should be a corresponding system map for each kernel - you'd use lilo to select which kernel. Look for a stanza (/etc/lilo.conf) beginning with 'image' that has vmlinuz in it. If you linked the new kernel to vmlinuz, that's the kernel that's going to boot. You can just copy those lines and make another stanza that uses 'vmlinuz-old' or what have you, which will select the other (or default) kernel. Damian Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
Damian G wrote: Hi... well, i've just finished building my very first custom kernel ( well, actually not my first build, but it's my first SERIOUS one and i might like not tearing my OS apart this time ;oP ) and i'm a little confused about that System.map file. the kernel i'm running now has it's own System.map and the new one has another. right? ok. in /boot i've got System.map which is a link to System.map2.4.28mdk.. ok, so in order to use my new kernel i've got to rename my new System.map to something like System.map2.4.28mine and change that link to make it point to my file. now, my question is: how am i supposed to keep both kernels? i've checked lilo.conf and the boot sections seem to have no reference to these files... what do i have to add in order to make lilo choose the corresponding system.map whenever i choose a kernel to boot? thanks. Damian Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com I have also been confused about System.map and using more that one kernel. The following url has a write-up about it, but it is not very clear about how to use a System.map that matches which kernel!!! http://www.linuxmafia.com/~rick/linux-info/systemmap.html The url does point out that the System.map is not important when it comes to the kernel running or not. System.map is used by klogd after a kernel oops for debug purposes. Also the url points out that other programs use the System.map and it gives some examples of these programs. The url also points out how klogd finds the System.map. Peter[no last name given] -the author of this article- knows of no way to resolve this conflict of matching the right System.map to the correct kernel!!!??? I can only suggest writing a script that is executed after the system is booted that checks which kernel has booted and then changing the syslink of System.map to match. 'uname -r' will list the kernel version. Maybe something from here could be used in the script. Maybe I will look into this further tomorrow?? At least this is a start at explaining the usage of System.map. HTH Charles Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
'uname -r' will list the kernel version. Maybe something from here could be used in the script. Maybe I will look into this further tomorrow?? At least this is a start at explaining the usage of System.map. HTH Charles thanx a lot, Charles. i'm going to check that link after dinner. so, apparently, that system.map is not mandatory to make a kernel boot lately i've been rather busy, but i'm going to look around in the kernel docs and see if it says anything about it there... Damian Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
Re: [newbie] System.map
When you recompiled the kernel, a new System.map was built also. You'll probably find it in /usr/src/Linux/arch.i386/boot or similar (I don't recall exactly) This file should be copied into /boot and the symbolic link /boot/System.map pointed to it. The symbolic link points to your 2.2.13 map at the moment. Delete it and link it to the new System.map rm System.map ln -s System.map System.map.2.2.14 (or whatever name you used when you copied the new System.map into /boot) Reboot. Tada! :) Steve Flynn IBM MVS Operations Analyst "Michael C" [EMAIL PROTECTED] on 20/02/2000 21:21:37 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc:(bcc: Steve Flynn/UK/Contr/IBM) Subject: [newbie] System.map Hi, I have just succesfully downloaded, configured and compiled the linux kernel 2.2.14. I was originally using 2.2.13 that I got off the CD. I have moved the new kernel image into the /boot directory within its own subdirectory and updated the /etc/lilo.conf file. On booting up the computer I get the following warning: /boot/System.map has an incorrect kernel version. Linux boots up o.k. except with this message being displayed a number of times. Can any one tell me why this is happening and how I resolve the problem ? Thank you in advance, Michael