326 votes

Comment puis-je obtenir une liste de tous les dépôts et PPA à partir de la ligne de commande dans un script d'installation?

Je sais comment listez tous les packages installés sur mon système.

Mais comment pourrais-je obtenir une liste de tous les dépôts et PPA dans un script que je pourrais exécuter sur une nouvelle machine pour reproduire la configuration du dépôt, y compris les clés?

Je sais que je peux regarder dans /etc/apt/sources.list et /etc/apt/sources.list.d, mais je cherche un moyen de générer un script qui exécute toutes les commandes apt-add-repository sur un nouveau système (qui trie l'obtention de toutes les clés).

Des idées?

4voto

Eliah Kagan Points 111731

J'utilise cette commande pour lister toutes les sources de logiciels configurées (dépôts), y compris celles actuellement désactivées :

cat /etc/apt/sources.list; for X in /etc/apt/sources.list.d/*; do echo; echo; echo "** $X:"; echo; cat $X; done

Je l'utilise principalement pour le dépannage; cela peut certainement être incorporé dans des scripts mais vous voudrez peut-être limiter /etc/apt/sources.list.d/* à /etc/apt/sources.list.d/*.list pour n'obtenir que les sources de logiciels actuellement activées.

3voto

NO WAR WITH RUSSIA Points 7300

Alors, en faisant quelques recherches, nous avons AptPkg::Class.

Donc en utilisant perl, nous pouvons faire quelque chose de simple comme ceci..

perl -MAptPkg::Cache -MData::Dumper -E'say Dumper [AptPkg::Cache->new->files()]' | less

Cela nous donne une liste de tous les paquets AptPkg::Class::PkgFile. Vous pourriez probablement générer les commandes apt-add-repository avec cela.

3voto

blade19899 Points 25776

Voici une ligne de commande :

find /etc/apt/sources.list* -type f -iname "*.list" -exec grep -viE '(^#|^$)' {} \; -print | column -tx
deb                                 http://archive.ubuntu.com/ubuntu    bionic            principal    restreint
deb                                 http://archive.ubuntu.com/ubuntu    bionic-mises-a-jour principal    restreint
deb                                 http://archive.ubuntu.com/ubuntu    bionic            univers
deb                                 http://archive.ubuntu.com/ubuntu    bionic-mises-a-jour univers
deb                                 http://archive.ubuntu.com/ubuntu    bionic            multivers
deb                                 http://archive.ubuntu.com/ubuntu    bionic-mises-a-jour multivers
deb                                 http://archive.ubuntu.com/ubuntu    bionic-backports  principal    restreint  univers  multivers
deb                                 http://security.ubuntu.com/ubuntu   bionic-securite   principal    restreint
deb                                 http://security.ubuntu.com/ubuntu   bionic-securite   univers
deb                                 http://security.ubuntu.com/ubuntu   bionic-securite   multivers
/etc/apt/sources.list
deb                                 https://nginx.org/packages/ubuntu/  bionic            nginx
deb-src                             https://nginx.org/packages/ubuntu/  bionic            nginx
/etc/apt/sources.list.d/nginx.list

3voto

smac89 Points 723

En utilisant add-apt-repository depuis software-properties-common, c'est aussi simple que :

add-apt-repository --list

La sortie peut facilement être fournie de nouveau à la commande add-apt-repository pour recréer les sources.

Cependant, cela ne liste que les sources deb. Si vous êtes également intéressé par les ppa, alors les autres réponses sur cette question seront plus utiles.

Disponibilité

Il semblerait que l'option --list n'était disponible que depuis la version 0.99.0+ de software-properties-common, qui est disponible par défaut à partir d'Ubuntu 20.10 (Groovy). Vous devrez donc soit mettre à jour votre version du logiciel, soit mettre à niveau votre distribution vers au moins 20.10.

2voto

Richard W. Seitz Points 286

https://repogen.simplylinux.ch/ vous donnera une liste de tous les PPA pour votre version d'Ubuntu. Voici une liste générée sans fichiers sources et sans le ppa de l'imprimante samsung:

#------------------------------------------------------------------------------#
#                            DÉPÔTS OFFICIELS D'UBUNTU                          #
#------------------------------------------------------------------------------#

###### Dépôts principaux d'Ubuntu
deb http://us.archive.ubuntu.com/ubuntu/ yakkety main restricted universe multiverse 

###### Dépôts de mises à jour d'Ubuntu
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-security main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-updates main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-proposed main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-backports main restricted universe multiverse 

###### Dépôt partenaire d'Ubuntu
deb http://archive.canonical.com/ubuntu yakkety partner

#------------------------------------------------------------------------------#
#                           DÉPÔTS NON OFFICIELS D'UBUNTU                       #
#------------------------------------------------------------------------------#

###### Dépôts binaires de 3ème partie

#### PPA Flacon - http://kde-apps.org/content/show.php?content=113388
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F2A61FE5
deb http://ppa.launchpad.net/flacon/ppa/ubuntu yakkety main

#### PPA Gimp - https://launchpad.net/~otto-kesselgulasch/+archive/gimp
## Exécutez cette commande: sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 614C4B38
deb http://ppa.launchpad.net/otto-kesselgulasch/gimp/ubuntu yakkety main

#### Navigateur Google Chrome - http://www.google.com/linuxrepositories/
## Exécutez cette commande: wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

#### Google Earth - http://www.google.com/linuxrepositories/
## Exécutez cette commande: wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
deb [arch=amd64] http://dl.google.com/linux/earth/deb/ stable main

#### PPA Highly Explosive - https://launchpad.net/~dhor/+archive/myway
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93330B78
deb http://ppa.launchpad.net/dhor/myway/ubuntu yakkety main

#### PPA JDownloader - https://launchpad.net/~jd-team
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6A68F637
deb http://ppa.launchpad.net/jd-team/jdownloader/ubuntu yakkety main

#### Lazarus - http://www.lazarus.freepascal.org/
## Exécutez cette commande:  gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 6A11800F  && gpg --export --armor 0F7992B0  | sudo apt-key add -
deb http://www.hu.freepascal.org/lazarus/ lazarus-stable universe

#### PPA LibreOffice - http://www.documentfoundation.org/download/
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1378B444
deb http://ppa.launchpad.net/libreoffice/ppa/ubuntu yakkety main

#### Client MEGA Sync - https://mega.co.nz/
deb http://mega.nz/linux/MEGAsync/xUbuntu_16.10/ ./

#### MKVToolnix - http://www.bunkus.org/videotools/mkvtoolnix/
## Exécutez cette commande: wget -q http://www.bunkus.org/gpg-pub-moritzbunkus.txt -O- | sudo apt-key add -
deb http://www.bunkus.org/ubuntu/yakkety/ ./

#### PPA de l'équipe de développement quotidien Mozilla - http://edge.launchpad.net/~ubuntu-mozilla-daily/+archive/ppa
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys  247510BE
deb http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu yakkety main

#### muCommander - http://www.mucommander.com/
## Exécutez cette commande: sudo wget -O - http://apt.mucommander.com/apt.key | sudo apt-key add - 
deb http://apt.mucommander.com stable main non-free contrib

#### Opera - http://www.opera.com/
## Exécutez cette commande: sudo wget -O - http://deb.opera.com/archive.key | sudo apt-key add -
deb http://deb.opera.com/opera/ stable non-free

#### PPA Oracle Java (JDK) Installer - http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
deb http://ppa.launchpad.net/webupd8team/java/ubuntu yakkety main

#### PlayDeb - http://www.playdeb.net/
## Exécutez cette commande: wget -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
deb http://archive.getdeb.net/ubuntu yakkety-getdeb games

#### PPA SABnzbd - http://sabnzbd.org/
## Exécutez cette commande:  sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4BB9F05F
deb http://ppa.launchpad.net/jcfp/ppa/ubuntu yakkety main

#### PPA de SimpleScreenRecorder - http://www.maartenbaert.be/simplescreenrecorder/
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 283EC8CD
deb http://ppa.launchpad.net/maarten-baert/simplescreenrecorder/ubuntu yakkety main

#### Steam pour Linux - http://store.steampowered.com/about/
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F24AEA9FB05498B7
deb [arch=i386] http://repo.steampowered.com/steam/ precise steam

#### Syncthing - https://syncthing.net/
## Exécutez cette commande: curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
deb http://apt.syncthing.net/ syncthing release

#### Tor: anonymat en ligne - https://www.torproject.org
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 886DDD89
deb http://deb.torproject.org/torproject.org yakkety main

#### PPA Unsettings - http://www.florian-diesch.de/software/unsettings/
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0FEB6DD9
deb http://ppa.launchpad.net/diesch/testing/ubuntu yakkety main

#### VirtualBox - http://www.virtualbox.org
## Exécutez cette commande: wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox_2016.asc -O- | sudo apt-key add -
deb http://download.virtualbox.org/virtualbox/debian yakkety contrib

#### Webmin - http://www.webmin.com
## Exécutez cette commande: wget http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -
deb http://download.webmin.com/download/repository sarge contrib

#### PPA WebUpd8 - http://www.webupd8.org/
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4C9D234C
deb http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu yakkety main

#### PPA Xorg Edgers - https://launchpad.net/~xorg-edgers
## Exécutez cette commande: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8844C542  
deb http://ppa.launchpad.net/xorg-edgers/ppa/ubuntu yakkety main
voici une liste générée sans fichiers sources et sans le ppa de l'imprimante samsung
#### Yuuguu - http://yuuguu.com
deb http://update.yuuguu.com/repositories/apt hardy multiverse

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X