Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 16-04-2015 13:11:45

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

[wiki] - Script bash - Lister les paquets installés et leur provenance

Création de la page retour pour la page wiki http://debian-facile.org/doc:programmat … debsources

Mise en conformité de l'en-tête

edit paskal : ancien titre : [wiki] - Script bash - Identifier le dépôt auquel appartient un paquet

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#2 30-05-2015 19:37:51

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Un peu de couleur dans le script

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#3 30-05-2015 19:44:56

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

cool

J'aurais cependant envisagé "file bash" car c'est un script en bash.  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#4 30-05-2015 19:46:08

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

tu vois.... alors je touche plus

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#5 30-05-2015 19:50:28

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

mais si, mais si ...  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#6 30-05-2015 19:51:14

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Mais non , mais non... tongue

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#7 30-05-2015 19:52:21

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

J'ai modifié.
Ce que tu indiques derrière "file", c'est le langage utilisé dans le fichier, ce n'est pas forcément python.  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#8 30-05-2015 19:56:43

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

C'est bien pour ça que je n'y touche plus....

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#9 30-05-2015 19:59:39

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Mais c'est indiqué en première ligne du script.  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#10 30-05-2015 20:52:59

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Disons que je ne modifierai que ceux dont je suis sûre et certaine.
Je ne toucherais pas aux autres.....  ils resteront au 20ème siècle tongue

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#11 30-05-2015 21:12:46

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

big_smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#12 30-05-2015 21:13:39

milou
Modo ... e
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

wink

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#13 24-10-2015 23:39:47

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Bonsoir,

je viens d'essayer le script pour la première fois. J'ai bien un fichier Deblist dans le répertoire /var/cache/ qui contient l'ensemble des paquets et leur dépôt. smile

Par contre à la fin du processus j'ai le message d'erreur suivant :

root@monpc:/home/moi/Documents/MesScripts#

./Deblist -u
 


sed : option invalide -- '1'
Utilisation: sed [OPTION]... {script-seulement-si-pas-d'autre-script}
[fichier-d'entrée]...

  -n, --quiet, --silent
                 supprimer l'écriture automatique de l'espace des motifs
  -e script, --expression=script
                 ajouter le script aux commandes à être exécutées
  -f fichier-script, --file=fichier-script
                 ajouter le contenu de fichier-script aux commandes
                 à être exécutées
  --follow-symlinks
                 suivre les liens symboliques pendant le traitement
  -i[SUFFIX], --in-place[=SUFFIX]
                 edit files in place (makes backup if SUFFIX supplied)
  -l N, --line-length=N
                spécifier la longueur de coupure de ligne désirée pour la
                commande `l'
  --posix
                désactiver toutes les extensions GNU.
  -r, --regexp-extended
                 utiliser la syntaxe des expressions régulières
                 étendues dans le script.
  -s, --separate
                considérer les fichiers comme séparés plutôt que comme un
                simple flux long et continu.
  -u, --unbuffered
                 charger des quantités minimales de données depuis les
                 fichiers d'entrée et libérer les tampons de sortie plus
                 souvent
  -z, --null-data
                 separate lines by NUL characters
      --help     afficher cette aide et sortir
      --version  afficher les informations de version du logiciel et sortir

Si aucune option -e, --expression, -f ou --file n'est donnée, le
premier argument qui n'est pas une option sera pris comme étant le script
sed à interpréter. Tous les arguments restants sont les noms des fichiers
d'entrée; si aucun fichier d'entrée n'est spécifiée, l'entrée standard
est lue.
Page de GNU sed: <http://www.gnu.org/software/sed/>.
Aide générale pour utiliser les logiciels GNU: <http://www.gnu.org/help/gethelp.fr.html>.
 



Une idée? hmm

Hors ligne

#14 25-10-2015 04:35:21

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Bonjour,

Je pense que tu as dû retaper le script au lieu de le télécharger et qu'une coquille s'y est glissée : un l pour un i ou autre chose ...
Pour télécharger ce script, il te suffit de cliquer sur l'onglet où est écrit script Debsourcessmile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#15 25-10-2015 05:18:02

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Test ... puis changement de titre ... puis commentaire.  tongue

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#16 25-10-2015 19:39:33

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Bonjour,

Merci pour la réponse. smile


Avant j'avais fait un copier coller du script directement dans Gedit puis l'avais enregistré.


J'ai suivi ta méthode, j'ai "cliqué" et enregistré le lien "srcript_Debsources". La différence entre les deux fichiers est que le "copier coller" a ajouté une indentation au début de chaque ligne.


J'ai lancé le nouveau script, même message d'erreur sur "sed". J'ai vérifié minutieusement la syntaxe et n'ai trouvé aucune anomalie.


Du coup j'ai volontairement ajouté une erreur de syntaxe à la commande "sed" (c'est osé, je sais)  et lancé le script qui m'a joyeusement écrit une ligne d'erreur par itération

sed: -e expression n°1, caractère 2: commande inconnue: `/'


plus le même message d'erreur isolé  75 lignes avant la fin du processus.


A la lecture du fichier Deblist j'ai trouvé à la 75eme avant dernière ligne la paquet "wine" qui n'est pas installé mais qui figure étrangement dans la liste.

Ci-dessous un extrait du fichier Deblist (après lancement du script d'origine).


whois: http://ftp.fr.debian.org/debian/ jessie/main amd64 Packages
wine:
wine32: http://ftp.fr.debian.org/debian/ jessie/main i386 Packages
wine64: http://ftp.fr.debian.org/debian/ jessie/main amd64 Packages




Etrange non?

Hors ligne

#17 25-10-2015 20:43:04

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Oui, plutôt. As-tu vérifié si il n'y a pas de bizarrerie dans :

apt-cache policy wine wine32 wine64

et

dpkg -l | grep ^wine


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#18 25-10-2015 22:29:16

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

apt-cache policy wine wine32 wine64


wine:
  Installé : (aucun)
  Candidat : 1.6.2-20
 Table de version :
     1.6.2-20 0
        500 http://ftp.fr.debian.org/debian/ jessie/main amd64 Packages
wine32:i386:
  Installé : 1.6.2-20
  Candidat : 1.6.2-20
 Table de version :
 *** 1.6.2-20 0
        500 http://ftp.fr.debian.org/debian/ jessie/main i386 Packages
        100 /var/lib/dpkg/status
wine64:
  Installé : 1.6.2-20
  Candidat : 1.6.2-20
 Table de version :
 *** 1.6.2-20 0
        500 http://ftp.fr.debian.org/debian/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status



dpkg -l | grep ^wine


Pas de réponse.

Par curiosité j'ai fait

dpkg -l | grep wine


ii  libwine:amd64                                               1.6.2-20                             amd64        Windows API implementation - library
ii  libwine:i386                                                1.6.2-20                             i386         Windows API implementation - library
ii  libwine-gecko-2.21                                          2.21+dfsg2-1                         all          Windows API implementation - web browser module
ii  wine                                                        1.6.2-20                             i386         Windows API implementation - standard suite
ii  wine32                                                      1.6.2-20                             i386         Windows API implementation - 32-bit binary loader
ii  wine64                                                      1.6.2-20                             amd64        Windows API implementation - 64-bit binary loader
 


La ligne du paquet  wine commence par "ii" comme les autres. C'est fou je commence à comprendre les subtilités du script.
Mais au fait que signifie "ii"?

Hors ligne

#19 25-10-2015 22:34:36

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Philou92 a écrit :

Mais au fait que signifie "ii"?

le premier "i" : à installer ; le second : installé


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#20 25-10-2015 22:47:46

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Je pense que ce qui pose problème à sed, c'est la ligne :

wine:


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#21 25-10-2015 22:50:45

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Merci.

C'est vraiment étrange. C'est installé et pas installé à la fois. Debian pratique la logique floue tongue

Je serais tenté d'installer le paquet wine pour résoudre le problème. Est-ce une bonne idée?

Hors ligne

#22 25-10-2015 23:07:14

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Pas la peine : d'après apt-cache,  wine est effectivement installé. Le premier i, c'est le souhait et le second i, c'est l'état.
Le problème n'est pas dans ton système mais dans le script.  tongue

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#23 26-10-2015 00:23:48

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Ok, je laisse comme ça.
Maintenant "Synaptic"  fait le même étrange diagnostic.
Pour lui dans les propriétés onglet "général" wine n'est pas installé alors que l'onglet "Fichiers installés" est renseigné. Ce qui est contradictoire.


Coté script, j'ai un peu de mal à voir où ça coince. Ce que j'ai compris on cherche l'ensemble des paquets installés avec dpkg, puis on cherche les infos de provenance dans apt-cache policy. On met le tout dans un fichier temporaire. Par contre j'ai du mal à saisir la ligne suivante, surtout la commande grep.

let j=`cat -n $temp_file | grep 100\ \/var\/lib\/dpkg\/status | awk '{print $1}'`-1;

Hors ligne

#24 26-10-2015 00:29:26

nIQnutn
Modérateur
Lieu : Lyon
Distrib. : Jessie
Noyau : Linux 3.16-amd64
(G)UI : XFCE
Inscription : 16-03-2012
Site Web

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

Hors ligne

#25 26-10-2015 23:59:02

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian Jessie 8.6
Noyau : Linux 3.16.0-4-amd64
(G)UI : Gnome 3.14
Inscription : 29-04-2015

Re : [wiki] - Script bash - Lister les paquets installés et leur provenance

J'ai pigé la fonction de commande du script. En fait comme je me concentrais sur le apt-cache policy du paquet wine je ne comprenais pas l'utilité de la commande grep, et pour cause puisque le motif "100 /var/lib/dpkg/status" y est absent. C'est balot big_smile.


Du coup j'ai retravaillé toutes les commandes à la mano pour comprendre la mécanique qui cherche à trouver le fameux motif, son numéro de ligne et lui retirer 1 pour prendre en compte la ligne du dessus.
N'aurait-il pas été plus simple de chercher directement les informations de sources directement sur  la ligne 6 puisque apparemment (à vérifier) c'est toujours la même (500  xxxxx) ?


Sinon j'ai installé wine sur une autre debian (sous virtualbox), et là pas de problème la 7eme ligne du résultat de apt-cache policy donne bien le motif "100 /var/lib/dpkg/status".


Donc il y a bien une anomalie dans l'information du cache de wine sur mon pc. Le script n'est pas en cause, mis à part peut-être que l'erreur qui en découle ne donne pas clairement de quel paquet il s'agit.

Hors ligne

Pied de page des forums