{"id":5,"date":"2006-03-15T16:53:01","date_gmt":"2006-03-15T16:53:01","guid":{"rendered":"https:\/\/www.bishnet.net\/tim\/blog\/2006\/03\/15\/upgrading-from-freebsd-52-to-55-releng_5\/"},"modified":"2010-11-11T13:02:19","modified_gmt":"2010-11-11T13:02:19","slug":"upgrading-from-freebsd-52-to-55-releng_5","status":"publish","type":"post","link":"https:\/\/www.bishnet.net\/tim\/blog\/2006\/03\/15\/upgrading-from-freebsd-52-to-55-releng_5\/","title":{"rendered":"Upgrading from FreeBSD 5.2 to 5.5 (RELENG_5)"},"content":{"rendered":"<p>I&#8217;ve been putting off upgrading my remotely hosted server from FreeBSD 5.2.1 for a while now, but after I started getting random problems I decided I had to move forward.<\/p>\n<p>To start with there were a few reasons putting me off doing the upgrade:<\/p>\n<ol>\n<li>From version 5.3 of FreeBSD vinum was pretty much broken, so I&#8217;d need to switch to gvinum.<\/li>\n<li>The threading library changed from libc_r to libpthread.<\/li>\n<li>A handful of key libraries in \/lib and \/usr\/lib had their versions bumped.<\/li>\n<\/ol>\n<p>The first problem is pretty straightforward to work around. Changing &#8220;vinum_load&#8221; to &#8220;gvinum_load&#8221; in \/boot\/loader.conf, and changing &#8220;vinum&#8221; to &#8220;gvinum&#8221; in \/etc\/fstab was all it took. To be on the safe side I did a fsck of the filesystems after rebooting in to 5.5.<\/p>\n<p>The other two problems can be dealt with after a reboot by rebuilding all the applications on the machine. This is as simple as running &#8220;portupgrade -af&#8221;, but I chose to do it in chunks so I could get key things up and running quickly. One trick I used was to touch a file in each directory under \/var\/db\/pkg, which would get removed when the package was upgraded. This allowed me to easily see what I still needed to do.<\/p>\n<p>Most of this information was gathered from looking at mailing list archives and most importantly from reading \/usr\/src\/UPDATING.<\/p>\n<p>So, what problems had I been having before this that forced me to do the upgrade?<\/p>\n<ol>\n<li>When piping a message to a command in mutt the pipe would never close. So, for example, piping to cat would display the message and then just hang.<\/li>\n<li>PHP would hang when applications used the PHP mail() function; this forked sendmail and piped the message to it. I suspect this is the same problem as above.<\/li>\n<li>Various things, most noticeably MySQL 5, would not compile. The problem was the recent libtool upgrade; libtool filters out -lc_r linker arguments.<\/li>\n<\/ol>\n<p>After doing the upgrade these problems went away. The whole procedure was far less painful than I had been expecting.<\/p>\n<p>Of course, the next challenge is upgrading to RELENG_6. But maybe I&#8217;ll leave that for another couple of years&#8230; \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been putting off upgrading my remotely hosted server from FreeBSD 5.2.1 for a while now, but after I started getting random problems I decided I had to move forward. To start with there were a few reasons putting me off doing the upgrade: From version 5.3 of FreeBSD vinum was pretty much broken, so I&#8217;d need to switch to &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-5","post","type-post","status-publish","format-standard","hentry","category-freebsd"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/posts\/5","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/comments?post=5"}],"version-history":[{"count":1,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/posts\/5\/revisions"}],"predecessor-version":[{"id":403,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/posts\/5\/revisions\/403"}],"wp:attachment":[{"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/media?parent=5"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/categories?post=5"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bishnet.net\/tim\/blog\/wp-json\/wp\/v2\/tags?post=5"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}