1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
5 <title>Petter Reinholdtsen
</title>
6 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css">
7 <link rel=
"alternate" title=
"RSS Feed" href=
"http://people.skolelinux.org/pere/blog/index.rss" type=
"application/rss+xml">
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html">Idea for a change to LDAP schemas allowing DNS and DHCP info to be combined into one object
</a></div>
24 <div class=
"date">2010-
06-
24 00:
35</div>
27 <a href=
"http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html">complained
28 about the fact
</a> that it is not possible with the provided schemas
29 for storing DNS and DHCP information in LDAP to combine the two sets
30 of information into one LDAP object representing a computer.
</p>
32 <p>In the mean time, I discovered that a simple fix would be to make
33 the dhcpHost object class auxiliary, to allow it to be combined with
34 the dNSDomain object class, and thus forming one object for one
35 computer when storing both DHCP and DNS information in LDAP.
</p>
37 <p>If I understand this correctly, it is not safe to do this change
38 without also changing the assigned number for the object class, and I
39 do not know enough about LDAP schema design to do that properly for
42 <p>Anyway, for future reference, this is how I believe we could change
44 <a href=
"http://tools.ietf.org/html/draft-ietf-dhc-ldap-schema-00">DHCP
45 schema
</a> to solve at least part of the problem with the LDAP schemas
46 available today from IETF.
</p>
49 --- dhcp.schema (revision
65192)
50 +++ dhcp.schema (working copy)
52 objectclass (
2.16.840.1.113719.1.203.6.6
54 DESC 'This represents information about a particular client'
58 MAY (dhcpLeaseDN $ dhcpHWAddress $ dhcpOptionsDN $ dhcpStatements $ dhcpComments $ dhcpOption)
59 X-NDS_CONTAINMENT ('dhcpService' 'dhcpSubnet' 'dhcpGroup') )
62 <p>I very much welcome clues on how to do this properly for Debian
63 Edu/Squeeze. We provide the DHCP schema in our debian-edu-config
64 package, and should thus be free to rewrite it as we see fit.
</p>
70 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>.
74 <div class=
"padding"></div>
77 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html">Calling tasksel like the installer, while still getting useful output
</a></div>
78 <div class=
"date">2010-
06-
16 14:
55</div>
80 <p>A few times I have had the need to simulate the way tasksel
81 installs packages during the normal debian-installer run. Until now,
82 I have ended up letting tasksel do the work, with the annoying problem
83 of not getting any feedback at all when something fails (like a
84 conffile question from dpkg or a download that fails), using code like
88 export DEBIAN_FRONTEND=noninteractive
92 This would invoke tasksel, let its automatic task selection pick the
93 tasks to install, and continue to install the requested tasks without
94 any output what so ever.
96 Recently I revisited this problem while working on the automatic
97 package upgrade testing, because tasksel would some times hang without
98 any useful feedback, and I want to see what is going on when it
99 happen. Then it occured to me, I can parse the output from tasksel
100 when asked to run in test mode, and use that aptitude command line
101 printed by tasksel then to simulate the tasksel run. I ended up using
105 export DEBIAN_FRONTEND=noninteractive
106 cmd="$(in_target tasksel -t --new-install | sed 's/debconf-apt-progress -- //')"
110 <p>The content of $cmd is typically something like "
<tt>aptitude -q
111 --without-recommends -o APT::Install-Recommends=no -y install
112 ~t^desktop$ ~t^gnome-desktop$ ~t^laptop$ ~pstandard ~prequired
113 ~pimportant
</tt>", which will install the gnome desktop task, the
114 laptop task and all packages with priority standard , required and
115 important, just like tasksel would have done it during
118 <p>A better approach is probably to extend tasksel to be able to
119 install packages without using debconf-apt-progress, for use cases
126 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug</a>.
130 <div class="padding
"></div>
133 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Vinmonopolet_bryter_loven___penlyst___og_flere_planlegger____gj__re_det_samme.html
">Vinmonopolet bryter loven åpenlyst - og flere planlegger å gjøre det samme</a></div>
134 <div class="date
">2010-06-16 11:00</div>
136 <p><a href="http://www.dagbladet.no/
2010/
06/
16/nyheter/innenriks/streik/arbeidsliv/
12157858/
">Dagbladet
137 melder</a> at Vinmonopolet med bakgrunn i vekterstreiken som pågår i
138 Norge for tiden, har bestemt seg for med vitende og vilje å bryte
139 sentralbanklovens paragraf 14 ved å nekte folk å betale med
140 kontanter, og at flere butikker planlegger å følge deres eksempel.
141 Jeg synes det er hårreisende hvis de slipper unna med et slikt
142 soleklart lovbrudd, og lurer på hva slags muligheter jeg vil ha hvis
143 jeg blir nektet å handle med kontanter. Jeg handler i hovedsak med
144 kontanter selv, da jeg anser det som en borgerrett å kunne handle
145 anonymt uten at det blir registrert. For meg er det et angrep på mitt
146 personvern å nekte å ta imot kontant betaling.</p>
148 <p><a href="http://www.lovdata.no/all/tl-
19850524-
028-
003.html#
14">Paragrafen
149 i sentralbankloven</a> lyder:</p>
152 <p>§ 14. Tvungent betalingsmiddel</p>
154 <p>Bankens sedler og mynter er tvungent betalingsmiddel i Norge. Ingen
155 er pliktig til i én betaling å ta imot mer enn femogtyve mynter av
158 <p>Sterkt skadde sedler og mynter er ikke tvungent
159 betalingsmiddel. Banken gir nærmere forskrifter om erstatning for
160 bortkomne, brente eller skadde sedler og mynter.</p>
162 <p>Selv om en avtale inneholder klausul om betaling av en
163 pengeforpliktelse i gullverdi, kan skyldneren frigjøre seg med tvungne
164 betalingsmidler uten hensyn til denne klausul.</p>
167 <p>Det er med bakgrunn i denne lovet ikke tillatt å nekte å ta imot
168 kontakt betaling. Det er en lov jeg har sans for, og som jeg mener må
169 håndheves strengt.</p>
175 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern</a>.
179 <div class="padding
"></div>
182 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html
">Officeshots taking shape</a></div>
183 <div class="date
">2010-06-13 11:40</div>
185 <p>For those of us caring about document exchange and
186 interoperability, <a href="http://www.officeshots.org/
">OfficeShots</a>
187 is a great service. It is to ODF documents what
188 <a href="http://browsershots.org/
">BrowserShots</a> is for web
191 <p>A while back, I was contacted by Knut Yrvin at the part of Nokia
192 that used to be Trolltech, who wanted to help the OfficeShots project
193 and wondered if the University of Oslo where I work would be
194 interested in supporting the project. I helped him to navigate his
195 request to the right people at work, and his request was answered with
196 a spot in the machine room with power and network connected, and Knut
197 arranged funding for a machine to fill the spot. The machine is
198 administrated by the OfficeShots people, so I do not have daily
199 contact with its progress, and thus from time to time check back to
200 see how the project is doing.</p>
202 <p>Today I had a look, and was happy to see that the Dell box in our
203 machine room now is the host for several virtual machines running as
204 OfficeShots factories, and the project is able to render ODF documents
205 in 17 different document processing implementation on Linux and
206 Windows. This is great.</p>
212 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard
">standard</a>.
216 <div class="padding
"></div>
219 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__removals_by_apt_and_aptitude.html
">Lenny->Squeeze upgrades, removals by apt and aptitude</a></div>
220 <div class="date
">2010-06-13 09:05</div>
223 <a href="http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html
">testing
224 of Debian upgrades</a> from Lenny to Squeeze continues, and I've
225 finally made the upgrade logs available from
226 <a href="http://people.skolelinux.org/pere/debian-upgrade-testing/
">http://people.skolelinux.org/pere/debian-upgrade-testing/</a>.
227 I am now testing dist-upgrade of Gnome and KDE in a chroot using both
228 apt and aptitude, and found their differences interesting. This time
229 I will only focus on their removal plans.</p>
231 <p>After installing a Gnome desktop and the laptop task, apt-get wants
232 to remove 72 packages when dist-upgrading from Lenny to Squeeze. The
233 surprising part is that it want to remove xorg and all
234 xserver-xorg-video* drivers. Clearly not a good choice, but I am not
235 sure why. When asking aptitude to do the same, it want to remove 129
236 packages, but most of them are library packages I suspect are no
237 longer needed. Both of them want to remove bluetooth packages, which
238 I do not know. Perhaps these bluetooth packages are obsolete?</p>
240 <p>For KDE, apt-get want to remove 82 packages, among them kdebase
241 which seem like a bad idea and xorg the same way as with Gnome. Asking
242 aptitude for the same, it wants to remove 192 packages, none which are
245 <p>I guess the removal of xorg during upgrades should be investigated
246 and avoided, and perhaps others as well. Here are the complete list
247 of planned removals. The complete logs is available from the URL
248 above. Note if you want to repeat these tests, that the upgrade test
249 for kde+apt-get hung in the tasksel setup because of dpkg asking
250 conffile questions. No idea why. I worked around it by using
251 '<tt>echo >> /proc/<em>pidofdpkg</em>/fd/0</tt>' to tell dpkg to
254 <p><b>apt-get gnome 72</b>
255 <br>bluez-gnome cupsddk-drivers deskbar-applet gnome
256 gnome-desktop-environment gnome-network-admin gtkhtml3.14
257 iceweasel-gnome-support libavcodec51 libdatrie0 libgdl-1-0
258 libgnomekbd2 libgnomekbdui2 libmetacity0 libslab0 libxcb-xlib0
259 nautilus-cd-burner python-gnome2-desktop python-gnome2-extras
260 serpentine swfdec-mozilla update-manager xorg xserver-xorg
261 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
262 xserver-xorg-input-kbd xserver-xorg-input-mouse
263 xserver-xorg-input-synaptics xserver-xorg-input-wacom
264 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
265 xserver-xorg-video-ati xserver-xorg-video-chips
266 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
267 xserver-xorg-video-dummy xserver-xorg-video-fbdev
268 xserver-xorg-video-glint xserver-xorg-video-i128
269 xserver-xorg-video-i740 xserver-xorg-video-imstt
270 xserver-xorg-video-intel xserver-xorg-video-mach64
271 xserver-xorg-video-mga xserver-xorg-video-neomagic
272 xserver-xorg-video-nsc xserver-xorg-video-nv
273 xserver-xorg-video-openchrome xserver-xorg-video-r128
274 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
275 xserver-xorg-video-rendition xserver-xorg-video-s3
276 xserver-xorg-video-s3virge xserver-xorg-video-savage
277 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
278 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
279 xserver-xorg-video-tga xserver-xorg-video-trident
280 xserver-xorg-video-tseng xserver-xorg-video-v4l
281 xserver-xorg-video-vesa xserver-xorg-video-vga
282 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9
283 xulrunner-1.9-gnome-support</p>
285 <p><b>aptitude gnome 129</b>
287 <br>bluez-gnome bluez-utils cpp-4.3 cupsddk-drivers dhcdbd
288 djvulibre-desktop finger gnome-app-install gnome-mount
289 gnome-network-admin gnome-spell gnome-vfs-obexftp
290 gnome-volume-manager gstreamer0.10-gnomevfs gtkhtml3.14 libao2
291 libavahi-compat-libdnssd1 libavahi-core5 libavcodec51 libbluetooth2
292 libcamel1.2-11 libcdio7 libcucul0 libcupsys2 libcurl3 libdatrie0
293 libdirectfb-1.0-0 libdvdread3 libedataserver1.2-9 libeel2-2.20
294 libeel2-data libepc-1.0-1 libepc-ui-1.0-1 libfaad0 libgail-common
295 libgd2-noxpm libgda3-3 libgda3-common libgdl-1-0 libgdl-1-common
296 libggz2 libggzcore9 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0
297 libgnomecups1.0-1 libgnomekbd2 libgnomekbdui2 libgnomeprint2.2-0
298 libgnomeprint2.2-data libgnomeprintui2.2-0 libgnomeprintui2.2-common
299 libgnomevfs2-bin libgpod3 libgraphviz4 libgtkhtml2-0
300 libgtksourceview-common libgtksourceview1.0-0 libgucharmap6
301 libhesiod0 libicu38 libiw29 libkpathsea4 libltdl3 libmagick++10
302 libmagick10 libmalaga7 libmetacity0 libmtp7 libmysqlclient15off
303 libnautilus-burn4 libneon27 libnm-glib0 libnm-util0 libopal-2.2
304 libosp5 libparted1.8-10 libpoppler-glib3 libpoppler3 libpt-1.10.10
305 libpt-1.10.10-plugins-alsa libpt-1.10.10-plugins-v4l libraw1394-8
306 libsensors3 libslab0 libsmbios2 libsoup2.2-8 libssh2-1
307 libsuitesparse-3.1.0 libswfdec-0.6-90 libtalloc1 libtotem-plparser10
308 libtrackerclient0 libxalan2-java libxalan2-java-gcj libxcb-xlib0
309 libxerces2-java libxerces2-java-gcj libxklavier12 libxtrap6
310 libxxf86misc1 libzephyr3 mysql-common nautilus-cd-burner
311 openoffice.org-writer2latex openssl-blacklist p7zip
312 python-4suite-xml python-eggtrayicon python-gnome2-desktop
313 python-gnome2-extras python-gtkhtml2 python-gtkmozembed
314 python-numeric python-sexy serpentine svgalibg1 swfdec-gnome
315 swfdec-mozilla totem-gstreamer update-manager wodim
316 xserver-xorg-video-cyrix xserver-xorg-video-imstt
317 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
320 <p><b>apt-get kde 82</b>
322 <br>cupsddk-drivers karm kaudiocreator kcoloredit kcontrol kde kde-core
323 kdeaddons kdeartwork kdebase kdebase-bin kdebase-bin-kde3
324 kdebase-kio-plugins kdesktop kdeutils khelpcenter kicker
325 kicker-applets knewsticker kolourpaint konq-plugins konqueror korn
326 kpersonalizer kscreensaver ksplash libavcodec51 libdatrie0 libkiten1
327 libxcb-xlib0 quanta superkaramba texlive-base-bin xorg xserver-xorg
328 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
329 xserver-xorg-input-kbd xserver-xorg-input-mouse
330 xserver-xorg-input-synaptics xserver-xorg-input-wacom
331 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
332 xserver-xorg-video-ati xserver-xorg-video-chips
333 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
334 xserver-xorg-video-dummy xserver-xorg-video-fbdev
335 xserver-xorg-video-glint xserver-xorg-video-i128
336 xserver-xorg-video-i740 xserver-xorg-video-imstt
337 xserver-xorg-video-intel xserver-xorg-video-mach64
338 xserver-xorg-video-mga xserver-xorg-video-neomagic
339 xserver-xorg-video-nsc xserver-xorg-video-nv
340 xserver-xorg-video-openchrome xserver-xorg-video-r128
341 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
342 xserver-xorg-video-rendition xserver-xorg-video-s3
343 xserver-xorg-video-s3virge xserver-xorg-video-savage
344 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
345 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
346 xserver-xorg-video-tga xserver-xorg-video-trident
347 xserver-xorg-video-tseng xserver-xorg-video-v4l
348 xserver-xorg-video-vesa xserver-xorg-video-vga
349 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9</p>
351 <p><b>aptitude kde 192</b>
352 <br>bluez-utils cpp-4.3 cupsddk-drivers cvs dcoprss dhcdbd
353 djvulibre-desktop dosfstools eyesapplet fifteenapplet finger gettext
354 ghostscript-x imlib-base imlib11 indi kandy karm kasteroids
355 kaudiocreator kbackgammon kbstate kcoloredit kcontrol kcron kdat
356 kdeadmin-kfile-plugins kdeartwork-misc kdeartwork-theme-window
357 kdebase-bin-kde3 kdebase-kio-plugins kdeedu-data
358 kdegraphics-kfile-plugins kdelirc kdemultimedia-kappfinder-data
359 kdemultimedia-kfile-plugins kdenetwork-kfile-plugins
360 kdepim-kfile-plugins kdepim-kio-plugins kdeprint kdesktop kdessh
361 kdict kdnssd kdvi kedit keduca kenolaba kfax kfaxview kfouleggs
362 kghostview khelpcenter khexedit kiconedit kitchensync klatin
363 klickety kmailcvt kmenuedit kmid kmilo kmoon kmrml kodo kolourpaint
364 kooka korn kpager kpdf kpercentage kpf kpilot kpoker kpovmodeler
365 krec kregexpeditor ksayit ksim ksirc ksirtet ksmiletris ksmserver
366 ksnake ksokoban ksplash ksvg ksysv ktip ktnef kuickshow kverbos
367 kview kviewshell kvoctrain kwifimanager kwin kwin4 kworldclock
368 kxsldbg libakode2 libao2 libarts1-akode libarts1-audiofile
369 libarts1-mpeglib libarts1-xine libavahi-compat-libdnssd1
370 libavahi-core5 libavc1394-0 libavcodec51 libbluetooth2
371 libboost-python1.34.1 libcucul0 libcurl3 libcvsservice0 libdatrie0
372 libdirectfb-1.0-0 libdjvulibre21 libdvdread3 libfaad0 libfreebob0
373 libgail-common libgd2-noxpm libgraphviz4 libgsmme1c2a libgtkhtml2-0
374 libicu38 libiec61883-0 libindex0 libiw29 libk3b3 libkcal2b libkcddb1
375 libkdeedu3 libkdepim1a libkgantt0 libkiten1 libkleopatra1 libkmime2
376 libkpathsea4 libkpimexchange1 libkpimidentities1 libkscan1
377 libksieve0 libktnef1 liblockdev1 libltdl3 libmagick10 libmimelib1c2a
378 libmozjs1d libmpcdec3 libneon27 libnm-util0 libopensync0 libpisock9
379 libpoppler-glib3 libpoppler-qt2 libpoppler3 libraw1394-8 libsmbios2
380 libssh2-1 libsuitesparse-3.1.0 libtalloc1 libtiff-tools
381 libxalan2-java libxalan2-java-gcj libxcb-xlib0 libxerces2-java
382 libxerces2-java-gcj libxtrap6 mpeglib networkstatus
383 openoffice.org-writer2latex pmount poster psutils quanta quanta-data
384 superkaramba svgalibg1 tex-common texlive-base texlive-base-bin
385 texlive-common texlive-doc-base texlive-fonts-recommended
386 xserver-xorg-video-cyrix xserver-xorg-video-imstt
387 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
395 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu
">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>.
399 <div class="padding
"></div>
402 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/__pne_tr__dl__snett_er_et_samfunnsgode.html
">Åpne trådløsnett er et samfunnsgode</a></div>
403 <div class="date
">2010-06-12 12:45</div>
405 <p>Veldig glad for å oppdage via
406 <a href="http://yro.slashdot.org/story/
10/
06/
11/
1841256/Finland-To-Legalize-Use-of-Unsecured-Wi-Fi
">Slashdot</a>
407 at folk i Finland har forstått at åpne trådløsnett er et samfunnsgode.
408 Jeg ser på åpne trådløsnett som et fellesgode på linje med retten til
409 ferdsel i utmark og retten til å bevege seg i strandsonen. Jeg har
410 glede av åpne trådløsnett når jeg finner dem, og deler gladelig nett
411 med andre så lenge de ikke forstyrrer min bruk av eget nett.
412 Nettkapasiteten er sjelden en begrensning ved normal browsing og enkel
413 SSH-innlogging (som er min vanligste nettbruk), og nett kan brukes til
414 så mye positivt og nyttig (som nyhetslesing, sjekke været, kontakte
415 slekt og venner, holde seg oppdatert om politiske saker, kontakte
416 organisasjoner og politikere, etc), at det for meg er helt urimelig å
417 blokkere dette for alle som ikke gjør en flue fortred. De som mener
418 at potensialet for misbruk er grunn nok til å hindre all den positive
419 og lovlydige bruken av et åpent trådløsnett har jeg dermed ingen
420 forståelse for. En kan ikke eksistensen av forbrytere styre hvordan
421 samfunnet skal organiseres. Da får en et kontrollsamfunn de færreste
422 ønsker å leve i, og det at vi har et samfunn i Norge der tilliten til
423 hverandre er høy gjør at samfunnet fungerer ganske godt. Det bør vi
424 anstrenge oss for å beholde.</p>
430 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/fildeling
">fildeling</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett
">opphavsrett</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet</a>.
434 <div class="padding
"></div>
437 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html
">Automatic upgrade testing from Lenny to Squeeze</a></div>
438 <div class="date
">2010-06-11 22:50</div>
440 <p>The last few days I have done some upgrade testing in Debian, to
441 see if the upgrade from Lenny to Squeeze will go smoothly. A few bugs
442 have been discovered and reported in the process
443 (<a href="http://bugs.debian.org/
585410">#585410</a> in nagios3-cgi,
444 <a href="http://bugs.debian.org/
584879">#584879</a> already fixed in
445 enscript and <a href="http://bugs.debian.org/
584861">#584861</a> in
446 kdebase-workspace-data), and to get a more regular testing going on, I
447 am working on a script to automate the test.</p>
449 <p>The idea is to create a Lenny chroot and use tasksel to install a
450 Gnome or KDE desktop installation inside the chroot before upgrading
451 it. To ensure no services are started in the chroot, a policy-rc.d
452 script is inserted. To make sure tasksel believe it is to install a
453 desktop on a laptop, the tasksel tests are replaced in the chroot
454 (only acceptable because this is a throw-away chroot).</p>
456 <p>A naive upgrade from Lenny to Squeeze using aptitude dist-upgrade
457 currently always fail because udev refuses to upgrade with the kernel
458 in Lenny, so to avoid that problem the file /etc/udev/kernel-upgrade
459 is created. The bug report
460 <a href="http://bugs.debian.org/
566000">#566000</a> make me suspect
461 this problem do not trigger in a chroot, but I touch the file anyway
462 to make sure the upgrade go well. Testing on virtual and real
463 hardware have failed me because of udev so far, and creating this file
464 do the trick in such settings anyway. This is a
465 <a href="http://www.linuxquestions.org/questions/debian-
26/failed-dist-upgrade-due-to-udev-config_sysfs_deprecated-nonsense-
804130/
">known
466 issue</a> and the current udev behaviour is intended by the udev
467 maintainer because he lack the resources to rewrite udev to keep
468 working with old kernels or something like that. I really wish the
469 udev upstream would keep udev backwards compatible, to avoid such
470 upgrade problem, but given that they fail to do so, I guess
471 documenting the way out of this mess is the best option we got for
474 <p>Anyway, back to the task at hand, testing upgrades. This test
475 script, which I call <tt>upgrade-test</tt> for now, is doing the
493 mirror=http://ftp.skolelinux.org/debian
494 tmpdir=chroot-$from-upgrade-$to-$desktop
496 debootstrap $from $tmpdir $mirror
497 chroot $tmpdir aptitude update
498 cat
> $tmpdir/usr/sbin/policy-rc.d
<<EOF
502 chmod a+rx $tmpdir/usr/sbin/policy-rc.d
506 mount -t proc proc $tmpdir/proc
507 # Make sure proc is unmounted also on failure
508 trap exit_cleanup EXIT INT
510 chroot $tmpdir aptitude -y install debconf-utils
512 # Make sure tasksel autoselection trigger. It need the test scripts
513 # to return the correct answers.
514 echo tasksel tasksel/desktop multiselect $desktop | \
515 chroot $tmpdir debconf-set-selections
517 # Include the desktop and laptop task
518 for test in desktop laptop ; do
519 echo
> $tmpdir/usr/lib/tasksel/tests/$test
<<EOF
523 chmod a+rx $tmpdir/usr/lib/tasksel/tests/$test
526 DEBIAN_FRONTEND=noninteractive
527 DEBIAN_PRIORITY=critical
528 export DEBIAN_FRONTEND DEBIAN_PRIORITY
529 chroot $tmpdir tasksel --new-install
531 echo deb $mirror $to main
> $tmpdir/etc/apt/sources.list
532 chroot $tmpdir aptitude update
533 touch $tmpdir/etc/udev/kernel-upgrade
534 chroot $tmpdir aptitude -y dist-upgrade
538 <p>I suspect it would be useful to test upgrades with both apt-get and
539 with aptitude, but I have not had time to look at how they behave
540 differently so far. I hope to get a cron job running to do the test
541 regularly and post the result on the web. The Gnome upgrade currently
542 work, while the KDE upgrade fail because of the bug in
543 kdebase-workspace-data
</p>
545 <p>I am not quite sure what kind of extract from the huge upgrade logs
546 (KDE
167 KiB, Gnome
516 KiB) it make sense to include in this blog
547 post, so I will refrain from trying. I can report that for Gnome,
548 aptitude report
760 packages upgraded,
448 newly installed,
129 to
549 remove and
1 not upgraded and
1024MB need to be downloaded while for
550 KDE the same numbers are
702 packages upgraded,
507 newly installed,
551 193 to remove and
0 not upgraded and
1117MB need to be downloaded
</p>
553 <p>I am very happy to notice that the Gnome desktop + laptop upgrade
554 is able to migrate to dependency based boot sequencing and parallel
555 booting without a hitch. Was unsure if there were still bugs with
556 packages failing to clean up their obsolete init.d script during
557 upgrades, and no such problem seem to affect the Gnome desktop+laptop
564 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
568 <div class=
"padding"></div>
571 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Skolelinux_er_laget_for_sentraldrifting__naturligvis.html">Skolelinux er laget for sentraldrifting, naturligvis
</a></div>
572 <div class=
"date">2010-
06-
09 12:
30</div>
574 <p>Det er merkelig hvordan myter om Skolelinux overlever. En slik
575 myte er at Skolelinux ikke kan sentraldriftes og ha sentralt plasserte
576 tjenermaskiner. I siste Computerworld Norge er
577 <a href=
"http://www.idg.no/computerworld/article169432.ece">IT-sjef
578 Viggo Billdal i Steinkjer intervjuet
</a>, og forteller uten
581 <blockquote><p>Vi hadde Skolelinux, men det har vi sluttet med. Vi testet
582 om det lønte seg med Microsoft eller en åpen plattform. Vi fant ut at
583 Microsoft egentlig var totalt sett bedre egnet. Det var store
584 driftskostnader med Skolelinux, blant annet på grunn av
585 desentraliserte servere. Det var komplisert, så vi gikk vekk fra det
586 og bruker nå bare Windows.
</p></blockquote>
589 href=
"https://init.linpro.no/pipermail/skolelinux.no/bruker/2010-June/009101.html">rask
590 sjekk
</a> mot den norske brukerlista i Skolelinuxprosjektet forteller
591 at Steinkjers forsøk foregikk fram til
2004/
2005, og at Røysing skole
592 i Steinkjer skal ha vært svært fornøyd med Skolelinux men at kommunen
593 overkjørte skolen og krevde at de gikk over til Windows. Et søk på
594 nettet sendte meg til
595 <a href=
"http://www.dn.no/multimedia/archive/00090/Dagens_it_nr__18_90826a.pdf">Dagens
596 IT nr.
18 2005</a> hvor en kan lese på side
18:
</p>
598 <blockquote><p>Inge Tømmerås ved Røysing skole i Steinkjer kjører ennå
599 Microsoft, men forteller at kompetanseutfordringen med Skolelinux ikke
600 var så stor. Jeg syntes Skolelinux var utrolig lett å drifte uten
601 forkunnskaper. Men man må jo selvsagt ha tilgang på ekstern kompetanse
602 til installasjoner og maskinvarefeil, sier Tømmerås.
</p></blockquote>
604 <p>Som systemarkitekten bak Skolelinux, kan jeg bare riste på hodet
605 over påstanden om at Skolelinux krever desentraliserte tjenere.
606 Skolelinux-arkitekturen er laget for sentralisert drift og plassering
607 av tjenerne lokalt eller sentralt alt etter behov og nettkapasitet.
608 Den er modellert på nettverks- og tjenerløsningen som brukes på
609 Universitetet i Tromsø og Oslo, der jeg jobber med utvikling av
610 driftstjenester. Dette er det heldigvis noen som har fått med seg, og
611 jeg er glad for å kunne sitere fra en kommentar på den overnevnte
612 artikkelen. Min venn og gamle kollega Sturle Sunde forteller der:
615 <p>I Flora kommune køyrer vi Skulelinux på skular med alt frå
15 til
616 meir enn
500 elevar. Dei store skulane har eigen tenar, for det er
617 mest praktisk. Eg, som er driftsansvarleg for heile nettet, ser
618 sjeldan dei tenarane fysisk, men at dei står der gjer skulane mindre
619 avhengige av eksterne linjer som er trege eller dyre. Dei minste
620 skulane har ikkje eigen tenar. Å bruke sentral tenar er heller ikkje
621 noko problem. Småskulane klarar seg fint med
1 mbit-linje til ein
622 sentral tenar eller tenaren på ein større skule.
</p>
624 <p>Det beste med Skulelinux er halvtjukke klientar. Dei treng ikkje
625 harddisk og brukar minimalt med ressursar på tenaren fordi dei køyrer
626 programma lokalt. Eit klasserom med
30 sju-åtte år gamle maskiner har
627 mykje meir CPU og RAM totalt enn nokon moderne tenar til under
628 millionen. Det trengst to kommandoar på den sentrale tenaren for å
629 oppdatere alle klientane, både tynne og halvtjukke. Vi har ingen
630 problem med diskar som ryk heller, som var eit problem før fordi
631 elevane sat og sparka i maskinene. Og dei krev lite bandbreidde i
632 nettet, so det er fullt mogleg å køyre slike på småskular med trege
633 linjer mot tenaren på ein større skule.
</p>
635 <p>Flora kommune har nesten
800 Linux-maskiner i sitt skulenett, og
636 ein person som tek seg av drift av heile nettet, inkludert tenarar,
637 klientar, operativsystem, programvare, heimekontorløysing og
638 administrasjon av brukarar.
</p>
640 <p>No skal det seiast at vi ikkje køyrer rein Skulelinux ut av
641 boksen. Vi har gjort ein del tilpassingar mot noko Novell-greier som
642 var der frå før, og som har komplisert installasjonen vår. Etter at
643 oppsettet var gjort har løysinga vore stabil og kravd minimalt med
647 <p>Jeg vet at Narvik, Harstad og Oslo er kommuner der Skolelinux
648 sentraldriftes med sentrale tjenere. Det forteller meg at Steinkjers
649 IT-sjef neppe bør skylde på Skolelinux-løsningen for sine
5 år gamle
656 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>.
660 <div class=
"padding"></div>
663 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Upstart_or_sysvinit___as_init_d_scripts_see_it.html">Upstart or sysvinit - as init.d scripts see it
</a></div>
664 <div class=
"date">2010-
06-
06 23:
55</div>
666 <p>If Debian is to migrate to upstart on Linux, I expect some init.d
667 scripts to migrate (some of) their operations to upstart job while
668 keeping the init.d for hurd and kfreebsd. The packages with such
669 needs will need a way to get their init.d scripts to behave
670 differently when used with sysvinit and with upstart. Because of
671 this, I had a look at the environment variables set when a init.d
672 script is running under upstart, and when it is not.
</p>
674 <p>With upstart, I notice these environment variables are set when a
675 script is started from rcS.d/ (ignoring some irrelevant ones like
684 UPSTART_EVENTS=startup
686 UPSTART_JOB=rc-sysinit
689 <p>With sysvinit, these environment variables are set for the same
693 INIT_VERSION=sysvinit-
2.88
700 <p>The RUNLEVEL and PREVLEVEL environment variables passed on from
701 sysvinit are not set by upstart. Not sure if it is intentional or not
702 to not be compatible with sysvinit in this regard.
</p>
704 <p>For scripts needing to behave differently when upstart is used,
705 looking for the UPSTART_JOB environment variable seem to be a good
712 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
716 <div class=
"padding"></div>
719 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/A_manual_for_standards_wars___.html">A manual for standards wars...
</a></div>
720 <div class=
"date">2010-
06-
06 14:
15</div>
723 <a href=
"http://feedproxy.google.com/~r/robweir/antic-atom/~3/QzU4RgoAGMg/weekly-links-10.html">blog
724 of Rob Weir
</a> I came across the very interesting essay named
725 <a href=
"http://faculty.haas.berkeley.edu/shapiro/wars.pdf">The Art of
726 Standards Wars
</a> (PDF
25 pages). I recommend it for everyone
727 following the standards wars of today.
</p>
733 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard
</a>.
737 <div class=
"padding"></div>
739 <p style=
"text-align: right;"><a href=
"index.rss"><img src=
"http://people.skolelinux.org/pere/blog/xml.gif" alt=
"RSS feed" width=
"36" height=
"14"></a></p>
753 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
755 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
757 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
759 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
761 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
763 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
13)
</a></li>
770 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
772 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
774 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
776 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
778 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
780 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
782 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
784 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
786 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
788 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
790 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
792 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
799 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
801 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
812 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
11)
</a></li>
814 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
816 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
818 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
10)
</a></li>
820 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
28)
</a></li>
822 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
27)
</a></li>
824 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
40)
</a></li>
826 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
1)
</a></li>
828 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
7)
</a></li>
830 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
2)
</a></li>
832 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
2)
</a></li>
834 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
1)
</a></li>
836 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
838 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
5)
</a></li>
840 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
69)
</a></li>
842 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
78)
</a></li>
844 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
13)
</a></li>
846 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
13)
</a></li>
848 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
10)
</a></li>
850 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
852 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
9)
</a></li>
854 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
3)
</a></li>
856 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
13)
</a></li>
858 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
1)
</a></li>
860 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
10)
</a></li>
862 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
1)
</a></li>
864 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
6)
</a></li>
870 <p style=
"text-align: right">
871 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v3.7
</a>