{"id":293,"date":"2015-10-08T21:19:21","date_gmt":"2015-10-08T21:19:21","guid":{"rendered":"http:\/\/www.micha.name\/blog\/?p=293"},"modified":"2015-10-14T21:27:43","modified_gmt":"2015-10-14T21:27:43","slug":"upgrading-server-from-debian-7-wheezy-to-8-jessie","status":"publish","type":"post","link":"https:\/\/www.micha.name\/blog\/2015\/10\/08\/upgrading-server-from-debian-7-wheezy-to-8-jessie\/","title":{"rendered":"Upgrading server from Debian 7 &#8220;wheezy&#8221; to 8 &#8220;jessie&#8221;"},"content":{"rendered":"<p>Now that Debian 8.2 &#8220;Jessie&#8221; was released I decided to finally upgrade <strong>anaconda<\/strong> from &#8220;Wheezy&#8221; (Debian 7).<\/p>\n<h2>Preparing for the Upgrade<\/h2>\n<p>The main issue was how to avoid systemd? Well, simple &#8211; pin the offending packages:<br \/>\n<span class=\"collapseomatic \" id=\"id69df0d3ef0b0d\"  tabindex=\"0\" title=\"\/etc\/apt\/preferences.d\/systemd:\"    >\/etc\/apt\/preferences.d\/systemd:<\/span><div id=\"target-id69df0d3ef0b0d\" class=\"collapseomatic_content \">\n<p style=\"padding-left: 30px;\"><code>Package: systemd<br \/>\nPin: origin \"\"<br \/>\nPin-Priority: -1<\/code><\/p>\n<p style=\"padding-left: 30px;\">Package: *systemd*<br \/>\nPin: origin &#8220;&#8221;<br \/>\nPin-Priority: -1<\/p>\n<p style=\"padding-left: 30px;\">Package: systemd:i386<br \/>\nPin: origin &#8220;&#8221;<br \/>\nPin-Priority: -1<\/p>\n<p style=\"padding-left: 30px;\">Package: *systemd*:i386<br \/>\nPin: origin &#8220;&#8221;<br \/>\nPin-Priority: -1<\/p>\n<\/div>\n<h2>Performing the Upgrade<\/h2>\n<p>It was a simple matter of replacing &#8220;wheezy&#8221; with &#8220;jessie&#8221; in all of the apt-sources, and performing an\u00a0<code>apt-get dist-upgrade<\/code>, which proceeded smoothly. I answered &#8220;No&#8221; to all the requests to replace configuration files with the new ones,\u00a0preferring to fix them later\u00a0as necessary.<\/p>\n<p>I then spent some time looking through <code>\/etc<\/code> to see which packages had updated configurations:<\/p>\n<p style=\"padding-left: 30px;\"><code>$ find . -name \"*.dpkg*\"<\/code><\/p>\n<h2>What Worked<\/h2>\n<p>The majority of packages &#8220;just worked&#8221;, needing little to no post-upgrade maintenance:<\/p>\n<ul>\n<li>bind9 &#8211; DNS<\/li>\n<li>exim4 &#8211; SMTP<\/li>\n<li>courier &#8211; IMAP<\/li>\n<li>mailman &#8211;\u00a0Mailing list manager<\/li>\n<li>mysql &#8211; Database server<\/li>\n<li>samba &#8211; Windows file server<\/li>\n<li>Mediatomb &#8211; UPnP media server<\/li>\n<\/ul>\n<h2>What Needed Work<\/h2>\n<p>The following were\u00a0the main post-upgrade notes:<\/p>\n<h3>Apache (web server)<\/h3>\n<p>There was a bit of a format\u00a0and layout change of the Apache configuration, which broke things including all web-based services. Mostly it was a case of applying the Apache-specific fixes to bring everything else back up.<\/p>\n<ul>\n<li>New format for Allow\/Deny; required updating various configuration files.<\/li>\n<li>All directories which are outside the Document Root now need an explicit Allow statement, otherwise they can&#8217;t be accessed:\n<ul>\n<li><code>Require all\u00a0granted<\/code><\/li>\n<\/ul>\n<\/li>\n<li>The\u00a0<code>conf.d<\/code> directory was deprecated in favour of\u00a0<code>conf-available<\/code>, so various configuration files had to be moved; also, all configuration files must now have a &#8220;.conf&#8221; ending.<\/li>\n<\/ul>\n<h3>Squid (web proxy)<\/h3>\n<p>The main problem is that I was still running a very\u00a0obsolete squid v2 package, but had already installed squid v3 as well. I removed the old squid, and then to get\u00a0<strong>squidview<\/strong> working again, created a symlink from <code>\/var\/log\/squid3<\/code> to <code>\/var\/log\/squid<\/code>. Simples.<\/p>\n<h3>Roundcube (web email)<\/h3>\n<p>Mainly worked (following the Apache changes; see above), however, my CA certificate got wiped from the list of trusted certificates so that needed to be reinstalled into <code>\/etc\/ssl\/certs<\/code>.<\/p>\n<h3>Hobbit\/Xymon (system monitor)<\/h3>\n<p>Hobbit is now deprecated in favour of Xymon; I have not yet completed the change-over, but it requires a bit of config copying between the old and the new paths.<\/p>\n<h2>Major Changes<\/h2>\n<h3>Applications<\/h3>\n<p>Well, obviously &#8211; the main reason for an upgrade! Various software packages have had greater or lesser bumps to their versions since the last version of Debian.<\/p>\n<h3>Filesystem<\/h3>\n<p>There&#8217;s some filesystem layout changes; for better or worse. Some of the ones I&#8217;ve noticed:<\/p>\n<p><code>\/var\/run<\/code> -&gt; <code>\/run<\/code><\/p>\n<p><code>\/var\/www<\/code> -&gt; <code>\/var\/www\/html<\/code><\/p>\n<p>Not entirely sure I agree with some of these, especially moving the run directory, as that means more root-directory spam.<\/p>\n<p>&nbsp;<\/p>\n<p>There are various other notes and issues listed here:<\/p>\n<p>https:\/\/www.debian.org\/releases\/stable\/i386\/release-notes\/ch-information.en.html<\/p>\n","protected":false},"excerpt":{"rendered":"<p>My experience upgrading anaconda from Debian 7 &#8220;wheezy&#8221; to Debian 8 &#8220;jessie&#8221;.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[11,56,29],"tags":[12,21,30],"_links":{"self":[{"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/posts\/293"}],"collection":[{"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/comments?post=293"}],"version-history":[{"count":5,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/posts\/293\/revisions"}],"predecessor-version":[{"id":304,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/posts\/293\/revisions\/304"}],"wp:attachment":[{"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/media?parent=293"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/categories?post=293"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.micha.name\/blog\/wp-json\/wp\/v2\/tags?post=293"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}