]> pere.pagekite.me Git - homepage.git/blobdiff - blog/archive/2010/05/05.rss
Change order of entries in tag and archive view.
[homepage.git] / blog / archive / 2010 / 05 / 05.rss
index ea74feec2b42c9ffcd1364e707bbfa09fe6b0457..79ea17637b1fc9655482cdef9c4beb8cd1cbf31d 100644 (file)
 
        
        <item>
-               <title>Forcing new users to change their password on first login</title>
-               <link>http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</guid>
-                <pubDate>Sun, 2 May 2010 13:47:00 +0200</pubDate>
-               <description>&lt;p&gt;One interesting feature in Active Directory, is the ability to
-create a new user with an expired password, and thus force the user to
-change the password on the first login attempt.&lt;/p&gt;
-
-&lt;p&gt;I&#39;m not quite sure how to do that with the LDAP setup in Debian
-Edu, but did some initial testing with a local account.  The account
-and password aging information is available in /etc/shadow, but
-unfortunately, it is not possible to specify an expiration time for
-passwords, only a maximum age for passwords.&lt;/p&gt;
-
-&lt;p&gt;A freshly created account (using adduser test) will have these
-settings in /etc/shadow:&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-root@tjener:~# chage -l test
-Last password change                                    : May 02, 2010
-Password expires                                        : never
-Password inactive                                       : never
-Account expires                                         : never
-Minimum number of days between password change          : 0
-Maximum number of days between password change          : 99999
-Number of days of warning before password expires       : 7
-root@tjener:~#
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;The only way I could come up with to create a user with an expired
-account, is to change the date of the last password change to the
-lowest value possible (January 1th 1970), and the maximum password age
-to the difference in days between that date and today.  To make it
-simple, I went for 30 years (30 * 365 = 10950) and January 2th (to
-avoid testing if 0 is a valid value).&lt;/p&gt;
-
-&lt;p&gt;After using these commands to set it up, it seem to work as
-intended:&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-root@tjener:~# chage -d 1 test; chage -M 10950 test
-root@tjener:~# chage -l test
-Last password change                                    : Jan 02, 1970
-Password expires                                        : never
-Password inactive                                       : never
-Account expires                                         : never
-Minimum number of days between password change          : 0
-Maximum number of days between password change          : 10950
-Number of days of warning before password expires       : 7
-root@tjener:~#  
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;So far I have tested this with ssh and console, and kdm (in
-Squeeze) login, and all ask for a new password before login in the
-user (with ssh, I was thrown out and had to log in again).&lt;/p&gt;
-
-&lt;p&gt;Perhaps we should set up something similar for Debian Edu, to make
-sure only the user itself have the account password?&lt;/p&gt;
-
-&lt;p&gt;If you want to comment on or help out with implementing this for
-Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
+               <title>Parallellized boot seem to hold up well in Debian/testing</title>
+               <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</guid>
+                <pubDate>Thu, 27 May 2010 23:55:00 +0200</pubDate>
+               <description>&lt;p&gt;A few days ago, parallel booting was enabled in Debian/testing.
+The feature seem to hold up pretty well, but three fairly serious
+issues are known and should be solved:
 
-&lt;p&gt;Update 2010-05-02 17:20: Paul Tötterman tells me on IRC that the
-shadow(8) page in Debian/testing now state that setting the date of
-last password change to zero (0) will force the password to be changed
-on the first login.  This was not mentioned in the manual in Lenny, so
-I did not notice this in my initial testing.  I have tested it on
-Squeeze, and &#39;&lt;tt&gt;chage -d 0 username&lt;/tt&gt;&#39; do work there.  I have not
-tested it on Lenny yet.&lt;/p&gt;
+&lt;p&gt;&lt;ul&gt;
 
-&lt;p&gt;Update 2010-05-02-19:05: Jim Paris tells me via email that an
-equivalent command to expire a password is &#39;&lt;tt&gt;passwd -e
-username&lt;/tt&gt;&#39;, which insert zero into the date of the last password
-change.&lt;/p&gt;
-</description>
-       </item>
-       
-       <item>
-               <title>Parallellizing the boot in Debian Squeeze - ready for wider testing</title>
-               <link>http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</guid>
-                <pubDate>Thu, 6 May 2010 23:25:00 +0200</pubDate>
-               <description>&lt;p&gt;These days, the init.d script dependencies in Squeeze are quite
-complete, so complete that it is actually possible to run all the
-init.d scripts in parallell based on these dependencies.  If you want
-to test your Squeeze system, make sure
-&lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
-based boot sequencing&lt;/a&gt; is enabled, and add this line to
-/etc/default/rcS:&lt;/p&gt;
+&lt;li&gt;The wicd package seen to
+&lt;a href=&quot;http://bugs.debian.org/508289&quot;&gt;break NFS mounting&lt;/a&gt; and
+&lt;a href=&quot;http://bugs.debian.org/581586&quot;&gt;network setup&lt;/a&gt; when
+parallel booting is enabled.  No idea why, but the wicd maintainer
+seem to be on the case.&lt;/li&gt;
 
-&lt;blockquote&gt;&lt;pre&gt;
-CONCURRENCY=makefile
-&lt;/pre&gt;&lt;/blockquote&gt;
+&lt;li&gt;The nvidia X driver seem to
+&lt;a href=&quot;http://bugs.debian.org/583312&quot;&gt;have a race condition&lt;/a&gt;
+triggered more easily when parallel booting is in effect.  The
+maintainer is on the case.&lt;/li&gt;
 
-&lt;p&gt;That is it.  It will cause sysv-rc to use the startpar tool to run
-scripts in parallel using the dependency information stored in
-/etc/init.d/.depend.boot, /etc/init.d/.depend.start and
-/etc/init.d/.depend.stop to order the scripts.  Startpar is configured
-to try to start the kdm and gdm scripts as early as possible, and will
-start the facilities required by kdm or gdm as early as possible to
-make this happen.&lt;/p&gt;
+&lt;li&gt;The sysv-rc package fail to properly enable dependency based boot
+sequencing (the shutdown is broken) when old file-rc users
+&lt;a href=&quot;http://bugs.debian.org/575080&quot;&gt;try to switch back&lt;/a&gt; to
+sysv-rc.  One way to solve it would be for file-rc to create
+/etc/init.d/.legacy-bootordering, and another is to try to make
+sysv-rc more robust.  Will investigate some more and probably upload a
+workaround in sysv-rc to help those trying to move from file-rc to
+sysv-rc get a working shutdown.&lt;/li&gt;
 
-&lt;p&gt;Give it a try, and see if you like the result.  If some services
-fail to start properly, it is most likely because they have incomplete
-init.d script dependencies in their startup script (or some of their
-dependent scripts have incomplete dependencies).  Report bugs and get
-the package maintainers to fix it. :)&lt;/p&gt;
+&lt;/ul&gt;&lt;/p&gt;
 
-&lt;p&gt;Running scripts in parallel could be the default in Debian when we
-manage to get the init.d script dependencies complete and correct.  I
-expect we will get there in Squeeze+1, if we get manage to test and
-fix the remaining issues.&lt;/p&gt;
+&lt;p&gt;All in all not many surprising issues, and all of them seem
+solvable before Squeeze is released.  In addition to these there are
+some packages with bugs in their dependencies and run level settings,
+which I expect will be fixed in a reasonable time span.&lt;/p&gt;
 
 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
 the BTS, please usertag the report to get it to show up at
 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
+
+&lt;p&gt;Update: Correct bug number to file-rc issue.&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>systemd, an interesting alternative to upstart</title>
-               <link>http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</guid>
-                <pubDate>Thu, 13 May 2010 22:20:00 +0200</pubDate>
-               <description>&lt;p&gt;The last few days a new boot system called
-&lt;a href=&quot;http://www.freedesktop.org/wiki/Software/systemd&quot;&gt;systemd&lt;/a&gt;
-has been
-&lt;a href=&quot;http://0pointer.de/blog/projects/systemd.html&quot;&gt;introduced&lt;/a&gt;
+               <title>More flexible firmware handling in debian-installer</title>
+               <link>http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</guid>
+                <pubDate>Sat, 22 May 2010 21:30:00 +0200</pubDate>
+               <description>&lt;p&gt;After a long break from debian-installer development, I finally
+found time today to return to the project.  Having to spend less time
+working dependency based boot in debian, as it is almost complete now,
+definitely helped freeing some time.&lt;/p&gt;
 
-to the free software world.  I have not yet had time to play around
-with it, but it seem to be a very interesting alternative to
-&lt;a href=&quot;http://upstart.ubuntu.com/&quot;&gt;upstart&lt;/a&gt;, and might prove to be
-a good alternative for Debian when we are able to switch to an event
-based boot system.  Tollef is
-&lt;a href=&quot;http://bugs.debian.org/580814&quot;&gt;in the process&lt;/a&gt; of getting
-systemd into Debian, and I look forward to seeing how well it work.  I
-like the fact that systemd handles init.d scripts with dependency
-information natively, allowing them to run in parallel where upstart
-at the moment do not.&lt;/p&gt;
+&lt;p&gt;A while back, I ran into a problem while working on Debian Edu.  We
+include some firmware packages on the Debian Edu CDs, those needed to
+get disk and network controllers working.  Without having these
+firmware packages available during installation, it is impossible to
+install Debian Edu on the given machine, and because our target group
+are non-technical people, asking them to provide firmware packages on
+an external medium is a support pain.  Initially, I expected it to be
+enough to include the firmware packages on the CD to get
+debian-installer to find and use them.  This proved to be wrong.
+Next, I hoped it was enough to symlink the relevant firmware packages
+to some useful location on the CD (tried /cdrom/ and
+/cdrom/firmware/).  This also proved to not work, and at this point I
+found time to look at the debian-installer code to figure out what was
+going to work.&lt;/p&gt;
 
-&lt;p&gt;Unfortunately do systemd have the same problem as upstart regarding
-platform support.  It only work on recent Linux kernels, and also need
-some new kernel features enabled to function properly.  This means
-kFreeBSD and Hurd ports of Debian will need a port or a different boot
-system.  Not sure how that will be handled if systemd proves to be the
-way forward.&lt;/p&gt;
+&lt;p&gt;The firmware loading code is in the hw-detect package, and a closer
+look revealed that it would only look for firmware packages outside
+the installation media, so the CD was never checked for firmware
+packages.  It would only check USB sticks, floppies and other
+&quot;external&quot; media devices.  Today I changed it to also look in the
+/cdrom/firmware/ directory on the mounted CD or DVD, which should
+solve the problem I ran into with Debian edu.  I also changed it to
+look in /firmware/, to make sure the installer also find firmware
+provided in the initrd when booting the installer via PXE, to allow us
+to provide the same feature in the PXE setup included in Debian
+Edu.&lt;/p&gt;
 
-&lt;p&gt;In the mean time, based on the
-&lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
-on debian-devel@&lt;/a&gt; regarding parallel booting in Debian, I have
-decided to enable full parallel booting as the default in Debian as
-soon as possible (probably this weekend or early next week), to see if
-there are any remaining serious bugs in the init.d dependencies.  A
-new version of the sysvinit package implementing this change is
-already in experimental.  If all go well, Squeeze will be released
-with parallel booting enabled by default.&lt;/p&gt;
+&lt;p&gt;To make sure firmware deb packages with a license questions are not
+activated without asking if the license is accepted, I extended
+hw-detect to look for preinst scripts in the firmware packages, and
+run these before activating the firmware during installation.  The
+license question is asked using debconf in the preinst, so this should
+solve the issue for the firmware packages I have looked at so far.&lt;/p&gt;
+
+&lt;p&gt;If you want to discuss the details of these features, please
+contact us on debian-boot@lists.debian.org.&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Sitesummary tip: Listing MAC address of all clients</title>
-               <link>http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</guid>
-                <pubDate>Fri, 14 May 2010 21:10:00 +0200</pubDate>
-               <description>&lt;p&gt;In the recent Debian Edu versions, the
-&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/SiteSummary&quot;&gt;sitesummary
-system&lt;/a&gt; is used to keep track of the machines in the school
-network.  Each machine will automatically report its status to the
-central server after boot and once per night.  The network setup is
-also reported, and using this information it is possible to get the
-MAC address of all network interfaces in the machines.  This is useful
-to update the DHCP configuration.&lt;/p&gt;
+               <title>Magnetstripeinnhold i billetter fra Flytoget og Hurtigruten</title>
+               <link>http://people.skolelinux.org/pere/blog/Magnetstripeinnhold_i_billetter_fra_Flytoget_og_Hurtigruten.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Magnetstripeinnhold_i_billetter_fra_Flytoget_og_Hurtigruten.html</guid>
+                <pubDate>Fri, 21 May 2010 16:00:00 +0200</pubDate>
+               <description>&lt;p&gt;For en stund tilbake kjøpte jeg en magnetkortleser for å kunne
+titte på hva som er skrevet inn på magnetstripene til ulike kort.  Har
+ikke hatt tid til å analysere mange kort så langt, men tenkte jeg
+skulle dele innholdet på to kort med mine lesere.&lt;/p&gt;
 
-&lt;p&gt;To give some idea how to use sitesummary, here is a one-liner to
-ist all MAC addresses of all machines reporting to sitesummary.  Run
-this on the collector host:&lt;/p&gt;
+&lt;p&gt;For noen dager siden tok jeg flyet til Harstad og Hurtigruten til
+Bergen.  Flytoget fra Oslo S til flyplassen ga meg en billett med
+magnetstripe.  Påtrykket finner jeg følgende informasjon:&lt;/p&gt;
 
-&lt;blockquote&gt;&lt;pre&gt;
-perl -MSiteSummary -e &#39;for_all_hosts(sub { print join(&quot; &quot;, get_macaddresses(shift)), &quot;\n&quot;; });&#39;
-&lt;/pre&gt;&lt;/blockquote&gt;
+&lt;pre&gt;
+Flytoget Airport Express Train
 
-&lt;p&gt;This will list all MAC addresses assosiated with all machine, one
-line per machine and with space between the MAC addresses.&lt;/p&gt;
+Fra - Til        : Oslo Sentralstasjon
+Kategori         : Voksen
+Pris             : Nok 170,00
+Herav mva. 8,00% : NOK 12,59
+Betaling         : Kontant
+Til - Fra        : Oslo Lufthavn
+Utstedt:         : 08.05.10
+Gyldig Fra-Til   : 08.05.10-07.11.10
+Billetttype      : Enkeltbillett
 
-&lt;p&gt;To allow system administrators easier job at adding static DHCP
-addresses for hosts, it would be possible to extend this to fetch
-machine information from sitesummary and update the DHCP and DNS
-tables in LDAP using this information.  Such tool is unfortunately not
-written yet.&lt;/p&gt;
-</description>
-       </item>
-       
-       <item>
-               <title>Parallellized boot is now the default in Debian/unstable</title>
-               <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</guid>
-                <pubDate>Fri, 14 May 2010 22:40:00 +0200</pubDate>
-               <description>&lt;p&gt;Since this evening, parallel booting is the default in
-Debian/unstable for machines using dependency based boot sequencing.
-Apparently the testing of concurrent booting has been wider than
-expected, if I am to believe the
-&lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
-on debian-devel@&lt;/a&gt;, and I concluded a few days ago to move forward
-with the feature this weekend, to give us some time to detect any
-remaining problems before Squeeze is frozen.  If serious problems are
-detected, it is simple to change the default back to sequential boot.
-The upload of the new sysvinit package also activate a new upstream
-version.&lt;/p&gt;
+102-1015-100508-48382-01-08
+&lt;/pre&gt;
 
-More information about
-&lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
-based boot sequencing&lt;/a&gt; is available from the Debian wiki.  It is
-currently possible to disable parallel booting when one run into
-problems caused by it, by adding this line to /etc/default/rcS:&lt;/p&gt;
+&lt;p&gt;På selve magnetstripen er innholdet
+&lt;tt&gt;;E?+900120011=23250996541068112619257138248441708433322932704083389389062603279671261502492655?&lt;/tt&gt;.
+Aner ikke hva innholdet representerer, og det er lite overlapp mellom
+det jeg ser trykket på billetten og det jeg ser av tegn i
+magnetstripen.  Håper det betyr at de bruker kryptografiske metoder
+for å gjøre det vanskelig å forfalske billetter.&lt;/p&gt;
 
-&lt;blockquote&gt;&lt;pre&gt;
-CONCURRENCY=none
-&lt;/pre&gt;&lt;/blockquote&gt;
+&lt;p&gt;Den andre billetten er fra Hurtigruten, der jeg mistenker at
+strekkoden på fronten er mer brukt enn magnetstripen (det var i hvert
+fall den biten vi stakk inn i dørlåsen).&lt;/p&gt;
 
-&lt;p&gt;If you report any problems with dependencies in init.d scripts to
-the BTS, please usertag the report to get it to show up at
-&lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
-list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
+&lt;p&gt;Påtrykket forsiden er følgende:&lt;/p&gt;
+
+&lt;pre&gt;
+Romnummer 727
+Hurtigruten
+Midnatsol
+Reinholdtsen
+Petter
+Bookingno: SAX69   0742193
+Harstad-Bergen
+Dep: 09.05.2010 Arr: 12.05.2010
+Lugar fra Risøyhamn
+Kost: FRO=4
+&lt;/pre&gt;
+
+&lt;p&gt;På selve magnetstripen er innholdet
+&lt;tt&gt;;1316010007421930=00000000000000000000?+E?&lt;/tt&gt;.  Heller ikke her
+ser jeg mye korrespondanse mellom påtrykk og magnetstripe.&lt;/p&gt;
 </description>
        </item>
        
@@ -294,160 +224,230 @@ please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
        </item>
        
        <item>
-               <title>Magnetstripeinnhold i billetter fra Flytoget og Hurtigruten</title>
-               <link>http://people.skolelinux.org/pere/blog/Magnetstripeinnhold_i_billetter_fra_Flytoget_og_Hurtigruten.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Magnetstripeinnhold_i_billetter_fra_Flytoget_og_Hurtigruten.html</guid>
-                <pubDate>Fri, 21 May 2010 16:00:00 +0200</pubDate>
-               <description>&lt;p&gt;For en stund tilbake kjøpte jeg en magnetkortleser for å kunne
-titte på hva som er skrevet inn på magnetstripene til ulike kort.  Har
-ikke hatt tid til å analysere mange kort så langt, men tenkte jeg
-skulle dele innholdet på to kort med mine lesere.&lt;/p&gt;
+               <title>Parallellized boot is now the default in Debian/unstable</title>
+               <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</guid>
+                <pubDate>Fri, 14 May 2010 22:40:00 +0200</pubDate>
+               <description>&lt;p&gt;Since this evening, parallel booting is the default in
+Debian/unstable for machines using dependency based boot sequencing.
+Apparently the testing of concurrent booting has been wider than
+expected, if I am to believe the
+&lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
+on debian-devel@&lt;/a&gt;, and I concluded a few days ago to move forward
+with the feature this weekend, to give us some time to detect any
+remaining problems before Squeeze is frozen.  If serious problems are
+detected, it is simple to change the default back to sequential boot.
+The upload of the new sysvinit package also activate a new upstream
+version.&lt;/p&gt;
 
-&lt;p&gt;For noen dager siden tok jeg flyet til Harstad og Hurtigruten til
-Bergen.  Flytoget fra Oslo S til flyplassen ga meg en billett med
-magnetstripe.  Påtrykket finner jeg følgende informasjon:&lt;/p&gt;
+More information about
+&lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
+based boot sequencing&lt;/a&gt; is available from the Debian wiki.  It is
+currently possible to disable parallel booting when one run into
+problems caused by it, by adding this line to /etc/default/rcS:&lt;/p&gt;
 
-&lt;pre&gt;
-Flytoget Airport Express Train
+&lt;blockquote&gt;&lt;pre&gt;
+CONCURRENCY=none
+&lt;/pre&gt;&lt;/blockquote&gt;
 
-Fra - Til        : Oslo Sentralstasjon
-Kategori         : Voksen
-Pris             : Nok 170,00
-Herav mva. 8,00% : NOK 12,59
-Betaling         : Kontant
-Til - Fra        : Oslo Lufthavn
-Utstedt:         : 08.05.10
-Gyldig Fra-Til   : 08.05.10-07.11.10
-Billetttype      : Enkeltbillett
+&lt;p&gt;If you report any problems with dependencies in init.d scripts to
+the BTS, please usertag the report to get it to show up at
+&lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
+list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
+</description>
+       </item>
+       
+       <item>
+               <title>Sitesummary tip: Listing MAC address of all clients</title>
+               <link>http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</guid>
+                <pubDate>Fri, 14 May 2010 21:10:00 +0200</pubDate>
+               <description>&lt;p&gt;In the recent Debian Edu versions, the
+&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/SiteSummary&quot;&gt;sitesummary
+system&lt;/a&gt; is used to keep track of the machines in the school
+network.  Each machine will automatically report its status to the
+central server after boot and once per night.  The network setup is
+also reported, and using this information it is possible to get the
+MAC address of all network interfaces in the machines.  This is useful
+to update the DHCP configuration.&lt;/p&gt;
 
-102-1015-100508-48382-01-08
-&lt;/pre&gt;
+&lt;p&gt;To give some idea how to use sitesummary, here is a one-liner to
+ist all MAC addresses of all machines reporting to sitesummary.  Run
+this on the collector host:&lt;/p&gt;
 
-&lt;p&gt;På selve magnetstripen er innholdet
-&lt;tt&gt;;E?+900120011=23250996541068112619257138248441708433322932704083389389062603279671261502492655?&lt;/tt&gt;.
-Aner ikke hva innholdet representerer, og det er lite overlapp mellom
-det jeg ser trykket på billetten og det jeg ser av tegn i
-magnetstripen.  Håper det betyr at de bruker kryptografiske metoder
-for å gjøre det vanskelig å forfalske billetter.&lt;/p&gt;
+&lt;blockquote&gt;&lt;pre&gt;
+perl -MSiteSummary -e &#39;for_all_hosts(sub { print join(&quot; &quot;, get_macaddresses(shift)), &quot;\n&quot;; });&#39;
+&lt;/pre&gt;&lt;/blockquote&gt;
 
-&lt;p&gt;Den andre billetten er fra Hurtigruten, der jeg mistenker at
-strekkoden på fronten er mer brukt enn magnetstripen (det var i hvert
-fall den biten vi stakk inn i dørlåsen).&lt;/p&gt;
+&lt;p&gt;This will list all MAC addresses assosiated with all machine, one
+line per machine and with space between the MAC addresses.&lt;/p&gt;
 
-&lt;p&gt;Påtrykket forsiden er følgende:&lt;/p&gt;
+&lt;p&gt;To allow system administrators easier job at adding static DHCP
+addresses for hosts, it would be possible to extend this to fetch
+machine information from sitesummary and update the DHCP and DNS
+tables in LDAP using this information.  Such tool is unfortunately not
+written yet.&lt;/p&gt;
+</description>
+       </item>
+       
+       <item>
+               <title>systemd, an interesting alternative to upstart</title>
+               <link>http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</guid>
+                <pubDate>Thu, 13 May 2010 22:20:00 +0200</pubDate>
+               <description>&lt;p&gt;The last few days a new boot system called
+&lt;a href=&quot;http://www.freedesktop.org/wiki/Software/systemd&quot;&gt;systemd&lt;/a&gt;
+has been
+&lt;a href=&quot;http://0pointer.de/blog/projects/systemd.html&quot;&gt;introduced&lt;/a&gt;
 
-&lt;pre&gt;
-Romnummer 727
-Hurtigruten
-Midnatsol
-Reinholdtsen
-Petter
-Bookingno: SAX69   0742193
-Harstad-Bergen
-Dep: 09.05.2010 Arr: 12.05.2010
-Lugar fra Risøyhamn
-Kost: FRO=4
-&lt;/pre&gt;
+to the free software world.  I have not yet had time to play around
+with it, but it seem to be a very interesting alternative to
+&lt;a href=&quot;http://upstart.ubuntu.com/&quot;&gt;upstart&lt;/a&gt;, and might prove to be
+a good alternative for Debian when we are able to switch to an event
+based boot system.  Tollef is
+&lt;a href=&quot;http://bugs.debian.org/580814&quot;&gt;in the process&lt;/a&gt; of getting
+systemd into Debian, and I look forward to seeing how well it work.  I
+like the fact that systemd handles init.d scripts with dependency
+information natively, allowing them to run in parallel where upstart
+at the moment do not.&lt;/p&gt;
 
-&lt;p&gt;På selve magnetstripen er innholdet
-&lt;tt&gt;;1316010007421930=00000000000000000000?+E?&lt;/tt&gt;.  Heller ikke her
-ser jeg mye korrespondanse mellom påtrykk og magnetstripe.&lt;/p&gt;
+&lt;p&gt;Unfortunately do systemd have the same problem as upstart regarding
+platform support.  It only work on recent Linux kernels, and also need
+some new kernel features enabled to function properly.  This means
+kFreeBSD and Hurd ports of Debian will need a port or a different boot
+system.  Not sure how that will be handled if systemd proves to be the
+way forward.&lt;/p&gt;
+
+&lt;p&gt;In the mean time, based on the
+&lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
+on debian-devel@&lt;/a&gt; regarding parallel booting in Debian, I have
+decided to enable full parallel booting as the default in Debian as
+soon as possible (probably this weekend or early next week), to see if
+there are any remaining serious bugs in the init.d dependencies.  A
+new version of the sysvinit package implementing this change is
+already in experimental.  If all go well, Squeeze will be released
+with parallel booting enabled by default.&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>More flexible firmware handling in debian-installer</title>
-               <link>http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</guid>
-                <pubDate>Sat, 22 May 2010 21:30:00 +0200</pubDate>
-               <description>&lt;p&gt;After a long break from debian-installer development, I finally
-found time today to return to the project.  Having to spend less time
-working dependency based boot in debian, as it is almost complete now,
-definitely helped freeing some time.&lt;/p&gt;
+               <title>Parallellizing the boot in Debian Squeeze - ready for wider testing</title>
+               <link>http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</guid>
+                <pubDate>Thu, 6 May 2010 23:25:00 +0200</pubDate>
+               <description>&lt;p&gt;These days, the init.d script dependencies in Squeeze are quite
+complete, so complete that it is actually possible to run all the
+init.d scripts in parallell based on these dependencies.  If you want
+to test your Squeeze system, make sure
+&lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
+based boot sequencing&lt;/a&gt; is enabled, and add this line to
+/etc/default/rcS:&lt;/p&gt;
 
-&lt;p&gt;A while back, I ran into a problem while working on Debian Edu.  We
-include some firmware packages on the Debian Edu CDs, those needed to
-get disk and network controllers working.  Without having these
-firmware packages available during installation, it is impossible to
-install Debian Edu on the given machine, and because our target group
-are non-technical people, asking them to provide firmware packages on
-an external medium is a support pain.  Initially, I expected it to be
-enough to include the firmware packages on the CD to get
-debian-installer to find and use them.  This proved to be wrong.
-Next, I hoped it was enough to symlink the relevant firmware packages
-to some useful location on the CD (tried /cdrom/ and
-/cdrom/firmware/).  This also proved to not work, and at this point I
-found time to look at the debian-installer code to figure out what was
-going to work.&lt;/p&gt;
+&lt;blockquote&gt;&lt;pre&gt;
+CONCURRENCY=makefile
+&lt;/pre&gt;&lt;/blockquote&gt;
 
-&lt;p&gt;The firmware loading code is in the hw-detect package, and a closer
-look revealed that it would only look for firmware packages outside
-the installation media, so the CD was never checked for firmware
-packages.  It would only check USB sticks, floppies and other
-&quot;external&quot; media devices.  Today I changed it to also look in the
-/cdrom/firmware/ directory on the mounted CD or DVD, which should
-solve the problem I ran into with Debian edu.  I also changed it to
-look in /firmware/, to make sure the installer also find firmware
-provided in the initrd when booting the installer via PXE, to allow us
-to provide the same feature in the PXE setup included in Debian
-Edu.&lt;/p&gt;
+&lt;p&gt;That is it.  It will cause sysv-rc to use the startpar tool to run
+scripts in parallel using the dependency information stored in
+/etc/init.d/.depend.boot, /etc/init.d/.depend.start and
+/etc/init.d/.depend.stop to order the scripts.  Startpar is configured
+to try to start the kdm and gdm scripts as early as possible, and will
+start the facilities required by kdm or gdm as early as possible to
+make this happen.&lt;/p&gt;
 
-&lt;p&gt;To make sure firmware deb packages with a license questions are not
-activated without asking if the license is accepted, I extended
-hw-detect to look for preinst scripts in the firmware packages, and
-run these before activating the firmware during installation.  The
-license question is asked using debconf in the preinst, so this should
-solve the issue for the firmware packages I have looked at so far.&lt;/p&gt;
+&lt;p&gt;Give it a try, and see if you like the result.  If some services
+fail to start properly, it is most likely because they have incomplete
+init.d script dependencies in their startup script (or some of their
+dependent scripts have incomplete dependencies).  Report bugs and get
+the package maintainers to fix it. :)&lt;/p&gt;
 
-&lt;p&gt;If you want to discuss the details of these features, please
-contact us on debian-boot@lists.debian.org.&lt;/p&gt;
+&lt;p&gt;Running scripts in parallel could be the default in Debian when we
+manage to get the init.d script dependencies complete and correct.  I
+expect we will get there in Squeeze+1, if we get manage to test and
+fix the remaining issues.&lt;/p&gt;
+
+&lt;p&gt;If you report any problems with dependencies in init.d scripts to
+the BTS, please usertag the report to get it to show up at
+&lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
+list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Parallellized boot seem to hold up well in Debian/testing</title>
-               <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</link>        
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</guid>
-                <pubDate>Thu, 27 May 2010 23:55:00 +0200</pubDate>
-               <description>&lt;p&gt;A few days ago, parallel booting was enabled in Debian/testing.
-The feature seem to hold up pretty well, but three fairly serious
-issues are known and should be solved:
+               <title>Forcing new users to change their password on first login</title>
+               <link>http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</guid>
+                <pubDate>Sun, 2 May 2010 13:47:00 +0200</pubDate>
+               <description>&lt;p&gt;One interesting feature in Active Directory, is the ability to
+create a new user with an expired password, and thus force the user to
+change the password on the first login attempt.&lt;/p&gt;
 
-&lt;p&gt;&lt;ul&gt;
+&lt;p&gt;I&#39;m not quite sure how to do that with the LDAP setup in Debian
+Edu, but did some initial testing with a local account.  The account
+and password aging information is available in /etc/shadow, but
+unfortunately, it is not possible to specify an expiration time for
+passwords, only a maximum age for passwords.&lt;/p&gt;
 
-&lt;li&gt;The wicd package seen to
-&lt;a href=&quot;http://bugs.debian.org/508289&quot;&gt;break NFS mounting&lt;/a&gt; and
-&lt;a href=&quot;http://bugs.debian.org/581586&quot;&gt;network setup&lt;/a&gt; when
-parallel booting is enabled.  No idea why, but the wicd maintainer
-seem to be on the case.&lt;/li&gt;
+&lt;p&gt;A freshly created account (using adduser test) will have these
+settings in /etc/shadow:&lt;/p&gt;
 
-&lt;li&gt;The nvidia X driver seem to
-&lt;a href=&quot;http://bugs.debian.org/583312&quot;&gt;have a race condition&lt;/a&gt;
-triggered more easily when parallel booting is in effect.  The
-maintainer is on the case.&lt;/li&gt;
+&lt;blockquote&gt;&lt;pre&gt;
+root@tjener:~# chage -l test
+Last password change                                    : May 02, 2010
+Password expires                                        : never
+Password inactive                                       : never
+Account expires                                         : never
+Minimum number of days between password change          : 0
+Maximum number of days between password change          : 99999
+Number of days of warning before password expires       : 7
+root@tjener:~#
+&lt;/pre&gt;&lt;/blockquote&gt;
 
-&lt;li&gt;The sysv-rc package fail to properly enable dependency based boot
-sequencing (the shutdown is broken) when old file-rc users
-&lt;a href=&quot;http://bugs.debian.org/575080&quot;&gt;try to switch back&lt;/a&gt; to
-sysv-rc.  One way to solve it would be for file-rc to create
-/etc/init.d/.legacy-bootordering, and another is to try to make
-sysv-rc more robust.  Will investigate some more and probably upload a
-workaround in sysv-rc to help those trying to move from file-rc to
-sysv-rc get a working shutdown.&lt;/li&gt;
+&lt;p&gt;The only way I could come up with to create a user with an expired
+account, is to change the date of the last password change to the
+lowest value possible (January 1th 1970), and the maximum password age
+to the difference in days between that date and today.  To make it
+simple, I went for 30 years (30 * 365 = 10950) and January 2th (to
+avoid testing if 0 is a valid value).&lt;/p&gt;
 
-&lt;/ul&gt;&lt;/p&gt;
+&lt;p&gt;After using these commands to set it up, it seem to work as
+intended:&lt;/p&gt;
 
-&lt;p&gt;All in all not many surprising issues, and all of them seem
-solvable before Squeeze is released.  In addition to these there are
-some packages with bugs in their dependencies and run level settings,
-which I expect will be fixed in a reasonable time span.&lt;/p&gt;
+&lt;blockquote&gt;&lt;pre&gt;
+root@tjener:~# chage -d 1 test; chage -M 10950 test
+root@tjener:~# chage -l test
+Last password change                                    : Jan 02, 1970
+Password expires                                        : never
+Password inactive                                       : never
+Account expires                                         : never
+Minimum number of days between password change          : 0
+Maximum number of days between password change          : 10950
+Number of days of warning before password expires       : 7
+root@tjener:~#  
+&lt;/pre&gt;&lt;/blockquote&gt;
 
-&lt;p&gt;If you report any problems with dependencies in init.d scripts to
-the BTS, please usertag the report to get it to show up at
-&lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
-list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
+&lt;p&gt;So far I have tested this with ssh and console, and kdm (in
+Squeeze) login, and all ask for a new password before login in the
+user (with ssh, I was thrown out and had to log in again).&lt;/p&gt;
 
-&lt;p&gt;Update: Correct bug number to file-rc issue.&lt;/p&gt;
+&lt;p&gt;Perhaps we should set up something similar for Debian Edu, to make
+sure only the user itself have the account password?&lt;/p&gt;
+
+&lt;p&gt;If you want to comment on or help out with implementing this for
+Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
+
+&lt;p&gt;Update 2010-05-02 17:20: Paul Tötterman tells me on IRC that the
+shadow(8) page in Debian/testing now state that setting the date of
+last password change to zero (0) will force the password to be changed
+on the first login.  This was not mentioned in the manual in Lenny, so
+I did not notice this in my initial testing.  I have tested it on
+Squeeze, and &#39;&lt;tt&gt;chage -d 0 username&lt;/tt&gt;&#39; do work there.  I have not
+tested it on Lenny yet.&lt;/p&gt;
+
+&lt;p&gt;Update 2010-05-02-19:05: Jim Paris tells me via email that an
+equivalent command to expire a password is &#39;&lt;tt&gt;passwd -e
+username&lt;/tt&gt;&#39;, which insert zero into the date of the last password
+change.&lt;/p&gt;
 </description>
        </item>