Wie liste ich das installierte Paket und seine Details auf Ubuntu auf?
27
Ich bin neu in Ubuntu und versuche herauszufinden, wie man alle installierten Pakete und deren Details wie Version, Release, Installationszeit, Kategorie auf Ubuntu auflistet. Es wurde festgestellt, dass die folgenden Befehle mir beim Abrufen einiger dieser Informationen helfen:
Wenn Sie die Beschreibung einiger spezifischer Pakete erhalten möchten, sagen Sie firefox:
sudo dpkg -l | grep firefox
Hier ist meine Ausgabe von:
$ sudo dpkg -l | more
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-===========================================-=======================================-==============================================================
================
ii accountsservice 0.6.15-2ubuntu9.4 query and manipulate user account information
ii acl 2.2.51-5ubuntu1 Access control list utilities
ii acpi-support 0.140 scripts for handling many ACPI events
ii acpid 1:2.0.10-1ubuntu3 Advanced Configuration and Power Interface event daemon
ii activity-log-manager-common 0.9.4-0ubuntu3.2 blacklist configuration for Zeitgeist (assets)
ii activity-log-manager-control-center 0.9.4-0ubuntu3.2 blacklist configuration for Zeitgeist (control center integrat
ion)
ii adduser 3.113ubuntu2 add and remove users and groups
ii adium-theme-ubuntu 0.3.2-0ubuntu1 Adium message style for Ubuntu
ii aisleriot 1:3.2.3.2-0ubuntu1 Solitaire card games
ii akonadi-backend-mysql 1.7.2-0ubuntu1 MySQL storage backend for Akonadi
ii akonadi-server 1.7.2-0ubuntu1 Akonadi PIM storage service
ii alacarte 0.13.2-2ubuntu4 easy GNOME menu editing tool
ii alsa-base 1.0.25+dfsg-0ubuntu1 ALSA driver configuration files
ii alsa-utils 1.0.25-1ubuntu5 Utilities for configuring and using ALSA
ii anacron 2.3-14ubuntu1 cron-like program that doesn't go by time
ii apg 2.2.3.dfsg.1-2 Automated Password Generator - Standalone version
ii app-install-data 0.12.04.4 Ubuntu applications (data files)
ii app-install-data-partner 12.12.04.1 Application Installer (data files for partner applications/rep
ositories)
ii apparmor 2.7.102-0ubuntu3.7 User-space parser utility for AppArmor
ii appmenu-gtk 0.3.92-0ubuntu1.1 Export GTK menus over DBus
ii appmenu-gtk3 0.3.92-0ubuntu1.1 Export GTK menus over DBus
ii appmenu-qt 0.2.6-0ubuntu1 appmenu support for Qt
ii apport 2.0.1-0ubuntu17.1 automatically generate crash reports for debugging
ii apport-gtk 2.0.1-0ubuntu17.1 GTK+ frontend for the apport crash report system
ii apport-symptoms 0.16.1 symptom scripts for apport
ii apt 0.8.16~exp12ubuntu10.7 commandline package manager
ii apt-transport-https 0.8.16~exp12ubuntu10.7 https download transport for APT
ii apt-utils 0.8.16~exp12ubuntu10.7 package managment related utility programs
--More--
Um das Datum und die Uhrzeit der zu installierenden Pakete abzurufen
Ich hatte diese beiden Möglichkeiten gesehen, war mir aber nicht sicher, ob dies die konsistenten Möglichkeiten für alle Ubuntu-Versionen sind. Ein weiteres Problem bestand darin, dass apt-cache nur unter bestimmten Bedingungen meldet (z. B. wenn die Zwischenspeicherung aktiviert ist). Kann ich mich auf diese Befehle verlassen, um die Details zu erfahren?
User1787572
Es scheint, dass der apt-Cache gelöscht werden kann und dieser Befehl nicht alle Informationen zurückgibt. Korrigiere mich, wenn ich falsch liege. Hilft mir dpkg --print-avail <Paketname>, die gleichen Details zu erhalten, wenn der apt-Cache gelöscht wird?
user1787572
@ user224730: Ich weiß nicht, wie Sie löschen werden apt-cache, aber ja, Sie haben Recht. dpkg --print-availwird den gleichen Job machen, wenn Sie die ausreichenden Informationen erhalten möchten. Beachten Sie, dass der sudo apt-cache showBefehl immer einige zusätzliche Informationen enthält. Sie können dies überprüfen, indem Sie die Ausgabe dieser beiden Befehle vergleichen. 1. sudo apt-cache show firefox | wcund 2. sudo dpkg --print-avail firefox | wcSie werden feststellen, dass der erste Befehl mehr Zeilen, Wörter und Zeichen als der zweite zurückgibt . Antworten Sie, wenn Sie noch einige Zweifel haben ..
Saurav Kumar
apt-get clean ist der Befehl, über den ich erfahren habe, wie der Cache gelöscht wird. Ich habe beide von Ihnen erwähnten Befehle auf meinem System ausgeführt und festgestellt, dass apt-cache firefox | anzeigt wc hat mir einen Datensatz zurückgegeben, jedoch dpkg --print-avail | wc nicht. Ich habe mit dpkg -l | überprüft, ob Firefox auf meinem System installiert ist grep firefox und ich habe nichts. Ich habe die gleichen Befehle für das auf dem System installierte Paket ausgeführt und festgestellt, dass der Befehl apt-cache show auch die Informationen über den neuesten Patch ausgibt, der für dieses Paket verfügbar ist. Das heißt, das Paket ist der Kandidat für ein Update.
user1787572
Nun, das bringt mich zu der Entscheidung, dass dpkg --print-avail der gesuchte Befehl ist, der mir die tatsächlichen Informationen über die auf dem System installierte Paketebene liefert.
user1787572
5
apt-cache showpkg <package> gibt Ihnen Details darüber, welche Paketversionen verfügbar sind, Vorwärts- und Rückwärtsabhängigkeiten usw.
apt-cache show <package> Beschreibung, Kategorie (Abschnitt) usw.
Mir ist nicht bekannt, wann ein Paket installiert wurde.
öffne den Texteditor und füge folgendes mit anyname.sh ein und mache es ausführbar mit
chmod +x anyname.sh
Code:
#!/bin/bash
#pkginstalls.sh
#creates text file with a list of all packages installed by date
#first append all info from archived logs
i=2
mycount=$(ls -l /var/log/dpkg.log.*.gz | wc -l)
nlogs=$(( $mycount + 1 ))
while [ $i -le $nlogs ]
do
if [ -e /var/log/dpkg.log.$i.gz ]; then
zcat /var/log/dpkg.log.$i.gz | grep "\ install\ " >> $HOME/pkgtmp.txt
fi
i=$(( $i+1 ))
done
#next append all info from unarchived logs
i=1
nulogs=$(ls -l /var/log/dpkg.log.* | wc -l)
nulogs=$(( $nulogs - $nlogs + 1 ))
while [ $i -le $nulogs ]
do
if [ -e /var/log/dpkg.log.$i ]; then
cat /var/log/dpkg.log.$i | grep "\ install\ " >> $HOME/pkgtmp.txt
fi
i=$(( $i+1 ))
done
#next append current log
cat /var/log/dpkg.log | grep "\ install\ " >> $HOME/pkgtmp.txt
#sort text file by date
sort -n $HOME/pkgtmp.txt > $HOME/pkginstalls.txt
rm $HOME/pkgtmp.txt
exit 0
Danke für die Antwort. Das Skript muss geändert werden, um einige Details wie Kategorie zu erhalten.
user1787572
1
Mit apt
Sie können die installierten Pakete auch auflisten mit:
apt list --installed
Ihre manuell installierten Pakete werden angezeigt mit:
apt list --manual-installed
und alle Versionen mit:
apt list --all-versions
Dies sind sehr nützliche Befehle. Wenn Sie beispielsweise lokal installierte Pakete auf einem anderen Computer installieren möchten, müssen Sie dies nur tun
apt-cache
, aber ja, Sie haben Recht.dpkg --print-avail
wird den gleichen Job machen, wenn Sie die ausreichenden Informationen erhalten möchten. Beachten Sie, dass dersudo apt-cache show
Befehl immer einige zusätzliche Informationen enthält. Sie können dies überprüfen, indem Sie die Ausgabe dieser beiden Befehle vergleichen. 1.sudo apt-cache show firefox | wc
und 2.sudo dpkg --print-avail firefox | wc
Sie werden feststellen, dass der erste Befehl mehr Zeilen, Wörter und Zeichen als der zweite zurückgibt . Antworten Sie, wenn Sie noch einige Zweifel haben ..apt-cache showpkg <package>
gibt Ihnen Details darüber, welche Paketversionen verfügbar sind, Vorwärts- und Rückwärtsabhängigkeiten usw.apt-cache show <package>
Beschreibung, Kategorie (Abschnitt) usw.Mir ist nicht bekannt, wann ein Paket installiert wurde.
quelle
Hier sind die einfachen Schritte:
Kopieren Sie das folgende Skript, fügen Sie es in eine Datei ein und speichern Sie es mit einem beliebigen Namen
pkgdetails
.Machen Sie die Datei ausführbar und kopieren Sie sie nach
/bin
, um sie als Befehl zu verwenden.Verwenden Sie nun den
pkgdetails
Befehl, um die Installationsdetails und den Abschnitt der Pakete abzurufen:Hier ist meine Ausgabe:
quelle
öffne den Texteditor und füge folgendes mit anyname.sh ein und mache es ausführbar mit
Code:
Kredit geht an Ubuntu Community
quelle
Mit apt
Sie können die installierten Pakete auch auflisten mit:
Ihre manuell installierten Pakete werden angezeigt mit:
und alle Versionen mit:
Dies sind sehr nützliche Befehle. Wenn Sie beispielsweise lokal installierte Pakete auf einem anderen Computer installieren möchten, müssen Sie dies nur tun
oder wenn Sie nur Ihre manuell installierten Pakete wollen
Jetzt können alle apt-Pakete auf einem anderen oder neu installierten Ubuntu-System installiert werden.
detaillierte Beschreibung
Wenn Sie wissen wollen , genau wann , was und welche Pakete entfernt wurden , müssen Sie schauen Sie in Ihrem
Verzeichnis. Suche in den
history.log
Dateien; Verwenden Sie sed , awk , grep oder einfach Ihren Texteditor, um Ihre Verlaufsdateien zu durchsuchen.quelle
Sie müssen diese Website aussehen https://help.ubuntu.com/community/AptGet/Howto Sie hier sehen , in,
quelle
Ich habe eine teilweise Antwort (und nicht genügend Wiederholungspunkte, um dies zu kommentieren) - das Installationsprotokoll ist hier:
Da Sie ein bisschen mehr Erfahrung mit der Befehlszeile haben als ich, können Sie versuchen, das Skript hier zu ändern, um es zu analysieren:
http://lists.debian.org/debian-user/2002/08/msg01219.html
quelle