On the permissions: I had the new kernel image (vmlinuz-2.6.38-xx-generic) and the initrd.img (initrd.img-2.6.38-xx-generic) having permissions of
-rw--------- (chmod 600) but should be -rw--r---r-- (chmod 644)... running ls -l in the \boot directory will show the file permission. Running chmod 644 * will set all permissions to what is needed.
On the links: run ls -l again in the \boot directory. Note the current vmlinuz > /usr/pluto/diskless/ (blah blah) and the initrd.img > /usr/pluto/diskless/ (blah blah). You will also see the newer kernel and initrd.img file (with the new version info at the end) run the command
ln -sf /usr/pluto/diskless/MM/boot/vmlinuz-2.6.38-vv-generic vmlinuz (where MM is your Media Director number and vv is whatever number you have in the file name.)
do the same for initrd.img: ln -sf /usr/pluto/diskless/MM/boot/initrd.img-2.6.38-vv-generic initrd.img
I am not 100% certain the two links need to be set because on the CORE/HYBRID in the /tftpboot/MM directory the links actually point to the initrd.img and vmlinuz files in the root directory on the media director (/usr/pluto/diskless/MM/initrd.img and /usr/pluto/diskless/MM/vmlinuz). So, on the media director, you need to do a ln -sf for both the initrd.img and vmlinuz files (make sure you're in the root directory on the MD):
ln -sf boot/initrd.img-2.6.38-vv-generic initrd.img
ln -sf boot/vmlinuz-2.6.38-vv-generic vmlinuz
Here is what I have in the root directory of my MD (number is 83)
root@moon83:/# ls -l
total 80
drwxr-xr-x 2 root root 4096 Feb 3 09:17 bin
drwxr-xr-x 3 root root 4096 Apr 9 19:32 boot
drwxr-xr-x 18 root root 4960 Apr 29 16:34 dev
drwxr-xr-x 144 root root 12288 Apr 29 16:34 etc
drwxr-xr-x 27 root root 4096 Feb 2 07:40 home
lrwxrwxrwx 1 root root 36 Apr 9 17:51 initrd.img -> boot/initrd.img-3.0.0-32-generic-pae
lrwxrwxrwx 1 root root 36 Mar 30 08:41 initrd.img.old -> boot/initrd.img-3.0.0-30-generic-pae
drwxr-xr-x 21 root root 16384 Apr 9 18:33 lib
drwxr-xr-x 2 root root 4096 Nov 26 21:08 media
drwxr-xr-x 4 root root 4096 Feb 2 07:40 mnt
drwxr-xr-x 3 root root 4096 Apr 27 16:33 opt
dr-xr-xr-x 225 root root 0 Apr 29 16:34 proc
drwx------ 23 root root 4096 May 3 17:25 root
drwxr-xr-x 2 root root 4096 Apr 9 17:36 sbin
drwxr-xr-x 2 root root 4096 Dec 5 2009 selinux
drwxr-xr-x 3 root root 4096 Feb 2 18:43 srv
drwxr-xr-x 13 root root 0 Apr 29 16:34 sys
drwxrwxrwt 6 root root 4096 May 3 17:24 tmp
drwxr-xr-x 14 root root 4096 Mar 30 09:04 usr
drwxr-xr-x 15 root root 4096 Nov 26 20:52 var
lrwxrwxrwx 1 root root 33 Apr 9 17:51 vmlinuz -> boot/vmlinuz-3.0.0-32-generic-pae
lrwxrwxrwx 1 root root 33 Mar 30 08:41 vmlinuz.old -> boot/vmlinuz-3.0.0-30-generic-pae
and in the boot directory (note that I am actually running a 3.0.0-30 version kernel --- i experiment alot):
-rw-r--r-- 1 root root 2127326 Jan 7 11:12 System.map-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 2128459 Mar 22 13:49 System.map-3.0.0-32-generic-pae
-rw-r--r-- 1 root root 774843 Jan 7 11:12 abi-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 774951 Mar 22 13:49 abi-3.0.0-32-generic-pae
-rw-r--r-- 1 root root 142100 Jan 7 11:12 config-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 142100 Mar 22 13:49 config-3.0.0-32-generic-pae
drwxr-xr-x 2 root root 4096 Mar 30 08:46 grub
lrwxrwxrwx 1 root root 59 Apr 9 18:50 initrd.img -> /usr/pluto/diskless/83/boot/initrd.img-3.0.0-32-generic-pae
-rw-r--r-- 1 root root 14000371 Feb 3 17:50 initrd.img-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 13993859 Apr 9 19:31 initrd.img-3.0.0-32-generic-pae
-rw-r--r-- 1 root root 1215 Jan 7 11:13 vmcoreinfo-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 1215 Mar 22 13:50 vmcoreinfo-3.0.0-32-generic-pae
lrwxrwxrwx 1 root root 56 Apr 9 18:49 vmlinuz -> /usr/pluto/diskless/83/boot/vmlinuz-3.0.0-32-generic-pae
-rw-r--r-- 1 root root 4788528 Jan 7 11:12 vmlinuz-3.0.0-30-generic-pae
-rw-r--r-- 1 root root 4788400 Mar 22 13:49 vmlinuz-3.0.0-32-generic-pae
Im thinking some of the MASTER LMCE gurus may be gasping...