De installatieprocedure verwijdert tegenwoordig inderdaad alle "oude" pakketten als je nieuwe installeert, maar alleen voor programma's die NIET in gebruik zijn. Als er programma's draaien terwijl ze bijgewerkt worden en die niet zomaar herstart kunnen worden (bijvoorbeeld het geval voor alle desktopapplicaties), dan blijven de oude pakketten staan omdat het bijhorende programma nog in het geheugen zit met alle bijhorende bibliotheken. Als je daarna de applicatie afsluit en later weer herstart, zal de nieuwe versie gebruikt worden. Een apt autoremove zal nu de overgebleven oude pakketten kunnen opruimen. Daarom is het eigenlijk geen slecht idee om een 'apt autoremove' in te bouwen in de startuproutines van een desktopsysteem.
Dat rijmt niet volgens mij.
- Je hebt: de installatiepakketten (.deb bestanden in /var/cache/apt). Die worden verwijderd door "clean", of "autoclean" voor oude pakketversies. Dit staat helemaal los van de lopende programma's en hun bibliotheken.
- Je hebt: de geïnstalleerde programmabibliotheken. Die worden verwijderd door "autoremove", enkel indien niet meer in gebruik door enig programma. Als die worden bijgewerkt, dan worden de oude binaire bestanden overschreven.
Het lijkt mij dus niet mogelijk dat de "oude versie" niet wordt gewist als de programmabibliotheek bijgewerkt wordt. Programmabibliotheken worden immers
overschreven door nieuwere versies.
Wel kan de oude versie nog in RAM zitten als er programma's aan het lopen zijn, die die bibiotheek gebruiken. En als op een bepaald moment de bibliotheek moet heringelezen worden, dan zal het de nieuwe versie worden, en dat kan dan al dan niet (meestal niet) problemen geven voor het al lopende programma.
Als de installatieprocedure tegenwoordig ook overbodige bibliotheken verwijdert (i.e. autoremove) , dan zal die dat zonder meer doen. Autoremove gebeurt immers (per definitie) nooit als er nog programma's lopen of op de harde schijf staan, die die bibliotheken gebruiken.