The hunt for /etc/.pwd.lock

After upgrade Debian to kernel 3.0.0, I saw a hidden file called .pwd.lock in /etc which I didn’t noticed before. Checking other machines gave the same result as shown below, but both without a matching Debian-package or manpage.

$ ls -l /etc/.pwd.lock
-rw-------. 1 root root 0 feb 27  2009 /etc/.pwd.lock
$ ls -l --time=atime /etc/.pwd.lock
-rw-------. 1 root root 0 apr 10  2010 /etc/.pwd.lock
$ ls -l --time=ctime /etc/.pwd.lock
-rw-------. 1 root root 0 aug 14  2010 /etc/.pwd.lock

As time match at least the installation date of the machine and exists on other machines it appears to be a valid file, but with what purpose? After reading the Linux Programmer’s Manual two functions called lckpwdf and ulckpwdf where candidates for using this file. Checking the source code at Sourceware confirmed that both lckpwdf and ulckpwdf are using the file. And reading the manpage about these functions also confirms it’s purpose, a lock file the commands like passwd.

The lckpwdf() function is intended to protect against multiple simulta‐
neous accesses of the shadow password database. It tries to acquire a
lock, and returns 0 on success, or -1 on failure (lock not obtained
within 15 seconds). The ulckpwdf() function releases the lock again.
Note that there is no protection against direct access of the shadow
password file. Only programs that use lckpwdf() will notice the lock.

These were the functions that formed the original shadow API. They are
widely available.

This is another example why open source matters. You can get the evidence when you want and/or need instead of trusting some manual to explain things. Verification will become more important as systems get more complex. It was/is also a big advantage when OpenSolaris was created with it’s web accessible source repository.

Free as in Freedom

Soms is een idee niet uit te leggen in een paar zinnen, maar heb je daar een heel boek voor nodig. Zo ook de gedachte achter vrije software en wat daar aan te grondslag ligt. In het boek Free as in Freedom, wat ook te lezen is op Wikisource, wordt aan de hand van het levensverhaal van Richard Stallman vertelt waarom vrije software belangrijk is.

In het boek wordt oa ingegaan over hoe Stallman met computers in aanraking kwam, maar ook met zijn eerste gesloten software en de beperkingen die dit met zich meebracht. Ook wordt goed ingegaan waarom het belangrijk is om het over vrije software en geen open software te hebben hoewel de marketingterm tegenwoordig open source voorschrijft.

Maar de echte klapper van dit boek is zit in de epilogue waar oa uit de doeken wordt gedaan hoe dit boek tot stand is gekomen en dat er voor uitgever O’Reilly is gekozen. Het vat ook meer dan goed samen waar dit boek, maar ook de Free Software Foundation voor staan. Het is dan ook zeer zeker aan te raden om te lezen voor een ieder met een achtergrond of interesse in de ICT of juridische wereld.

Een blik op Ubuntu 8.10

Met nog een maand te gaan ongeveer voor de geplande release en nog een paar dagen voor de eerste beta werd het tijd om de aankomende Ubuntu een te gaan bekijken. En de belangrijkste vraag is misschien wel voor mensen wat deze release extra gaat brengen tov de huidige LTS-release. Een kort antwoord hierop is misschien wel dat het verstandig is voor veel mensen om gewoon bij de LTS-release te blijven voor dagelijks gebruik.

Veel wijzigingen zijn wijzigingen onder de motorkap en zullen bij dagelijks gebruik amper tot niet opvallen. De kernel is bijgewerkt tot 2.6.27, glibc tot 2.8 en GNOME tot 2.24. Een andere aanpassing is dat de AMD64-versie van Ubuntu voorzien is van extra maatregelen om dingen zoals buffer overflows tegen te gaan als stap naar extra veiligheid en om uit te vinden waar de problemen zitten. Dit samen met een bijgewerkte X-server waardoor veel acties automagisch kunnen gebeuren is er weinig wat er echt voor de gebruiker gaat veranderen.

Wat er wel gaat veranderen voor de gebruiker zal in de toekomst liggen en de adoptie van nieuwe technieken. Een van deze technieken zal Jabber betreffen, want met GNOME 2.24 is een weg ingezet om standaard infra te bouwen zodat instant messaging en communicatie tussen applicaties transparant mbv XMPP kan plaats vinden. Helaas levert Ubuntu deze packages nog niet als default mee, maar er zijn plannen om dit wel te gaan doen. Net zoals Ubuntu de overstap aan het maken is naar OpenJDK ipv Sun Java, maar voor beide is nog geen einddatum inzicht.

Met de aankomende release komt weer iets naar voren waar veel FOSS projecten zoals GNOME al jaren last van hebben. Veel projecten beginnen op een leeftijd te komen dat ze langzaam aan volwassen beginnen te worden en men er wel redelijk uit is. Er wordt hard gewerkt om code op te ruimen, te voldoen aan standaarden zoals die van Freedesktop, maar ook om vertalingen en documentatie op orde te krijgen. En ik zeg het nogmaals, maar FOSS begint gelukkig langzaam aan saai te worden.

Wat maakt vrije software?

Wat maakt vrije software? Heeft het GNU-project ons alleen maar vrije software gegeven in de afgelopen 25 jaar of misschien toch meer? Wat hebben de mensen achter oa BSD, W3C, IETF en Mediawiki ons oa gegeven bijvoorbeeld?

Internet, open standaarden en vrije software hebben de wereld verandert en we staan eigenlijk nog aan de wieg. Mensen uit Brazilie en Thailand werken nu aan vertalingen voor GNOME, mensen uit de VS en Polen werken aan de Linux-kernel, mensen uit Zuid-Afrika en Belgie werken nu aan Wikipedia om artikelen bij te werken. Een schrijfster in Canada werkt nu aan een boek in OpenOffice.org, een jongen in India leert nu Python, een meisje uit Rusland heeft contact met haar familie via Ekiga.

Afstanden zullen niet verdwijnen en geld zal altijd een andere waarde hebben, maar wetende dat mensen met de minuut vrijer worden om creatief te zijn, om te ontdekken en leren, maar ook emoties te delen met andere geeft te denken. Misschien is vrije software niet de code waar het om draait, maar wat er uit voortkomt en welke kant we op kunnen. Misschien is rijkdom wel niet wat je bezit, maar juist wat je deelt.

Blijven upgrade of toch maar niet

Als ik Ubuntu Brainstorm bekijk bijvoorbeeld dan zie ik veel mensen die altijd de laatste versie willen hebben zonder enige duidelijke aanwijzing behalve dat het nummertje hoger is. Het is ook iets wat ik regelmatig zag op usenet bijna elke keer als Debian Stable werd genoemd. Maar het is ook iets wat al een paar jaar te horen is bij elke release van GNOME bijvoorbeeld, want ze verwachten altijd een killerapp die hun leven gaat veranderen.

Maar misschien is deze killerapp er al lang en kijkt iedereen er overheen. Wat als de killerapp juist hetgene is waar je naar kijkt en gebruikt. Wat als de killerapp nu eigenlijk de vrijheid is die je hebt gekregen en niet meer afhankelijk bent van een eindeloze upgrade cycle? De jacht naar de laatste versie om mogelijk je problemen op te lossen. De jacht naar de laatste werkende serialnumbers of crack om iets aan de praat te krijgen of te houden.

Je ziet dezelfde jacht bij computers waar men altijd de laatste en snelste machine wil hebben, maar waarom? Je messanger wordt er echt niet beter van. Je spreadsheet wordt niet echt mooier van meer frames per second. Maar het maakt de verkoopcijfers van sommige partijen wel heel erg interessant en is dat een reden om maar elke keer de marketeers te blijven volgen?

Ja ik geef toe dan meer soms altijd beter lijkt, maar soms kan minder juist meer zijn. En misschien dat hier ook juist de kracht van vrije software ligt zeker als we naar sommige projecten kijken welke redelijk volwassen en compleet beginnen te worden. Het is misschien jammer om te zeggen, maar het spannende en de magie van vrije software begint langzaam te verdwijnen. Een nieuw tijdperk wordt nu wel langzaam ingeluid gelukkig en nieuwe uitdagingen ontstaan.