Debian updaten, cryptsetup en lvm2

Zoals ik in mijn vorige post al vertelde, hadden wij de pc van mn schoonmoeder al een tijdje niet meer in beheer gehad en voornamelijk telefonisch geprobeerd om te helpen bij problemen waar mijn schoonmoeder tegenaan was gelopen. Toen we eenmaal bij haar thuis waren aangekomen, ben ik eerst maar eens gaan kijken wat er nou eigenlijk op stond. Tijdens het booten zag ik tot mijn verbazing dat ik een passphrase moest intikken. Degene die de boel geinstalleerd had, heeft dus twee partities aangemaakt om alles op te installeren. De eerste is gewoon de /boot partitie, zodat grub geladen kan worden en het boten van de kernel in gang gezet kan worden. De partitie waar de rest op staat, als versleuteld ingesteld en daarop bevinden vier logische volumes. Voor een thuiscomputertje waar alleen een beetje gesurfed wordt en OpenOffice op draait, bij een persoon die geen verstand van computers heeft, is dat niet heel erg nodig, laat staan handig. Maar goed, als het maar boot, is dat verder ook niet zo’n groot probleem. Al snel zag ik dat het ging om een installatie van de oude Debian stabiele versie etch (4.0), dus ik ging eerst maar eens het hele gebeuren updaten naar de nieuwe stabiele versie lenny (5.0).

Als je van een oude versie van Debian wilt updaten naar een nieuwe versie, moet je er eerst voor zorgen dat je de oude versie tot de laatste updates van die versie hebt geupdate. Doe je dat niet, heb je kans dat er teveel verschillen tussen de versies in de pakketten zitten en dat je dan met kapotte dependencies blijft zitten en de helft van je updates niet lukken. Wil je updaten van een nog oudere versie (bijvoorbeeld van versie sarge/3.1), moet je eerst updaten naar de versie die daarna kwam!

Updaten weten de meesten van de Debian gebruikers wel, hoewel sommigen alleen de grafische omgeving gebruiken. Persoonlijk hou ik veel meer van de console, omdat je dan vaak net iets meer beschikking hebt tot alle opties van de commando’s die je gebruikt en beter kan zien wat er gebeurt.
Eerst maar eens de huidige versie doen:

root@pc:~# aptitude update && aptitude safe-upgrade

Vervolgens pas je het bestand aan, waarin staat waar de pakketten opgehaald worden:

root@pc:~# vi /etc/apt/sources.list

Daar staat eerst iets als:

deb ftp://ftp.nl.debian.org/debian/ etch main contrib
deb-src ftp://ftp.nl.debian.org/debian/ etch main contrib
deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib

Wil je zeker weten dat je altijd met de stabiele versie draait van Debian, verander je de versienaam (in dit geval etch) in stable. In vi heb je heel handig een search en replace commando:

:%s/etch/stable/

Met de : begin je een commando, met de % geef je aan dat je deze search&replace over het hele bestand wilt uitvoeren. De s staat voor search&replace, vervolgens geef je aan wat je wilt zoeken en wat je wilt vervangen.

Je bestand ziet er als het goed is nu zo uit:

deb ftp://ftp.nl.debian.org/debian/ stable main contrib
deb-src ftp://ftp.nl.debian.org/debian/ stable main contrib
deb http://security.debian.org/ stable/updates main contrib
deb-src http://security.debian.org/ stable/updates main contrib

Opslaan en afsluiten kan op diverse manieren in vi, ik doe het altijd zo:

:wq

Nou kan je weer verder met je updates, eerst doe je een update:

root@pc:~# aptitude update

Om je distributie nu helemaal naar de nieuwe versie te upgraden kan je ervoor kiezen om dit helemaal door aptitude in één keer te laten doen, ik heb er voor gekozen om het upgraden in stukjes zelf te doen. Die keuze had onder andere te maken met dat ik wou weten wat er zoal op de pc stond en of er eventueel dingen weggehaald konden worden. Om het in één keer door aptitude te laten doen tik je in:

root@pc:~# aptitude dist-upgrade

In de meeste gevallen zal dit gewoon goed gaan, aptitude is een slimme tool die rekening houdt met de diverse dependencies. Als je van de ene versie naar de andere gaat, zal je bijna alle pakketten die je hebt geinstalleerd staan moeten updaten. Op het systeem van mijn schoonmoeder waren dit er zo’n 750, als je wat meer aan het spelen bent met je linux bakje kunnen dit er wel meer zijn. Gelukkig zijn de meeste pakketten niet al te groot, maar ondanks dat zal je redelijk wat MB’s binnen moeten halen. Let er op dat je dus ook genoeg ruimte hebt op de partitie waar je /var/cache/apt/ op staat! Zet ondertussen maar een bakje koffie of een pot thee, want de hele meuk binnenhalen en configureren duurt ook wel even.

Besluit je net als ik om zelf te kiezen welke pakketten je update, probeer dan om zoveel mogelijk de pakketten die voor het draaien van je systeem belangrijk zijn eerst te doen en later pas de programma’s die je als desktopgebruiker hebt. Op die manier weet je zeker dat de desktopprogramma’s kunnen leunen op de nieuwere systeemprogramma’s. Je kiest de pakketten die je wilt updaten door eerst de lijst op te vragen die in de lijst staan voor de dist-upgrade. Je kiest dan om niet door te gaan met de dist-upgrade. Vervolgens bekijk je welke pakketten je wilt en installeerd ze als volgend voorbeeld:

root@pc:~# aptitude install base-files coreutils apt-utils

Je bent er wat langer mee bezig en je zult ook regelmatig dependencies moeten meenemen, maar je hebt wel meer controle over wat er geinstalleerd wordt. Een extra pluspunt is dat je door krijgt hoe je systeem van bepaalde pakketten in elkaar geweven kan zijn.