Please note that LinuxExchange will be shutting down on December 31st, 2016. Visit this thread for additional information and to provide feedback.

When I boot using PXE Boot into openSuse, from the menu, I get an error saying 'invalid or corrupt kernel image'. The initrd.img file, and vmlinuz file were both copied from a openSUSE 11.2 system, which is what I'm trying to setup PXE Boot for. PXE Boot works fine, dhcpd, and tftpd both work fine, the box receives an ip, it is directed to the proper file which I know by viewing the log file /var/log/messages, they are at the bottom so you can see them.

=================================

ll /boot/vmlinuz lrwxrwxrwx 1 root root 28 May 12 20:46 /boot/vmlinuz -> vmlinuz-2.6.31.5-0.1-default ll /boot/initrd lrwxrwxrwx 1 root root 27 May 12 21:25 /boot/initrd -> initrd-2.6.31.5-0.1-default

initrd.img and vmlinuz were copied from initrd-2.6.31.5-0.1-default and vmlinuz-2.6.31.5-0.1-default respectively

=================================

tree suse suse -- 11.2 |-- i586 | |-- initrd.img |-- vmlinuz `-- x86_64

3 directories, 2 files

======================

pxlinux.cfg

timeout 300 default menu.c32 prompt 0

menu title PXE Menu

label Boot openSuse 11.2 i586 menu label Boot openSuse 11.2 kernel suse/11.2/i586/vmlinuz append initrd=suse/11.2/i586/initrd.img

========================

/var/log/messages

May 13 21:23:58 edna in.tftpd[16342]: RRQ from 10.0.0.254 filename linux-install/pxelinux.0 May 13 21:23:58 edna xinetd[10467]: START: tftp pid=16341 from=10.0.0.254 May 13 21:23:58 edna in.tftpd[16342]: tftp: client does not accept options May 13 21:23:58 edna in.tftpd[16343]: RRQ from 10.0.0.254 filename linux-install/pxelinux.0 May 13 21:23:58 edna in.tftpd[16344]: RRQ from 10.0.0.254 filename linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-000bcd89309d May 13 21:23:58 edna in.tftpd[16345]: RRQ from 10.0.0.254 filename linux-install/menu.c32 May 13 21:23:58 edna in.tftpd[16346]: RRQ from 10.0.0.254 filename linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-000bcd89309d May 13 21:24:01 edna in.tftpd[16350]: RRQ from 10.0.0.254 filename linux-install/suse/11.2/i586/vmlinuz May 13 21:25:58 edna dhcpd: Dynamic and static leases present for 10.0.0.254. May 13 21:25:58 edna dhcpd: Remove host declaration pxeboot or remove 10.0.0.254 May 13 21:25:58 edna dhcpd: from the dynamic address pool for name May 13 21:25:58 edna dhcpd: DHCPREQUEST for 10.0.0.254 from 00:0b:cd:89:30:9d via eth0 May 13 21:25:58 edna dhcpd: DHCPACK on 10.0.0.254 to 00:0b:cd:89:30:9d via eth0 May 13 21:39:01 edna xinetd[10467]: EXIT: tftp status=0 pid=16341 duration=903(sec)

asked 14 May '10, 01:48

rfelsburg's gravatar image

rfelsburg ♦
6061618
accept rate: 25%




It turns out that the vmlinuz was corrupt, and incorrect.

I should remember to always md5, that being said, the vmlinuz I copied from the system didn't work anyways.

Turns out the vmlinuz file I pulled was incorrect, I had to pull from the boot dvd, and it worked.

link

answered 13 Jul '10, 18:53

rfelsburg's gravatar image

rfelsburg ♦
6061618
accept rate: 25%

I see the request for the kernel (vmlinuz), but the log file won't say whether or not the file was downloaded correctly. I would recommend using a packet sniffer, like Wireshark to see if the kernel is actually downloaded. Perhaps the file needs read access, or perhaps tftp would prefer an actual file rather than a link to a file outside of it's root. If you have copied the kernel from a working system, I would expect that it if it received the file then it wouldn't complain of a bad kernel image.

Something to keep in mind is that once the kernel loads it will look for the initrd. There is a chance that the kernel will look for it on the root partition and not over tftp. In my experience, to boot PXE requires that my kernel supports using NFS for root. If you have trouble mounting the root partition, you may want to look into this.

link

answered 14 May '10, 05:18

kainosnous's gravatar image

kainosnous
3243
accept rate: 18%

The files are not symlinks. They both have read permissions. I can see why you think those are symlinks, that has to do with the formatting of the page. Those symlinks are the /boot directory, I was just showing the original files that I copied from.

Also, I have multiple versions of both centos and fedora, already working and installing from the PXE Boot server. This seems to be specifically a suse issue.

I'll start with a packet sniffer and go from there. Thanks.

-Rob Felsburg

link

answered 14 May '10, 18:39

rfelsburg%201's gravatar image

rfelsburg 1
11
accept rate: 0%

As you can see, it does get the kernel but thats it. Thoughts?

[root@edna ~]# tcpdump -vvv -xx host 10.0.0.254 and portrange 67-69 -w ./output &
[root@edna ~]# tcpdump -r output
reading from file output, link-type EN10MB (Ethernet)
15:24:54.220501 IP 10.0.0.254.ah-esp-encap > edna.tftp:  41 RRQ "linux-install/pxelinux.0" octet tsize 0
15:24:54.226140 IP 10.0.0.254.acp-port > edna.tftp:  46 RRQ "linux-install/pxelinux.0" octet blksize 1456
15:24:54.290149 IP 10.0.0.254.57089 > edna.tftp:  93 RRQ "linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-0"     [|tftp]
15:24:54.297018 IP 10.0.0.254.57090 > edna.tftp:  52 RRQ "linux-install/menu.c32" octet tsize 0 blksize 1408
15:24:54.332628 IP 10.0.0.254.57091 > edna.tftp:  93 RRQ "linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-0"     [|tftp]
15:24:57.533939 IP 10.0.0.254.57092 > edna.tftp:  66 RRQ "linux-install/suse/11.2/i586/vmlinuz" octet tsize 0 b
15:26:55.632550 IP edna.bootps > 10.0.0.254.bootpc: BOOTP/DHCP, Reply, length: 300
link

answered 14 May '10, 19:32

rfelsburg%201's gravatar image

rfelsburg 1
11
accept rate: 0%

Heres a cleanup of the above data.

When I boot using PXE Boot into openSuse, from the menu, I get an error saying 'invalid or corrupt kernel image'. The initrd.img file, and vmlinuz file were both copied from a openSUSE 11.2 system, which is what I'm trying to setup PXE Boot for. PXE Boot works fine, dhcpd, and tftpd both work fine, the box receives an ip, it is directed to the proper file which I know by viewing the log file /var/log/messages, they are at the bottom so you can see them.


=================================

ll /boot/vmlinuz
lrwxrwxrwx 1 root root 28 May 12 20:46 /boot/vmlinuz -> vmlinuz-2.6.31.5-0.1-default
ll /boot/initrd
lrwxrwxrwx 1 root root 27 May 12 21:25 /boot/initrd -> initrd-2.6.31.5-0.1-default

initrd.img and vmlinuz were copied from initrd-2.6.31.5-0.1-default and vmlinuz-2.6.31.5-0.1-default respectively

=================================

tree suse
suse
`-- 11.2
|-- i586
| |-- initrd.img
| `-- vmlinuz
`-- x86_64

3 directories, 2 files

======================

[root@edna ~]# tree /tftpboot
/tftpboot
`-- linux-install
    |-- README.txt
    |-- centos
    |   `-- 5.4
    |       |-- i386
    |       |   |-- initrd.img
    |       |   `-- vmlinuz
    |       `-- x86_64
    |           |-- initrd.img
    |           `-- vmlinuz
    |-- fedora
    |   `-- 12
    |       `-- i386
    |           |-- initrd.img
    |           |-- ks.cfg
    |           |-- pxelinux.0
    |           `-- vmlinuz
    |-- menu.c32
    |-- pxeboot.msg
    |-- pxelinux.0
    |-- pxelinux.cfg
    |   |-- 01-00-0b-cd-89-30-9d
    |   |-- 20c6a714-806d-d711-b751-000bcd89309d
    |   `-- default
    |-- suse
    |   `-- 11.2
    |       |-- i586
    |       |   |-- initrd.img
    |       |   `-- vmlinuz
    |       `-- x86_64
    `-- teros-tftpboot.tar.bz2


==============================

pxlinux.cfg
-----------
timeout 300
default menu.c32
prompt 0

menu title PXE Menu

label Boot openSuse 11.2 i586
menu label Boot openSuse 11.2
kernel suse/11.2/i586/vmlinuz
append initrd=suse/11.2/i586/initrd.img


========================

/var/log/messages
-----------------

May 13 21:23:58 edna in.tftpd[16342]: RRQ from 10.0.0.254 filename linux-install/pxelinux.0
May 13 21:23:58 edna xinetd[10467]: START: tftp pid=16341 from=10.0.0.254
May 13 21:23:58 edna in.tftpd[16342]: tftp: client does not accept options
May 13 21:23:58 edna in.tftpd[16343]: RRQ from 10.0.0.254 filename linux-install/pxelinux.0
May 13 21:23:58 edna in.tftpd[16344]: RRQ from 10.0.0.254 filename linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-000bcd89309d
May 13 21:23:58 edna in.tftpd[16345]: RRQ from 10.0.0.254 filename linux-install/menu.c32
May 13 21:23:58 edna in.tftpd[16346]: RRQ from 10.0.0.254 filename linux-install/pxelinux.cfg/20c6a714-806d-d711-b751-000bcd89309d
May 13 21:24:01 edna in.tftpd[16350]: RRQ from 10.0.0.254 filename linux-install/suse/11.2/i586/vmlinuz
May 13 21:25:58 edna dhcpd: Dynamic and static leases present for 10.0.0.254.
May 13 21:25:58 edna dhcpd: Remove host declaration pxeboot or remove 10.0.0.254
May 13 21:25:58 edna dhcpd: from the dynamic address pool for name
May 13 21:25:58 edna dhcpd: DHCPREQUEST for 10.0.0.254 from 00:0b:cd:89:30:9d via eth0
May 13 21:25:58 edna dhcpd: DHCPACK on 10.0.0.254 to 00:0b:cd:89:30:9d via eth0
May 13 21:39:01 edna xinetd[10467]: EXIT: tftp status=0 pid=16341 duration=903(sec)
link

answered 14 May '10, 19:36

rfelsburg%201's gravatar image

rfelsburg 1
11
accept rate: 0%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×13
×5
×2
×1

Asked: 14 May '10, 01:48

Seen: 6,363 times

Last updated: 13 Jul '10, 18:53

powered by OSQA