Historia zainstalowanych pakietów w Linuksie przydaje się w wielu scenariuszach. Na przykład chcemy dowiecieć się co dokładnie było instalowane na zastanym środowisku albo po prostu cofnąć się w wczasie i odinstalować paczki czy oprogramowanie, które zainstalowaliśmy na tymczasową potrzebę. Warto w tym miejscu poruszyć temat przewagi APT/DPG, czyli działania z poziomu konsoli ponad graficznym menedżerem oprogramowania (takim jak mintinstall). Instalując z poziomu konsoli mamy pełną świadomość i wpływ na to co jest instalowane, w tym drugim zaś przypadku mamy wziąć ryzyko na instalowanie śmieci których trudno będzie się doszukać i jeszcze trudniej pozbyć.

Sposób 1. (DPKG)

grep " install " /var/log/dpkg.log

Proste do zapamiętania polecenie bazujące na logach z dpkg. Wyświetla historię instalacji pakietów wraz z datami i konkretnymi wersjami, każda paczka w osobnej linii. Co ciekawe zawiera także wpisy dodane podczas budowania dystrybucji (na przykładzie Linux Mint) a także wpisy instalacyjne robione z poziomu menedżera oprogramowania (np. mintinstall).

rejestr instalacji pakietów zapisany w dpkg.log

Sposób 2. (APT)

zcat /var/log/apt/history.log.*.gz | cat - /var/log/apt/history.log | grep -Po '^Commandline: apt-get install (?!.*--reinstall)\K.*'

Wypasiona wersja, korzystająca z logów z menedżera APT. Widać tutaj paczki zainstalowane ręcznie dokładnie z w takich grupach w jakich zostały one instalowane.

rejestr zainstalowanych paczek na podstawie danych z APT

Sposób 3. (Bash)

cat .bash_history | grep ' install '

To dokładna lista poleceń z konsoli zapamiętana w historii bash, z jednej strony widać tutaj dokładne parametry np. –reinstall, z drugiej jednak jest to rejestrowane na poziomie samego basha dla danego użytkownika, tak więc jeśli część poleceń była wykonana z poleceniem sudo a część po zalogowaniu na konta root, tej drugiej nie będziemy tutaj widzieć.


Na końcu przykład jak bardzo graficzny menedżer oprogramowania potrafi zaśmiecić. Instalując oprogramowanie w ten sposób użytkownik nie jest świadomy jak dużo paczek towarzyszących musi być zainstalowane do działania danego programu, jak wiele usług (tzw. demonów) będzie działać w tle aby realizować usługi na potrzebę tej jednej aplikacji, nawet jeśli pochodzą one z zupełnie innego środowiska graficznego i ich obecność w systemie jest kompletnie niepożądana. W reszcie na końcu jak dużo z nich pozostanie w systemie po odinstalowaniu danego programu w tym samym okienkowym menedżerze (w praktyce – większość zostanie). Przykład poniżej to lista paczek doinstalowywanych podczas instalacji programów kmail i vlc.

libqt5script5:amd64
libqt5qml5:amd64
libqt5quick5:amd64
qml-module-qtquick-window2:amd64
qml-module-qtquick2:amd64
qml-module-qtgraphicaleffects:amd64
qml-module-qtquick-layouts:amd64
qml-module-qtquick-controls:amd64
libkf5archive5:amd64
libkf5auth-data:all
libkf5coreaddons-data:all
libfam0:amd64
libkf5coreaddons5:amd64
libpolkit-qt5-1-1:amd64
libkf5authcore5:amd64
libkf5codecs-data:all
libkf5codecs5:amd64
libkf5completion-data:all
libkf5config-data:all
libkf5configcore5:amd64
libkf5configgui5:amd64
libkf5widgetsaddons-data:all
libkf5widgetsaddons5:amd64
libkf5completion5:amd64
libkf5configwidgets-data:all
libkf5guiaddons5:amd64
libkf5i18n-data:all
libkf5i18n5:amd64
libkf5configwidgets5:amd64
libkf5dbusaddons-data:all
libkf5dbusaddons5:amd64
libkf5doctools5:amd64
libkf5itemviews-data:all
libkf5itemviews5:amd64
libkf5windowsystem-data:all
libxcb-res0:amd64
libkf5windowsystem5:amd64
libkf5crash5:amd64
libkf5service-data:all
libqt5xml5:amd64
libkf5service5:amd64
libkf5service-bin:amd64
libkf5kiocore5:amd64
libkf5kiontlm5:amd64
libkf5iconthemes-data:all
libkf5iconthemes5:amd64
libkf5jobwidgets-data:all
libkf5jobwidgets5:amd64
libkf5kiowidgets5:amd64
libkf5notifications-data:all
libdbusmenu-qt5-2:amd64
libqt5texttospeech5:amd64
libkf5notifications5:amd64
libkf5solid5-data:all
libkf5solid5:amd64
libkf5textwidgets-data:all
libkf5sonnet5-data:all
libkf5sonnetcore5:amd64
libkf5sonnetui5:amd64
libkf5textwidgets5:amd64
libkf5wallet-data:all
libkwalletbackend5-5:amd64
libkf5wallet5:amd64
libkf5wallet-bin:amd64
kio:amd64
libkf5akonadi-data:all
libkf5akonadicore-bin:amd64
libkf5akonadiprivate5abi2:amd64
libkf5itemmodels5:amd64
libkf5akonadicore5abi2:amd64
libkf5akonadimime-data:all
libkf5xmlgui-bin:amd64
libkf5xmlgui-data:all
libkf5attica5:amd64
libkf5globalaccel-data:all
libkf5globalaccel5:amd64
libkf5xmlgui5:amd64
libqt5sql5:amd64
libkf5akonadiwidgets5abi1:amd64
libkf5mime-data:all
libkf5mime5abi2:amd64
libkf5akonadimime5:amd64
libkf5identitymanagement-data:all
libkf5pimtextedit-data:all
libgrantlee-textdocument5:amd64
libkf5syntaxhighlighting-data:all
libkf5syntaxhighlighting5:amd64
libkf5pimtextedit5abi3:amd64
libkf5identitymanagement5abi1:amd64
libkf5kcmutils-data:all
libkf5auth5:amd64
libkf5declarative-data:all
libkf5package-data:all
libkf5package5:amd64
kpackagetool5:amd64
libkf5declarative5:amd64
libkf5quickaddons5:amd64
libqt5quickwidgets5:amd64
libkf5kcmutils5:amd64
libkf5krosscore5:amd64
libkf5ldap-data:all
libkf5ldap5abi1:amd64
libkf5libkdepim-data:all
libkf5contacts-data:all
libkf5contacts5:amd64
libkf5libkdepim5abi2:amd64
libkf5akonadicontact-data:all
libkf5contacteditor5:amd64
libdmtx0b:amd64
libqrencode4:amd64
libkf5prison5:amd64
libkf5akonadicontact5abi1:amd64
libkf5akonadisearchpim5:amd64
libkf5libkdepimakonadi5:amd64
libkf5libkdepim-plugins:amd64
libqgpgme7:amd64
libkf5libkleo5abi1:amd64
libkf5mailtransport-data:all
libkpimgapi-data:all
libqt5webengine-data:all
libqt5test5:amd64
libqt5webchannel5:amd64
libminizip1:amd64
libqt5positioning5:amd64
libre2-5:amd64
libqt5webenginecore5:amd64
libqt5webengine5:amd64
libqt5webenginewidgets5:amd64
libkpimgapicore5abi1:amd64
libkpimsmtp5abi1:amd64
libkf5mailtransport5abi2:amd64
libkf5mailtransportakonadi5:amd64
libkf5newstuffcore5:amd64
libkf5newstuff-data:all
libqt5quicktemplates2-5:amd64
libqt5quickcontrols2-5:amd64
libkf5kirigami2-5:amd64
qml-module-org-kde-kquickcontrolsaddons:amd64
qml-module-qtqml-models2:amd64
qml-module-qtquick-templates2:amd64
qml-module-qtquick-controls2:amd64
qml-module-org-kde-kirigami2:amd64
qml-module-org-kde-newstuff:amd64
libkf5newstuff5:amd64
libaccounts-glib0:amd64
libaccounts-qt5-1:amd64
libsignon-qt5-1:amd64
libkaccounts1:amd64
libkf5bluezqt-data:all
libkf5bluezqt6:amd64
qml-module-org-kde-bluezqt:amd64
qml-module-qtquick-privatewidgets:amd64
qml-module-qtquick-dialogs:amd64
qml-module-ubuntu-onlineaccounts:amd64
libkf5purpose5:amd64
libkf5purpose-bin:amd64
libkf5pimcommon5abi3:amd64
libkf5pimcommon-plugins:amd64
accountwizard:amd64
libkf5activities5:amd64
kactivities-bin:amd64
libqt5sql5-sqlite:amd64
kactivitymanagerd:amd64
kde-config-mailtransport:amd64
kde-cli-tools-data:all
libkf5su-data:all
libkf5pty-data:all
libkf5pty5:amd64
libkf5su5:amd64
libkf5su-bin:amd64
libkworkspace5-5:amd64
kde-cli-tools:amd64
libqca-qt5-2:amd64
libqca-qt5-2-plugins:amd64
qml-module-org-kde-kconfig:amd64
qml-module-org-kde-kquickcontrols:amd64
libkf5calendarevents5:amd64
libkf5plasma5:amd64
kwayland-data:all
libkf5waylandclient5:amd64
libkf5plasmaquick5:amd64
libxcb-composite0:amd64
libxcb-damage0:amd64
plasma-framework:amd64
libkf5people-data:all
libkf5peoplebackend5:amd64
libkf5people5:amd64
libkf5peoplewidgets5:amd64
qml-module-org-kde-people:amd64
sshfs:amd64
libfakekey0:amd64
libkf5bookmarks-data:all
libkf5bookmarks5:amd64
libkf5kiofilewidgets5:amd64
libkf5pulseaudioqt2:amd64
libqt5multimedia5:amd64
kdeconnect:amd64
libgrantlee-templates5:amd64
libkf5akonadicalendar-data:all
libkf5calendarcore5abi2:amd64
libkf5calendarutils-data:all
libkf5calendarutils5abi1:amd64
libkf5calendarutils-bin:amd64
libkf5akonadicalendar5abi2:amd64
libkf5akonadinotes-data:all
libkf5akonadinotes5:amd64
libkf5calendarsupport-data:all
libkf5holidays-data:all
libkf5holidays5:amd64
kf5-kdepim-apps-libs-data:all
libkf5kdepimdbusinterfaces5:amd64
libkf5calendarsupport5abi1:amd64
libkf5eventviews-data:all
libkgantt2:amd64
libkf5eventviews5abi1:amd64
libkf5grantleetheme-plugins:amd64
libkf5grantleetheme-data:all
libkf5grantleetheme5:amd64
libkf5gravatar-data:all
libkf5gravatar5abi2:amd64
libkf5imap-data:all
libkf5imap5:amd64
libkf5incidenceeditor-data:all
libkf5incidenceeditor5abi2:amd64
libkf5incidenceeditor-bin:amd64
libkf5kaddressbookgrantlee5:amd64
libkf5kaddressbookimportexport5:amd64
libkf5kontactinterface-data:all
libkf5parts-data:all
libkf5parts5:amd64
libkf5kontactinterface5:amd64
libkf5ksieve-data:all
libkf5kmanagesieve5:amd64
libkf5ksieve5:amd64
libkf5ksieveui5:amd64
libkf5mailimporter-data:all
libkf5mailimporter5abi1:amd64
kf5-messagelib-data:all
libkf5followupreminder5:amd64
libkf5messagecore5abi2:amd64
libkf5mbox5:amd64
libkf5mimetreeparser5abi3:amd64
libkf5webengineviewer5abi3:amd64
libkf5messageviewer5abi5:amd64
libkf5messageviewer-plugins:amd64
libkf5sendlater5:amd64
libkf5templateparser5abi2:amd64
libkf5messagecomposer5abi2:amd64
libkf5pimcommonakonadi5:amd64
libphonon4qt5-data:all
libphonon4qt5-4:amd64
vlc-data:all
libusageenvironment3:amd64
libbasicusageenvironment1:amd64
libdvbpsi10:amd64
libebml4v5:amd64
libgroupsock8:amd64
libixml10:amd64
liblivemedia77:amd64
libmatroska6v5:amd64
libopenmpt-modplug1:amd64
libprotobuf-lite17:amd64
libsdl-image1.2:amd64
libspatialaudio0:amd64
libssh2-1:amd64
libupnp13:amd64
libvlccore9:amd64
vlc-plugin-base:amd64
libplacebo7:amd64
vlc-plugin-video-output:amd64
libvlc5:amd64
phonon4qt5-backend-vlc:amd64
phonon4qt5:amd64
libkf5mailcommon5abi4:amd64
libkf5mailcommon-plugins:amd64
libkf5messagelist5abi1:amd64
libkf5tnef-data:all
libkf5tnef5:amd64
libkpimimportwizard5:amd64
libkpimitinerary-data:all
libkpimpkpass5:amd64
libzxingcore1:amd64
libkpimitinerary5:amd64
libmarkdown2:amd64
kdepim-addons:amd64
akonadi-server:amd64
kio-ldap:amd64
kio-sieve:amd64
libsasl2-modules-kdexoauth2:amd64
libkf5akonadiagentbase5:amd64
libkf5alarmcalendar-data:all
libkf5alarmcalendar5abi2:amd64
libkf5notifyconfig-data:all
libkf5notifyconfig5:amd64
libxerces-c3.2:amd64
libkolabxml1v5:amd64
libkpimgapicalendar5:amd64
libkpimgapicontacts5:amd64
libkpimgapitasks5:amd64
libkpimkdav-data:all
libqt5xmlpatterns5:amd64
libkpimkdav5abi2:amd64
libqt5networkauth5:amd64
kdepim-runtime:amd64
kdepim-themeeditors:amd64
libkf5kiogui5:amd64
keditbookmarks:amd64
kinit:amd64
libkf5akonadisearch-data:all
libkf5akonadisearchcore5:amd64
libkf5akonadisearchxapian5:amd64
libkf5akonadisearch-bin:amd64
libkf5threadweaver5:amd64
libkf5runner5:amd64
libkf5akonadisearch-plugins:amd64
libkf5akonadisearchdebug5:amd64
kmail:amd64
kmailtransport-akonadi:amd64
kpackagelauncherqml:amd64
kpeople-vcard:amd64
libkf5krossui5:amd64
kross:amd64
ktnef:amd64
libqt5waylandclient5:amd64
libqt5waylandcompositor5:amd64
qtwayland5:amd64
libkf5idletime5:amd64
kwayland-integration:amd64
libhfstospell10:amd64
libkf5config-bin:amd64
libkf5dbusaddons-bin:amd64
libkf5globalaccelprivate5:amd64
libkf5globalaccel-bin:amd64
libkf5iconthemes-bin:amd64
libkf5mailimporterakonadi5:amd64
libkf5parts-plugins:amd64
libkgantt2-l10n:all
libproxy-tools:amd64
libqt5sql5-mysql:amd64
libsignon-plugins-common1:amd64
libvlc-bin:amd64
libvoikko1:amd64
mariadb-common:all
mariadb-client-core-10.3:amd64
mariadb-server-core-10.3:amd64
mbox-importer:amd64
pim-data-exporter:amd64
pim-sieve-editor:amd64
qml-module-org-kde-purpose:amd64
qml-module-org-kde-runnermodel:amd64
signon-plugin-oauth2:amd64
sonnet-plugins:amd64
akonadi-backend-mysql:all
gnupg2:all
kaccounts-providers:amd64

–linki
https://linuxhint.com/see-dpkg-apt-history/
https://serverfault.com/questions/175504/how-do-i-get-the-history-of-apt-get-install-on-ubuntu