<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><p id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-height: auto;">I couldn't wait. It looks like it updated grub properly this time. Still got that weird message from yum about install only packages, but I am not sure if that is because I am installing the rpm's from a local file using yum. I don't have a .repo setup for the testing repo.&nbsp;</p><p id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-height: auto;"><br></p><p id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-height: auto;"><p id="bloop_customfont" style="margin: 0px; ">[root@xm2 joe]# yum update kernel-xen-*.rpm</p><p id="bloop_customfont" style="margin: 0px; ">Loaded plugins: fastestmirror, presto</p><p id="bloop_customfont" style="margin: 0px; ">Loading mirror speeds from cached hostfile</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;* base: mirrors.lga7.us.voxel.net</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;* extras: centos.mirror.constant.com</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;* kernel-xen: us2.mirror.crc.id.au</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;* soluslabs: mirror.us1.soluslabs.net</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;* updates: centos.mirror.nac.net</p><p id="bloop_customfont" style="margin: 0px; ">Setting up Update Process</p><p id="bloop_customfont" style="margin: 0px; ">Examining kernel-xen-3.9.7-5.el6xen.x86_64.rpm: kernel-xen-3.9.7-5.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Marking kernel-xen-3.9.7-5.el6xen.x86_64.rpm as an update to kernel-xen-3.7.4-1.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Marking kernel-xen-3.9.7-5.el6xen.x86_64.rpm as an update to kernel-xen-3.8.1-1.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Marking kernel-xen-3.9.7-5.el6xen.x86_64.rpm as an update to kernel-xen-3.8.2-3.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Examining kernel-xen-firmware-3.9.7-5.el6xen.x86_64.rpm: kernel-xen-firmware-3.9.7-5.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Marking kernel-xen-firmware-3.9.7-5.el6xen.x86_64.rpm as an update to kernel-xen-firmware-3.8.2-3.el6xen.x86_64</p><p id="bloop_customfont" style="margin: 0px; ">Resolving Dependencies</p><p id="bloop_customfont" style="margin: 0px; ">--&gt; Running transaction check</p><p id="bloop_customfont" style="margin: 0px; ">---&gt; Package kernel-xen.x86_64 0:3.9.7-5.el6xen will be installed</p><p id="bloop_customfont" style="margin: 0px; ">---&gt; Package kernel-xen-firmware.x86_64 0:3.8.2-3.el6xen will be updated</p><p id="bloop_customfont" style="margin: 0px; ">---&gt; Package kernel-xen-firmware.x86_64 0:3.9.7-5.el6xen will be an update</p><p id="bloop_customfont" style="margin: 0px; ">--&gt; Finished Dependency Resolution</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Dependencies Resolved</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">============================================================================================================================================================================</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;Package &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Arch &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Version &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Repository &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Size</p><p id="bloop_customfont" style="margin: 0px; ">============================================================================================================================================================================</p><p id="bloop_customfont" style="margin: 0px; ">Installing:</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;kernel-xen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.9.7-5.el6xen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /kernel-xen-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 87 M</p><p id="bloop_customfont" style="margin: 0px; ">Updating:</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp;kernel-xen-firmware &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.9.7-5.el6xen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /kernel-xen-firmware-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.2 M</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Transaction Summary</p><p id="bloop_customfont" style="margin: 0px; ">============================================================================================================================================================================</p><p id="bloop_customfont" style="margin: 0px; ">Install &nbsp; &nbsp; &nbsp; 1 Package(s)</p><p id="bloop_customfont" style="margin: 0px; ">Upgrade &nbsp; &nbsp; &nbsp; 1 Package(s)</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Total size: 90 M</p><p id="bloop_customfont" style="margin: 0px; ">Is this ok [y/N]: y</p><p id="bloop_customfont" style="margin: 0px; ">Downloading Packages:</p><p id="bloop_customfont" style="margin: 0px; ">Running rpm_check_debug</p><p id="bloop_customfont" style="margin: 0px; ">Running Transaction Test</p><p id="bloop_customfont" style="margin: 0px; ">Transaction Test Succeeded</p><p id="bloop_customfont" style="margin: 0px; ">Running Transaction</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Updating &nbsp; : kernel-xen-firmware-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Installing : kernel-xen-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; "><b>Detected 'installonlypkgs' option already in /etc/yum.conf. Not modifying!</b></p><p id="bloop_customfont" style="margin: 0px; "><b>Adding Xen lines to /boot/grub/grub.conf for kernel-xen-3.9.7-5.el6xen.x86_64.</b></p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Cleanup &nbsp; &nbsp;: kernel-xen-firmware-3.8.2-3.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Verifying &nbsp;: kernel-xen-firmware-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Verifying &nbsp;: kernel-xen-3.9.7-5.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; Verifying &nbsp;: kernel-xen-firmware-3.8.2-3.el6xen.x86_64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3/3&nbsp;</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Installed:</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; kernel-xen.x86_64 0:3.9.7-5.el6xen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Updated:</p><p id="bloop_customfont" style="margin: 0px; ">&nbsp; kernel-xen-firmware.x86_64 0:3.9.7-5.el6xen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</p><p id="bloop_customfont" style="margin: 0px; "><br></p><p id="bloop_customfont" style="margin: 0px; ">Complete!</p><p id="bloop_customfont" style="margin: 0px; ">[root@xm2 joe]#&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">[root@xm2 joe]#&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">[root@xm2 joe]#&nbsp;</p><p id="bloop_customfont" style="margin: 0px; ">[root@xm2 joe]# cat /boot/grub/menu.lst&nbsp;</p><p id="bloop_customfont" style="margin: 0px; "># grub.conf generated by anaconda</p><p id="bloop_customfont" style="margin: 0px; ">#</p><p id="bloop_customfont" style="margin: 0px; "># Note that you do not have to rerun grub after making changes to this file</p><p id="bloop_customfont" style="margin: 0px; "># NOTICE: &nbsp;You do not have a /boot partition. &nbsp;This means that</p><p id="bloop_customfont" style="margin: 0px; "># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;all kernel and initrd paths are relative to /, eg.</p><p id="bloop_customfont" style="margin: 0px; "># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;root (hd0,0)</p><p id="bloop_customfont" style="margin: 0px; "># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;kernel /boot/vmlinuz-version ro root=/dev/md0</p><p id="bloop_customfont" style="margin: 0px; "># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;initrd /boot/initrd-[generic-]version.img</p><p id="bloop_customfont" style="margin: 0px; ">#boot=/dev/sdb</p><p id="bloop_customfont" style="margin: 0px; ">default=0</p><p id="bloop_customfont" style="margin: 0px; ">timeout=5</p><p id="bloop_customfont" style="margin: 0px; ">splashimage=(hd0,0)/boot/grub/splash.xpm.gz</p><p id="bloop_customfont" style="margin: 0px; ">hiddenmenu</p><p id="bloop_customfont" style="margin: 0px; ">title CentOS (3.9.7-5.el6xen.x86_64)</p><p id="bloop_customfont" style="margin: 0px; "><span class="Apple-tab-span" style="white-space:pre">        </span>root (hd0,0)</p><p id="bloop_customfont" style="margin: 0px; "><span class="Apple-tab-span" style="white-space:pre">        </span>kernel /boot/xen.gz dom0_mem=1024M cpufreq=xen dom0_max_vcpus=4 dom0_vcpus_pin</p><p id="bloop_customfont" style="margin: 0px; "><span class="Apple-tab-span" style="white-space:pre">        </span>module /boot/vmlinuz-3.9.7-5.el6xen.x86_64 ro root=UUID=7820245c-b7d8-4871-a1ba-7f7b98f0bb88 rd_NO_LUKS &nbsp;KEYBOARDTYPE=pc KEYTABLE=us LANG=en_US.UTF-8 rd_MD_UUID=9c2361ac:e1dd6c77:a309a3bf:dd1f145b SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_MD_UUID=1f9f37dd:c1869180:751d394d:15171390 rd_NO_DM rhgb quiet</p><p id="bloop_customfont" style="margin: 0px; "><span class="Apple-tab-span" style="white-space:pre">        </span>module /boot/initramfs-3.9.7-5.el6xen.x86_64.img</p></p><p id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-height: auto;"><br></p> <div class="" id="bloop_sign_1372305372999112192"><span style="font-family:helvetica,arial;font-size:13px"></span>--&nbsp;<br>Joe Fialkowski<div><font color="#9daaab">ZoomCloud.net</font></div><div><font color="#9daaab">Hosting • VPS • Dedicated</font></div></div> <br><p style="color:#A0A0A8;">On June 26, 2013 at 10:01:10 PM, Joe Fialkowski (joe@zoomcloud.net) wrote:</p> <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><p id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-height: auto;">I have another upgrade planned for tomorrow night. I will give it a shot if you would like.&nbsp;</p> <div class="" id="bloop_sign_1372298429047649792"><span style="font-family:helvetica,arial;font-size:13px"></span>--&nbsp;<br>Joe Fialkowski<div><font color="#9daaab">ZoomCloud.net</font></div><div><font color="#9daaab">Hosting • VPS • Dedicated</font></div></div> <br><p style="color:#A0A0A8;">On June 26, 2013 at 9:55:09 PM, Steven Haigh (netwiz@crc.id.au) wrote:</p> <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div>On 27/06/2013 11:05 AM, Adi Pircalabu wrote:<br>&gt; On 27-06-2013 10:44 AM, Steven Haigh wrote:<br>&gt;&gt; On 26/06/2013 2:57 PM, Adi Pircalabu wrote:<br>&gt;&gt;&gt; On 26-06-2013 13:51 PM, Steven Haigh wrote:<br>&gt;&gt;&gt;&gt; This makes me think I should use something like:<br>&gt;&gt;&gt;&gt; GRUB_CONF=$(readlink -f /etc/grub.conf 2&gt;/dev/null)<br>&gt;&gt;&gt;&gt; if [ -z $GRUB_CONF ]; then<br>&gt;&gt;&gt;&gt;    if [ -f "/boot/grub/grub.conf" ]; then<br>&gt;&gt;&gt;&gt;     GRUB_CONF="/boot/grub/grub.conf"<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Problem here, $GRUB_CONF link can point to any other file, you don't<br>&gt;&gt;&gt; test the value but you then test if /boot/grub/grub.conf exists and use<br>&gt;&gt;&gt; it. In this case the symlink test is useless.<br>&gt;&gt;<br>&gt;&gt; Not quite. The -z operator will check for a zero length string.<br>&gt;<br>&gt; Ah yes, you're correct, I was (mis)reading it the other way. Though your<br>&gt; zero test doesn't cover the case when /etc/grub.conf is a symlink to a<br>&gt; non-existent file. To add an additional safeguard you might look at<br>&gt; using '-e' readlink(1) option, for which the manual states:<br>&gt;         -e, --canonicalize-existing<br>&gt;                canonicalize by following every symlink in every<br>&gt; component of the given name recursively, all components must exist<br>&gt; Here's a quick test I did with/without '-e':<br>&gt;<br>&gt; adi@adi:~$ ln -sf /nonexistent /tmp/nonexistent<br>&gt; adi@adi:~$ stat /tmp/nonexistent<br>&gt;    File: ‘/tmp/nonexistent’ -&gt; ‘/nonexistent’<br>&gt;    Size: 12            Blocks: 0          IO Block: 4096   symbolic link<br>&gt; Device: fc00h/64512d    Inode: 917682      Links: 1<br>&gt; Access: (0777/lrwxrwxrwx)  Uid: ( 1000/     adi)   Gid: ( 1000/     adi)<br>&gt; Access: 2013-06-27 10:52:27.408079496 +1000<br>&gt; Modify: 2013-06-27 10:52:23.932261559 +1000<br>&gt; Change: 2013-06-27 10:52:23.932261559 +1000<br>&gt;   Birth: -<br>&gt; adi@adi:~$ ls -l /tmp/nonexistent<br>&gt; lrwxrwxrwx 1 adi adi 12 Jun 27 10:52 /tmp/nonexistent -&gt; /nonexistent<br>&gt; adi@adi:~$ readlink /tmp/nonexistent<br>&gt; /nonexistent<br>&gt; adi@adi:~$ echo $?<br>&gt; 0<br>&gt; (Oops, non-zero length here and no error returned!)<br>&gt; adi@adi:~$ readlink -e /tmp/nonexistent<br>&gt; adi@adi:~$ echo $?<br>&gt; 1<br>&gt; (All good here)<br>&gt;<br>&gt; You can get a similar result by using '-L' flag for stat(1) command.<br>&gt; What do you think?<br><br>I'd say you're probably onto something here. I'm currently building <br>3.9.7-5 with the following:<br><br>         GRUB_CONF=$(readlink -n -e /etc/grub.conf 2&gt;/dev/null)<br>         if [ -z $GRUB_CONF ]; then<br>                 if [ -f "/boot/grub/grub.conf" ]; then<br>                         GRUB_CONF="/boot/grub/grub.conf"<br>                 else<br>                         echo "No valid grub.conf found. You'll need to <br>fix this manually!"<br>                 fi<br>         else<br>                 echo "Adding Xen lines to $GRUB_CONF for <br>kernel-xen-%{KRELEASE}."<br>                etc etc etc<br><br><br>For readlink:<br>   -e, --canonicalize-existing   canonicalize by following every symlink in<br>                                 every component of the given name <br>recursively,<br>                                 all components must exist<br>   -n, --no-newline              do not output the trailing newline<br><br>While the new line may not have caused any issues, having a non-newline <br>terminated string returned is probably more expected behaviour for any <br>future additions.<br><br>3.9.7-5 will hit the testing repo shortly...<br><br>-- <br>Steven Haigh<br><br>Email: netwiz@crc.id.au<br>Web: https://www.crc.id.au<br>Phone: (03) 9001 6090 - 0412 935 897<br>Fax: (03) 8338 0299<br>_______________________________________________<br>kernel-xen mailing list<br>kernel-xen@lists.wireless.org.au<br>https://lists.wireless.org.au/mailman/listinfo/kernel-xen<br></div></span></blockquote></div></span></blockquote></body></html>