web-dev-qa-db-fra.com

Ecrire la liste des paquets installés via l'invocation manuelle d'apt-get dans un fichier

J'essaie d'installer une nouvelle version d'Ubuntu à partir de zéro, mais j'aimerais une liste des paquets que j'ai installés manuellement (par opposition à ceux installés en tant que dépendance ou fournis avec le système).

Je peux obtenir une approximation raisonnable sur Synaptic en ne regardant que mes packages Installed (manual), puis en ne regardant que ceux-ci et non pris en charge par Ubuntu (c'est-à-dire tous ces fichiers sans le symbole Ubuntu Unity à côté d’eux). Cependant, je n'arrive pas à faire en sorte que Synaptic exporte une liste de ces paquets.

Par conséquent, ma question est de savoir s'il est possible de générer une liste de packages qui ont été installés manuellement via la commande apt-get install?

Les éléments suivants ne fonctionnent pas :

Cette question a la même saveur que d’autres questions qui ont été posées à la fois sur les sites Stack Exchange et ailleurs (telles que Génération de la liste des packages installés manuellement et interrogation de packages individuels) , https: // serverfault .com/questions/133681/générer-une-liste-de-paquets-installés-dans-ubunt , et http://ubuntuforums.org/showthread.php?t=947865&page=2 =).

David Kalnischkies sur http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727799 donne une idée de la raison pour laquelle il est difficile de définir exactement ce que "l'installation manuelle" signifie (par exemple Est-ce que les programmes que vous avez exécutés avec quels paquets installés comptent comme "installés manuellement"?). J'ai donc spécifiquement limité cette question (contrairement aux autres que j'ai énumérées) aux seules invocations de apt-get install.

Éditer: Comment afficher une liste de paquets qui ont été installés manuellement sans leurs dépendances a une bonne idée d'utiliser les fichiers journaux d'apt-get pour le faire. Malheureusement, cela ne permet pas de savoir quels paquets ont été supprimés. Et même si je devais simplement grep 'apt-get purge' et que je prenais le diff des deux listes, je ne l’aurais pas obtenu. Cela ne représenterait toujours pas le cas Edge où j’ai installé un paquet, l’ai désinstallé, puis le réinstallé.

6
badcook

Puisqu'aucune réponse utilisant apt n'a été trouvée, je suggérerais d'entrer dans Gestionnaire de paquets Synaptic , cliquez sur le bouton d'état en bas. gauche, puis cliquez sur Installé (manuel) en haut à gauche pour voir une liste des packages installés.

List from Synaptic of installed packages

Vous pouvez ensuite sortir une liste de Synaptic avec File | Save Markings As et enregistrer le fichier dans lequel vous pourrez l’utiliser.

2
K7AAY

Je viens de poster cette pensée sur une page précédente à ce sujet, désolée si c'est impoli (n'hésitez pas à l'enlever si c'est le cas) mais

  1. allez chercher le fichier "manifeste" de votre version d'Ubuntu à l'adresse http://releases.ubuntu.com/ pour autant que je sache, il répertorie tous les paquets en cours d'installation.
  2. do apt-mark showmanual pour générer une liste de tous les paquets qu'apt-mark considère avoir été installés manuellement.
  3. éliminer les doublons entre cette liste et le manifeste, en laissant les paquets dans la sortie de apt-mark showmanual qui ne faisaient pas partie de l'installation en stock.

Ceci est probablement brut et ne traite pas des subtilités de ce qui constitue exactement un paquet "installé manuellement", mais pour moi, cela semble être une assez bonne approximation. Ou peut-être que la solution Synaptic est la meilleure.

0
sam