]> pere.pagekite.me Git - homepage.git/blob - blog/index.rss
Fix typo in tag.
[homepage.git] / blog / index.rss
1 <?xml version="1.0" encoding="utf-8"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:atom="http://www.w3.org/2005/Atom">
3 <channel>
4 <title>Petter Reinholdtsen</title>
5 <description></description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7 <atom:link href="http://people.skolelinux.org/pere/blog/index.rss" rel="self" type="application/rss+xml" />
8
9 <item>
10 <title>Parallellized boot is now the default in Debian/unstable</title>
11 <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</guid>
13 <pubDate>Fri, 14 May 2010 22:40:00 +0200</pubDate>
14 <description>
15 &lt;p&gt;Since this evening, parallel booting is the default in
16 Debian/unstable for machines using dependency based boot sequencing.
17 Apparently the testing of concurrent booting has been wider than
18 expected, if I am to believe the
19 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
20 on debian-devel@&lt;/a&gt;, and I concluded a few days ago to move forward
21 with the feature this weekend, to give us some time to detect any
22 remaining problems before Squeeze is frozen. If serious problems are
23 detected, it is simple to change the default back to sequential boot.
24 The upload of the new sysvinit package also activate a new upstream
25 version.&lt;/p&gt;
26
27 More information about
28 &lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
29 based boot sequencing&lt;/a&gt; is available from the Debian wiki. It is
30 currently possible to disable parallel booting when one run into
31 problems caused by it, by adding this line to /etc/default/rcS:&lt;/p&gt;
32
33 &lt;blockquote&gt;&lt;pre&gt;
34 CONCURRENCY=none
35 &lt;/pre&gt;&lt;/blockquote&gt;
36
37 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
38 the BTS, please usertag the report to get it to show up at
39 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
40 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
41 </description>
42 </item>
43
44 <item>
45 <title>Sitesummary tip: Listing MAC address of all clients</title>
46 <link>http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</link>
47 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</guid>
48 <pubDate>Fri, 14 May 2010 21:10:00 +0200</pubDate>
49 <description>
50 &lt;p&gt;In the recent Debian Edu versions, the
51 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/SiteSummary&quot;&gt;sitesummary
52 system&lt;/a&gt; is used to keep track of the machines in the school
53 network. Each machine will automatically report its status to the
54 central server after boot and once per night. The network setup is
55 also reported, and using this information it is possible to get the
56 MAC address of all network interfaces in the machines. This is useful
57 to update the DHCP configuration.&lt;/p&gt;
58
59 &lt;p&gt;To give some idea how to use sitesummary, here is a one-liner to
60 ist all MAC addresses of all machines reporting to sitesummary. Run
61 this on the collector host:&lt;/p&gt;
62
63 &lt;blockquote&gt;&lt;pre&gt;
64 perl -MSiteSummary -e &#39;for_all_hosts(sub { print join(&quot; &quot;, get_macaddresses(shift)), &quot;\n&quot;; });&#39;
65 &lt;/pre&gt;&lt;/blockquote&gt;
66
67 &lt;p&gt;This will list all MAC addresses assosiated with all machine, one
68 line per machine and with space between the MAC addresses.&lt;/p&gt;
69
70 &lt;p&gt;To allow system administrators easier job at adding static DHCP
71 addresses for hosts, it would be possible to extend this to fetch
72 machine information from sitesummary and update the DHCP and DNS
73 tables in LDAP using this information. Such tool is unfortunately not
74 written yet.&lt;/p&gt;
75 </description>
76 </item>
77
78 <item>
79 <title>systemd, an interesting alternative to upstart</title>
80 <link>http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</link>
81 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</guid>
82 <pubDate>Thu, 13 May 2010 22:20:00 +0200</pubDate>
83 <description>
84 &lt;p&gt;The last few days a new boot system called
85 &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/systemd&quot;&gt;systemd&lt;/a&gt;
86 has been
87 &lt;a href=&quot;http://0pointer.de/blog/projects/systemd.html&quot;&gt;introduced&lt;/a&gt;
88
89 to the free software world. I have not yet had time to play around
90 with it, but it seem to be a very interesting alternative to
91 &lt;a href=&quot;http://upstart.ubuntu.com/&quot;&gt;upstart&lt;/a&gt;, and might prove to be
92 a good alternative for Debian when we are able to switch to an event
93 based boot system. Tollef is
94 &lt;a href=&quot;http://bugs.debian.org/580814&quot;&gt;in the process&lt;/a&gt; of getting
95 systemd into Debian, and I look forward to seeing how well it work. I
96 like the fact that systemd handles init.d scripts with dependency
97 information natively, allowing them to run in parallel where upstart
98 at the moment do not.&lt;/p&gt;
99
100 &lt;p&gt;Unfortunately do systemd have the same problem as upstart regarding
101 platform support. It only work on recent Linux kernels, and also need
102 some new kernel features enabled to function properly. This means
103 kFreeBSD and Hurd ports of Debian will need a port or a different boot
104 system. Not sure how that will be handled if systemd proves to be the
105 way forward.&lt;/p&gt;
106
107 &lt;p&gt;In the mean time, based on the
108 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
109 on debian-devel@&lt;/a&gt; regarding parallel booting in Debian, I have
110 decided to enable full parallel booting as the default in Debian as
111 soon as possible (probably this weekend or early next week), to see if
112 there are any remaining serious bugs in the init.d dependencies. A
113 new version of the sysvinit package implementing this change is
114 already in experimental. If all go well, Squeeze will be released
115 with parallel booting enabled by default.&lt;/p&gt;
116 </description>
117 </item>
118
119 <item>
120 <title>Parallellizing the boot in Debian Squeeze - ready for wider testing</title>
121 <link>http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</link>
122 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</guid>
123 <pubDate>Thu, 6 May 2010 23:25:00 +0200</pubDate>
124 <description>
125 &lt;p&gt;These days, the init.d script dependencies in Squeeze are quite
126 complete, so complete that it is actually possible to run all the
127 init.d scripts in parallell based on these dependencies. If you want
128 to test your Squeeze system, make sure
129 &lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
130 based boot sequencing&lt;/a&gt; is enabled, and add this line to
131 /etc/default/rcS:&lt;/p&gt;
132
133 &lt;blockquote&gt;&lt;pre&gt;
134 CONCURRENCY=makefile
135 &lt;/pre&gt;&lt;/blockquote&gt;
136
137 &lt;p&gt;That is it. It will cause sysv-rc to use the startpar tool to run
138 scripts in parallel using the dependency information stored in
139 /etc/init.d/.depend.boot, /etc/init.d/.depend.start and
140 /etc/init.d/.depend.stop to order the scripts. Startpar is configured
141 to try to start the kdm and gdm scripts as early as possible, and will
142 start the facilities required by kdm or gdm as early as possible to
143 make this happen.&lt;/p&gt;
144
145 &lt;p&gt;Give it a try, and see if you like the result. If some services
146 fail to start properly, it is most likely because they have incomplete
147 init.d script dependencies in their startup script (or some of their
148 dependent scripts have incomplete dependencies). Report bugs and get
149 the package maintainers to fix it. :)&lt;/p&gt;
150
151 &lt;p&gt;Running scripts in parallel could be the default in Debian when we
152 manage to get the init.d script dependencies complete and correct. I
153 expect we will get there in Squeeze+1, if we get manage to test and
154 fix the remaining issues.&lt;/p&gt;
155
156 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
157 the BTS, please usertag the report to get it to show up at
158 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
159 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
160 </description>
161 </item>
162
163 <item>
164 <title>Forcing new users to change their password on first login</title>
165 <link>http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</link>
166 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</guid>
167 <pubDate>Sun, 2 May 2010 13:47:00 +0200</pubDate>
168 <description>
169 &lt;p&gt;One interesting feature in Active Directory, is the ability to
170 create a new user with an expired password, and thus force the user to
171 change the password on the first login attempt.&lt;/p&gt;
172
173 &lt;p&gt;I&#39;m not quite sure how to do that with the LDAP setup in Debian
174 Edu, but did some initial testing with a local account. The account
175 and password aging information is available in /etc/shadow, but
176 unfortunately, it is not possible to specify an expiration time for
177 passwords, only a maximum age for passwords.&lt;/p&gt;
178
179 &lt;p&gt;A freshly created account (using adduser test) will have these
180 settings in /etc/shadow:&lt;/p&gt;
181
182 &lt;blockquote&gt;&lt;pre&gt;
183 root@tjener:~# chage -l test
184 Last password change : May 02, 2010
185 Password expires : never
186 Password inactive : never
187 Account expires : never
188 Minimum number of days between password change : 0
189 Maximum number of days between password change : 99999
190 Number of days of warning before password expires : 7
191 root@tjener:~#
192 &lt;/pre&gt;&lt;/blockquote&gt;
193
194 &lt;p&gt;The only way I could come up with to create a user with an expired
195 account, is to change the date of the last password change to the
196 lowest value possible (January 1th 1970), and the maximum password age
197 to the difference in days between that date and today. To make it
198 simple, I went for 30 years (30 * 365 = 10950) and January 2th (to
199 avoid testing if 0 is a valid value).&lt;/p&gt;
200
201 &lt;p&gt;After using these commands to set it up, it seem to work as
202 intended:&lt;/p&gt;
203
204 &lt;blockquote&gt;&lt;pre&gt;
205 root@tjener:~# chage -d 1 test; chage -M 10950 test
206 root@tjener:~# chage -l test
207 Last password change : Jan 02, 1970
208 Password expires : never
209 Password inactive : never
210 Account expires : never
211 Minimum number of days between password change : 0
212 Maximum number of days between password change : 10950
213 Number of days of warning before password expires : 7
214 root@tjener:~#
215 &lt;/pre&gt;&lt;/blockquote&gt;
216
217 &lt;p&gt;So far I have tested this with ssh and console, and kdm (in
218 Squeeze) login, and all ask for a new password before login in the
219 user (with ssh, I was thrown out and had to log in again).&lt;/p&gt;
220
221 &lt;p&gt;Perhaps we should set up something similar for Debian Edu, to make
222 sure only the user itself have the account password?&lt;/p&gt;
223
224 &lt;p&gt;If you want to comment on or help out with implementing this for
225 Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
226
227 &lt;p&gt;Update 2010-05-02 17:20: Paul Tötterman tells me on IRC that the
228 shadow(8) page in Debian/testing now state that setting the date of
229 last password change to zero (0) will force the password to be changed
230 on the first login. This was not mentioned in the manual in Lenny, so
231 I did not notice this in my initial testing. I have tested it on
232 Squeeze, and &#39;&lt;tt&gt;chage -d 0 username&lt;/tt&gt;&#39; do work there. I have not
233 tested it on Lenny yet.&lt;/p&gt;
234
235 &lt;p&gt;Update 2010-05-02-19:05: Jim Paris tells me via email that an
236 equivalent command to expire a password is &#39;&lt;tt&gt;passwd -e
237 username&lt;/tt&gt;&#39;, which insert zero into the date of the last password
238 change.&lt;/p&gt;
239 </description>
240 </item>
241
242 <item>
243 <title>Thoughts on roaming laptop setup for Debian Edu</title>
244 <link>http://people.skolelinux.org/pere/blog/Thoughts_on_roaming_laptop_setup_for_Debian_Edu.html</link>
245 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Thoughts_on_roaming_laptop_setup_for_Debian_Edu.html</guid>
246 <pubDate>Wed, 28 Apr 2010 20:40:00 +0200</pubDate>
247 <description>
248 &lt;p&gt;For some years now, I have wondered how we should handle laptops in
249 Debian Edu. The Debian Edu infrastructure is mostly designed to
250 handle stationary computers, and less suited for computers that come
251 and go.&lt;/p&gt;
252
253 &lt;p&gt;Now I finally believe I have an sensible idea on how to adjust
254 Debian Edu for laptops, by introducing a new profile for them, for
255 example called Roaming Workstations. Here are my thought on this.
256 The setup would consist of the following:&lt;/p&gt;
257
258 &lt;ul&gt;
259
260 &lt;li&gt;During installation, the user name of the owner / primary user of
261 the laptop is requested and a local home directory is set up for
262 the user, with uid and gid information fetched from the LDAP
263 server. This allow the user to work also when offline. The
264 central home directory can be available in a subdirectory on
265 request, for example mounted via CIFS. It could be mounted
266 automatically when a user log in while on the Debian Edu network,
267 and unmounted when the machine is taken away (network down,
268 hibernate, etc), it can be set up to do automatic mounting on
269 request (using autofs), or perhaps some GUI button on the desktop
270 can be used to access it when needed. Perhaps it is enough to use
271 the fish protocol in KDE?&lt;/li&gt;
272
273 &lt;li&gt;Password checking is set up to use LDAP or Kerberos
274 authentication when the machine is on the Debian Edu network, and
275 to cache the password for offline checking when the machine unable
276 to reach the LDAP or Kerberos server. This can be done using
277 &lt;a href=&quot;http://www.padl.com/OSS/pam_ccreds.html&quot;&gt;libpam-ccreds&lt;/a&gt;
278 or the Fedora developed
279 &lt;a href=&quot;https://fedoraproject.org/wiki/Features/SSSD&quot;&gt;System
280 Security Services Daemon&lt;/a&gt; packages.&lt;/li&gt;
281
282 &lt;li&gt;File synchronisation with the central home directory is set up
283 using a shared directory in both the local and the central home
284 directory, using unison.&lt;/li&gt;
285
286 &lt;li&gt;Printing should be set up to print to all printers broadcasting
287 their existence on the local network, and should then work out of
288 the box with CUPS. For sites needing accurate printer quotas, some
289 system with Kerberos authentication or printing via ssh could be
290 implemented.&lt;/li&gt;
291
292 &lt;li&gt;For users that should have local root access to their laptop,
293 sudo should be used to allow this to the local user.&lt;/li&gt;
294
295 &lt;li&gt;It would be nice if user and group information from LDAP is
296 cached on the client, but given that there are entries for the
297 local user and primary group in /etc/, it should not be needed.&lt;/li&gt;
298
299 &lt;/ul&gt;
300
301 &lt;p&gt;I believe all the pieces to implement this are in Debian/testing at
302 the moment. If we work quickly, we should be able to get this ready
303 in time for the Squeeze release to freeze. Some of the pieces need
304 tweaking, like libpam-ccreds should get support for pam-auth-update
305 (&lt;a href=&quot;http://bugs.debian.org/566718&quot;&gt;#566718&lt;/a&gt;) and nslcd (or
306 perhaps debian-edu-config) should get some integration code to stop
307 its daemon when the LDAP server is unavailable to avoid long timeouts
308 when disconnected from the net. If we get Kerberos enabled, we need
309 to make sure we avoid long timeouts there too.&lt;/p&gt;
310
311 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
312 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
313 </description>
314 </item>
315
316 <item>
317 <title>Great book: &quot;Content: Selected Essays on Technology, Creativity, Copyright, and the Future of the Future&quot;</title>
318 <link>http://people.skolelinux.org/pere/blog/Great_book___Content__Selected_Essays_on_Technology__Creativity__Copyright__and_the_Future_of_the_Future_.html</link>
319 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Great_book___Content__Selected_Essays_on_Technology__Creativity__Copyright__and_the_Future_of_the_Future_.html</guid>
320 <pubDate>Mon, 19 Apr 2010 17:10:00 +0200</pubDate>
321 <description>
322 &lt;p&gt;The last few weeks i have had the pleasure of reading a
323 thought-provoking collection of essays by Cory Doctorow, on topics
324 touching copyright, virtual worlds, the future of man when the
325 conscience mind can be duplicated into a computer and many more. The
326 book titled &quot;Content: Selected Essays on Technology, Creativity,
327 Copyright, and the Future of the Future&quot; is available with few
328 restrictions on the web, for example from
329 &lt;a href=&quot;http://craphound.com/content/&quot;&gt;his own site&lt;/a&gt;. I read the
330 epub-version from
331 &lt;a href=&quot;http://www.feedbooks.com/book/2883&quot;&gt;feedbooks&lt;/a&gt; using
332 &lt;a href=&quot;http://www.fbreader.org/&quot;&gt;fbreader&lt;/a&gt; and my N810. I
333 strongly recommend this book.&lt;/p&gt;
334 </description>
335 </item>
336
337 <item>
338 <title>Kerberos for Debian Edu/Squeeze?</title>
339 <link>http://people.skolelinux.org/pere/blog/Kerberos_for_Debian_Edu_Squeeze_.html</link>
340 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Kerberos_for_Debian_Edu_Squeeze_.html</guid>
341 <pubDate>Wed, 14 Apr 2010 17:20:00 +0200</pubDate>
342 <description>
343 &lt;p&gt;&lt;a href=&quot;http://www.nuug.no/aktiviteter/20100413-kerberos/&quot;&gt;Yesterdays
344 NUUG presentation&lt;/a&gt; about Kerberos was inspiring, and reminded me
345 about the need to start using Kerberos in Skolelinux. Setting up a
346 Kerberos server seem to be straight forward, and if we get this in
347 place a long time before the Squeeze version of Debian freezes, we
348 have a chance to migrate Skolelinux away from NFSv3 for the home
349 directories, and over to an architecture where the infrastructure do
350 not have to trust IP addresses and machines, and instead can trust
351 users and cryptographic keys instead.&lt;/p&gt;
352
353 &lt;p&gt;A challenge will be integration and administration. Is there a
354 Kerberos implementation for Debian where one can control the
355 administration access in Kerberos using LDAP groups? With it, the
356 school administration will have to maintain access control using flat
357 files on the main server, which give a huge potential for errors.&lt;/p&gt;
358
359 &lt;p&gt;A related question I would like to know is how well Kerberos and
360 pam-ccreds (offline password check) work together. Anyone know?&lt;/p&gt;
361
362 &lt;p&gt;Next step will be to use Kerberos for access control in Lwat and
363 Nagios. I have no idea how much work that will be to implement. We
364 would also need to document how to integrate with Windows AD, as such
365 shared network will require two Kerberos realms that need to cooperate
366 to work properly.&lt;/p&gt;
367
368 &lt;p&gt;I believe a good start would be to start using Kerberos on the
369 skolelinux.no machines, and this way get ourselves experience with
370 configuration and integration. A natural starting point would be
371 setting up ldap.skolelinux.no as the Kerberos server, and migrate the
372 rest of the machines from PAM via LDAP to PAM via Kerberos one at the
373 time.&lt;/p&gt;
374
375 &lt;p&gt;If you would like to contribute to get this working in Skolelinux,
376 I recommend you to see the video recording from yesterdays NUUG
377 presentation, and start using Kerberos at home. The video show show
378 up in a few days.&lt;/p&gt;
379 </description>
380 </item>
381
382 <item>
383 <title>På vegne av vanvitting mange, Aftenposten!</title>
384 <link>http://people.skolelinux.org/pere/blog/P___vegne_av_vanvitting_mange__Aftenposten_.html</link>
385 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/P___vegne_av_vanvitting_mange__Aftenposten_.html</guid>
386 <pubDate>Sat, 6 Mar 2010 21:15:00 +0100</pubDate>
387 <description>
388 &lt;p&gt;&lt;a href=&quot;http://fotball.aftenposten.no/incoming/article163000.ece&quot;&gt;Aftenposten
389 melder&lt;/a&gt; på forsiden av webavisen sin at de tror Erling Fossen
390 provoserer nordlendinger med sine uttalelser på
391 fotballtinget. Jeg er utflyttet nordlending, og må innrømme at jeg
392 ikke kjennet så mye som et snev av provokasjon fra denne litt morsomme
393 uttalelsen til Hr. Fossen. Lurer på om Aftenposten har noen kilder
394 utenom redaksjonen for sin påstand om at nordledinger er provosert av
395 Hr. Fossen. Må innrømme at jeg tviler på det.&lt;/p&gt;
396
397 &lt;p&gt;Det hele bringer tankene tilbake til Sture Hansen i Hallo i Uken.&lt;/p&gt;
398 </description>
399 </item>
400
401 <item>
402 <title>After 6 years of waiting, the Xreset.d feature is implemented</title>
403 <link>http://people.skolelinux.org/pere/blog/After_6_years_of_waiting__the_Xreset_d_feature_is_implemented.html</link>
404 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/After_6_years_of_waiting__the_Xreset_d_feature_is_implemented.html</guid>
405 <pubDate>Sat, 6 Mar 2010 18:15:00 +0100</pubDate>
406 <description>
407 &lt;p&gt;6 years ago, as part of the Debian Edu development I am involved
408 in, I asked for a hook in the kdm and gdm setup to run scripts as root
409 when the user log out. A bug was submitted against the xfree86-common
410 package in 2004 (&lt;a href=&quot;http://bugs.debian.org/230422&quot;&gt;#230422&lt;/a&gt;),
411 and revisited every time Debian Edu was working on a new release.
412 Today, this finally paid off.&lt;/p&gt;
413
414 &lt;p&gt;The framework for this feature was today commited to the git
415 repositry for the xorg package, and the git repository for xdm has
416 been updated to use this framework. Next on my agenda is to make sure
417 kdm and gdm also add code to use this framework.&lt;/p&gt;
418
419 &lt;p&gt;In Debian Edu, we want to ability to run commands as root when the
420 user log out, to get rid of runaway processes and do general cleanup
421 after a user. With this framework in place, we finally can do that in
422 a generic way that work with all display managers using this
423 framework. My goal is to get all display managers in Debian use it,
424 similar to how they use the Xsession.d framework today.&lt;p&gt;
425 </description>
426 </item>
427
428 </channel>
429 </rss>