Announcement

Collapse
No announcement yet.

Two items to update

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Two items to update

    Hay, Im back at it. This time I want to upgrade my kernel (currently i run 2.4.5). Also I want to upgrade my glibc. I'm wanting to know which order i should do this in. Kernel or glibc first. Also, I need a little help installing a new kernel. I've already checked the Kernel HOW-TO. They seem make it out to be more complicated than it is (i know because i've read some forums) Any help would be appreciated. Boy, I'm glad I went with Slackware. I've learned so much more with this distro in the same ammount of time than I had with mandrake.

    Later.

  • #2
    Acutally I re-read the kernel HOW-TO, and it actually seems straight forward this time, heh. But still, what order? Kernel or glibc?

    Comment


    • #3
      29 views and only I reply?

      Comment


      • #4
        1) su to root and cd to /usr/src, make sure that linux/ is a symlink to linux-version/ (do "ls -al linux")
        [code:1:4bd6e490d1]
        bash-2.05$ ls -al linux
        lrwxrwxrwx 1 root root 13 Apr 6 14:26 linux -> linux-2.4.18//
        bash-2.05$
        [/code:1:4bd6e490d1]
        2) Download the latest kernel from your nearest mirror (2.4.18 at the time of typing) to your home directory.
        3) Extract the kernel to /usr/src/linux-2.4.18
        4) Create a symlink pointing to linux-2.4.18/ (do "rm linux && ln -s linux-2.4.18/ linux")
        5) Copy the config from your previous working kernel (for a stock slack kernel do "cp linux-2.4.5/.config linux/.config")
        6) Edit your /etc/lilo.config - this is because with slack you can do a make install on the kernel and we need to have lilo.conf prepared first. Add the following under the existing kernel entry,
        [code:1:4bd6e490d1]
        #old linux
        image = /vmlinuz.old
        root = /dev/hd?? #replace /dev/hd??
        label = slack.old
        read-only
        [/code:1:4bd6e490d1]
        7) Change to the new kernel directory ("cd linux")
        8) "make mrproper". Only do this if you want to recompile an existing kernel.
        9) "make menuconfig". This will load your old .config, make any changes and save.
        10) "make dep". Checks dependencies.
        11) "make clean". Removes old o files.
        12) "make bzImage". Build it
        13) "make install". This is only for slack, make sure you completed step 6 first.
        14) "make modules".
        15) "make modules_install"
        16) Reboot and test.
        17) Recompile and install any third party kernel modules you need, nvidia drivers, lm_sensors etc.
        18)Enjoy :)
        p-two.net

        Comment


        • #5
          I understand it all except for step # 8. What is meant by "Only do this if you want to recompile an existing kernel"

          I mean I have an existing kernel (2.4.5) Which is stock, but it works great for me. I would like to upgrade to kernel 2.4.18.

          I would like to not exclude anything from the new kernel that I needed. Would step 8 only affect my older kernel, such as I wanted to keep the existing kernel, but add some elements?

          Comment


          • #6
            In step 8 Bern is referring to recompiling your existing kernel with a different config or if you have problems. Since you are updating your kernel you do not need this step.

            Comment


            • #7
              Thanks. That is what I wanted to know. I'm going to do this tonight. Wish me luck.

              Later

              Comment


              • #8
                Dont forget do do step six!
                p-two.net

                Comment


                • #9
                  Ok, I did every step just like you said Bern. I can still boot the old kernel and have all my functionality. But, I can now also boot the new kernel. I'm missing a couple of things. When I boot, I see that modprobe is trying to find modules for tulip (the module my ethernet card needs) as well as ppp and a few others.

                  Should I have done something in menuconfig? When I ran it, it stated it used the defaults from my linux/.config. Which were copied over from my old kernel.

                  I've tried modprobe myself and it doesn't find tulip or the others. Also I tried insmod tulip.o and It didn't know where to load that module from.

                  What do you think I should do?

                  Comment


                  • #10
                    When you were going through the menuconfig did you press M for the tulip to make it a module or did you press Y?
                    You can check back by opening the .config file in a text editor and scroll down to 10/100 pci section, a M next to the tulip entry means there should be a module and a Y means that support is compiled into the kernel.
                    p-two.net

                    Comment


                    • #11
                      I left it as the default. I thought it pulled what it needed to complie into the kernel from the linux/.config which I copied from linux-2.4.5/.config to linux/.config. I did look under the ethernet controllers in menuconfig, I didn't see anything that specifically said tulip. Maybe I'll attempt this process:

                      copy the .config file from the previous source directory to the new source tree

                      make oldconfig
                      make dep
                      make bzImage
                      make modules
                      make modules_install

                      We'll see, wish meh luck.

                      Comment


                      • #12
                        That will work, dont forget to do "make mrproper" first if your going to recompile the same kernel, and copy over the .config after as mrproper will remove it and leave you with a completly clean source tree.
                        p-two.net

                        Comment


                        • #13
                          Ok, that didn't go well. I got alot of unresolved symbols. Although I did do "make clean" after I did "make dep" I just forgot to include it in my previous post.

                          My problem is that when I run "make menuconfig", I don't know what half of the stuff is. I'm really just looking to update the kernel, but keep the config the same. I don't want to add anything new. I still want what was loading in the kernel to do so, I also want what was loading as module to continue doing so. I just don't know how.

                          Comment


                          • #14
                            cd to the 2.4.18 kernel source and do "make mrproper" first, this will clean the entire tree including the kernel you built first, then copy the old .config etc.
                            p-two.net

                            Comment


                            • #15
                              So you're saying to

                              1) Extract the kernel to /usr/src/linux-2.4.18

                              2) Change to the new kernel directory ("cd /usr/drc/linux-2.4.18")

                              3) "make mrproper" This will clear the source tree

                              4) Copy the config from my previous working kernel (for a stock slack kernel do "cp linux-2.4.5/.config linux-2.4.18/.config")

                              5) "make menuconfig" This should pick up how I had my previous kernel setup. And I don't want to change anything if that's the case. So I just exit and let it save the kernel.

                              6)make dep
                              6a) make clean
                              7) make bzImage
                              8) make modules
                              9) make modules_install

                              and then re-boot

                              I'm gonna try now

                              Comment

                              Working...
                              X