{"id":312,"date":"2008-05-30T00:21:28","date_gmt":"2008-05-29T21:21:28","guid":{"rendered":"http:\/\/www.void.gr\/kargig\/blog\/?p=312"},"modified":"2008-05-30T00:25:12","modified_gmt":"2008-05-29T21:25:12","slug":"another-day-another-debian-headache","status":"publish","type":"post","link":"https:\/\/www.void.gr\/kargig\/blog\/2008\/05\/30\/another-day-another-debian-headache\/","title":{"rendered":"Another day, another debian headache"},"content":{"rendered":"<p>The case is this, a debian server running Debian 4.0 etch has it&#8217;s motherboard broken. We send it for replacement but they don&#8217;t have another of the same model to send us so they send us a shiny new model. The new model houses a P35 chipset. The latest Debian 4.0 etch kernel is 2.6.18 which does not support the ICH9 chipset that the motherboard has. The result ? <em>The machine can&#8217;t find any sata discs attached to it<\/em> and it can&#8217;t boot. Wonderfull!<\/p>\n<p>Asking around for a possible solution I got two types of answers: a) build a newer kernel on my own b) upgrade the whole system to testing (lenny) instead of stable (etch).<br \/>\nAs far as solution (a), I was not willing to build a kernel of my own. It&#8217;s not that I can&#8217;t, it&#8217;s the fact that I find it ridiculous for a debian system to have to build a kernel of my own just like I did when I was using slackware. It&#8217;s debian, the distribution thought to be the most stable and well polished and and and&#8230;there must be an automated way to run a recent proper kernel.<br \/>\nRegarding solution (b), I was not willing to de-stabilize my system. I want and need to run stable versions of services on that server. A lot of people told me that &#8220;testing&#8221; is very stable. If debian testing is stable enough then they must mark it as stable and push the previous &#8220;stable&#8221; into the void. While it&#8217;s named &#8220;testing&#8221; I don&#8217;t trust it.<\/p>\n<p>The solve the problem, I booted with a beta of the next version of  <a href=\"http:\/\/www.ilug.gr\/iloog\/\">iloog<\/a>, mounted the debian partition and chrooted to it. Following some help I was given on IRC I added the testing sources to <em>\/etc\/apt\/sources.list<\/em>:<br \/>\n<code>deb http:\/\/ftp.ntua.gr\/pub\/linux\/debian\/ stable main contrib non-free<br \/>\ndeb-src http:\/\/ftp.ntua.gr\/pub\/linux\/debian\/ stable main contrib non-free<br \/>\ndeb http:\/\/security.debian.org\/ stable\/updates main contrib<br \/>\ndeb-src http:\/\/security.debian.org\/ stable\/updates main contrib<br \/>\ndeb http:\/\/ftp.ntua.gr\/pub\/linux\/debian\/ testing main contrib non-free<br \/>\ndeb-src http:\/\/ftp.ntua.gr\/pub\/linux\/debian\/ testing main contrib non-free<br \/>\ndeb http:\/\/security.debian.org\/ testing\/updates main contrib<br \/>\ndeb-src http:\/\/security.debian.org\/ testing\/updates main contrib<br \/>\n<\/code><\/p>\n<p>Reading some stuff about &#8220;apt pinning&#8221; I added the following in <em>\/etc\/apt\/preferences<\/em>:<br \/>\n<code>Package: *<br \/>\nPin: release a=stable<br \/>\nPin-Priority: 700<br \/>\n---blank line---<br \/>\nPackage: *<br \/>\nPin: release a=testing<br \/>\nPin-Priority: 650<br \/>\n<\/code><br \/>\n(that &#8212;blank line&#8212; mark should really be an empty line. due to theming problems with this blog I can&#8217;t make it appear properly inside &lt;code&gt; tags)<\/p>\n<p>Then I issued an: <code>aptitude update<\/code><br \/>\nThen I got errors like:<\/p>\n<blockquote><p>Dynamic MMap ran out of room<br \/>\nError occurred while processing vdr-plugin-skinenigmang (NewVersion1)<br \/>\nProblem with MergeList \/var\/lib\/apt\/lists\/ftp.ntua.gr_pub_linux_debian_dists_lenny_main_binary-i386_Packages<br \/>\nThe package lists or status file could not be parsed or opened.<br \/>\nCouldn&#8217;t rebuild package cache<\/p><\/blockquote>\n<p>The solution to those were to create another file named <em>\/etc\/apt\/apt.conf<\/em> with the following inside it:<br \/>\n<code>APT::Cache-Limit \"15388608\";<\/code><\/p>\n<p>Running <em>aptitude update<\/em> again was fine. Then an <em>apt-cache search linux-image<\/em> showed me the list of available kernels. I now had a 2.6.24 kernel available. Finally an <em>aptitude install linux-image-2.6.24-1-686<\/em> installed the new kernel.<br \/>\nI had to edit the <em>\/etc\/grub\/menu.conf<\/em> a bit for it to play nicely (due to the chrooting I guess) but afterwards the server booted just fine.<\/p>\n<p>I don&#8217;t know whether what I did is good or bad for a debian system. The fact is that it works and aptitude update does not want to upgrade any of my packages to the testing version. <\/p>\n<p>&lt;rant&gt;<br \/>\nPlease debian maintainers, if you have finished patching your machines due to <a href=\"http:\/\/cve.mitre.org\/cgi-bin\/cvename.cgi?name=CVE-2008-0166\">the recent openssl vulnerability you created<\/a>, rename your &#8220;stable&#8221; release to &#8220;ancient&#8221; and &#8220;testing&#8221; to &#8220;stable&#8221; so we have less trouble running your distro on new hardware. Thanks in advance.<br \/>\n&lt;\/rant&gt;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The case is this, a debian server running Debian 4.0 etch has it&#8217;s motherboard broken. We send it for replacement but they don&#8217;t have another of the same model to send us so they send us a shiny new model. The new model houses a P35 chipset. The latest Debian 4.0 etch kernel is 2.6.18 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ep_exclude_from_search":false,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-312","post","type-post","status-publish","format-standard","hentry","category-linux"],"aioseo_notices":[],"views":6797,"_links":{"self":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts\/312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/comments?post=312"}],"version-history":[{"count":0,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts\/312\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/media?parent=312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/categories?post=312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/tags?post=312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}