On Tuesday 11 April 2006 02:12 pm, Mark Fletcher wrote: > --- anoop aryal <[EMAIL PROTECTED]> wrote: > > On Friday 07 April 2006 02:39 pm, Yu,Glen [Ontario] > > > > wrote: > > > Hello everyone, > > > > > > I was wondering if it's possible to copy the > > > > vmlinuz-x.y.z from one machine > > > > > to another and have the other machine run properly > > > > with it. Here's the > > > > > scenario: > > > > > > I have 2 systems, both running Debian 3.1 (Sarge), > > > > and their hardware is a > > > > > little different from each other. Suppose my > > > > machine is running a 2.4.x > > > > > kernel and the other a 2.6.x kernel, can I simply > > > > copy the > > > > > /boot/vmlinuz-2.6.x kernel over to my machine's > > > > /boot directory, make the > > > > > appropriate changes to /boot/grub/menu.lst and > > > > have it work as if I had > > > > > installed it through apt or dpkg? > > > > > > If anyone has actually tried this and got their > > > > machines to work, I would > > > > > like to know what and how you did it. > > > > i am in the process of doing it to a machine where i > > had to use debootstrap to > > install the system from an ide drive to a scsi drive > > (long story). > > > > it is pretty easy to get it to work as long as the > > root filesystem on both > > machine reside on similar hardware > > (best-case/simplest-case scenario is both > > machines use IDE drives to boot). if that's the > > case, copy the kernel, the > > modules directory (look in /lib/modules/), the > > initrd file and you should be > > set. > > > > if the root fs resides on dissimilar hardware (eg. > > one has IDE and another > > machine has SCSI or even different SCSI cards etc..) > > then you'll need to fix > > your initrd to load the correct modules (or > > recompile the kernel to inline > > all needed modules). while this is doable, it is > > slightly more complicated to > > give a generic howto. google cramfs and initrd and > > you should find some > > discussion on the subject. > > > > > Thanks, > > > -Glen > > ---------------------------------------------------------------------- > > > > Glen Yu | 416-739-4861 | [EMAIL PROTECTED] > > ---------------------------------------------------------------------- > > > -- > > > > > > anoop aryal > > [EMAIL PROTECTED] > > > > > > -- > > To UNSUBSCRIBE, email to > > [EMAIL PROTECTED] > > with a subject of "unsubscribe". Trouble? Contact > > [EMAIL PROTECTED] > > Bear in mind if you do this, your target machine will > have to have hardware that's at least similar enough > to your source machine's hardware that the correct > drivers will be available, either compiled in as > modules or built into the kernel. If the kernel you > wish to copy is a stock kernel, then you are more > likely to get away with this on dissimilar hardware > than if you built your own -- but then if it's a stock > kernel, just dpkg it on the target machine!!! > > Also your target machine will need to have the same or > better CPU to avoid CPU instruction-set assumptions in > the source kernel causing weird effects on the > lower-spec target machine. > > If your hardware is wildly different then this is > going to be troublesome. > > In general it's better to build your kernel on the > machine you intend to use it on, or at least on a > machine that's so close in spec it might as well be > the same machine. Failing that, use a stock kernel > that's been put together by Debian kernel packaging > folks who Know What They Are Doing (TM). These are > designed to run on a wide variety of hardware.
good advice. i wish they would also package a kernel for HIGHMEM > 4G. that's been the only reason i've had to compile my own. i don't mind having to compile *all* the modules (as in the default stock kernel). as the whole thing blows by pretty quick on the machines i have to do it on anyway. in fact, i take the stock config, change the memory limit and compile away. but most of the machines i have to do this for are from the same vendor (same arch, CPU etc..) and only differ in components like the RAID controller etc. so i typically build the initrd with all the modules i need and then i can use the same kernel package for all the machines. > > Assuming you're still set on doing it -- if it's a > stock kernel dpkg the .deb file on your target machine > instead of copying over. If it's not and you still > have the source tree you built the kernel from > originally, then use make-kpkg to build your kernel > image and modules into a .deb file on your source > machine and then dpkg THAT on the target machine. If > you don't still have the sources, you need to copy the > kernel image in /boot, and the modules for this kernel > from /etc, and you probably need to do something to > System.map in /boot as well but I'm not sure what > you'd need to do there. Best of luck... > > Mark -- anoop aryal [EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]