Ubuntu Logo

Het updaten gaat wel eens mis

By Freerk Jongsma, 23 mei 2013

Als bijvoorbeeld er een klein foutje op de harde schijf zit kan het zijn dat een update misgaat. Een heel erg voor de hand liggende situatie is dat er tijdens het updaten een onderbreking in de stroom is geweest of een onderbreking in de netwerkverbinding.

Tijdens het updateproces is dan iets in de war geraakt. De lijst van geïnstalleerde software komt dan niet overeen met wat er in werkelijkheid is geïnstalleerd  Vaak is dit te merken aan bijvoorbeeld een situatie dat er een update wordt aangeboden voor het updaten van, laten we zeggen, 6 pakketten. Na update wordt denk je dat het klaar is, maar worden wederom deze 6 pakketten aangeboden om te updaten. Herstarten van het systeem helpt ook niets. Het lijkt of het ergens ‘vast’ zit.

Een aantal foutmeldingen zie je hier vaak verschijnen. Als:
– encounred a section with no package:header
– problem with Mergelist/var/lib/apt/lists

De oplossing hiervoor is om de lijsten waarin het proces wordt bijgehouden, weg te halen en dan opnieuw aan te maken.

Het weghalen:
Open een terminalvenster met Ctrl-T of via het menu
Neem over met knip-en-plak (Crtl-C, en dan naar de plek waar je het wilt hebben in de terminal en dan Shift-Insert), of
tik hier in:

sudo apt-get clean
sudo rm /var/lib/apt/lists/* -vf
sudo rm /var/lib/apt/lists/partial/* -vf
sudo apt-get update 

Bij de eerste regel wordt er gevraagd om een wachtwoord in te tikken.
Je ziet niet bij het intikken. dit wordt dus ‘blind’ gedaan.
Hierna moet alles weer gewoon gaan zoals je verwacht.

Bij een specifieke fout als ‘broken packages’ of ‘dependency’ problemen kun je het volgende proberen:
sudo apt-get  -f install

Geen resultaat? Doe dan:
sudo apt-get update –fix-missing

Als er dan nog steeds problemen zijn, doe dan het volgende:
sudo dpkg –configure -a
sudo apt-get install -f

Als er nu nog klachten tevoorschijn komen bij het updaten of installeren van een nieuw pakket dan moet het pakket handmatig uit de lijst verwijderd worden. In /var/lib/dpkg/status staat in een redelijk leesbaar overzicht, dat begint met een lege regel en dan een regel met
Package: de naam van het pakket.
Door met de zoekfunctie van de tekstverwerker te zoeken naar het kapotte pakket, kun je het hele betreffende blok weghalen en het status bestand weer opslaan. Dus vanaf de regel Package: tot de witregel.

Tik dus in in een terminal venster:
sudo gedit  /var/lib/dpkg/status

Hierna zoeken naar het pakket dat in de foutmelding wordt genoemd. Haal het hele blok weg en sla weer op.
Tik nu in:
sudo apt-get update
hierna kun je het pakket dat je hebt verwijderd nogmaals te installeren.
Dit kan met:
sudo apt-get install pakketnaam 
Of je doet het via de Softwaremanager.

Als het nog niet is geïnstalleerd, dan is Synaptic ook fijn om geïnstalleerd te hebben.
Je kunt Synaptic via de Softwaremanager installeren

Als je Synaptic start moet je eerst het wachtwoord ingeven.
In het menu van Synaptic ga je dan naar Bewerken – hier vind je ook een optie Gebroken pakketten repareren

Lees vóór het gebruik van Synaptic de handleiding, en in ieder geval de korte inleiding in het menu onder Hulp

En onderstaande filmpjes kunnen ook zeker helpen.

En een filmpje dat laat zien hoe je Synaptic kunt gebruiken om software te installeren.

2 Comments

  1. Mark schreef:

    Een voorkomend probleem is dat als je in de situatie dat je update-systeem overhoop ligt, je ook niet iets (extra) kunt installeren zoals bv. synaptic.
    Hier nog mijn eigen versie om het update-systeem te repareren:
    http://devrijepc.nl/wiki/doku.php?id=veelgesteldevragen#foutmelding_gebroken_pakketten
    (komt grotendeels overeen met dit artikel)

  2. Machiel Machiel schreef:

    Hoi Freerk,

    Wat een nuttig artikel dit Freerk erg duidelijk geschreven en zeer helder. Bedankt voor dit nuttige en leerzame artikel!

    groeten,

    Machiel

What do you think?

What are you waiting for join the conversation!

%d bloggers liken dit: