URL: https://linuxfr.org/forums/programmation-python/posts/script-de-configuration-de-miroir-des-depots Title: Script de configuration de miroir des dépots Authors: ted Date: 2016年03月06日T23:09:22+01:00 License: CC By-SA Tags: linux_mint Score: 0 Bonjour, J'ai monté un serveur miroir à plusieurs reprises, permettant de faire des mises à jour rapides lors d'install party. Cela nécessite la configuration d'un serveur DHCP, des connexions réseau, d'un point d'accès wifi, de la liste des dépôts à copier, des virtualhosts Apache, des redirections DNS, etc... J'ai [documenté tout ça](http://blog.lkiefer.org/index.php?article4/creer-un-miroir-des-depots-d-ubuntu) pour le refaire facilement, mais j'aimerai avoir un outil pour automatiser la configuration du miroir. À ma connaissance ça n'existe pas, alors je réfléchis à le faire moi même en python. Je suis un grand débutant en python, alors je vous soumet ici mes idées, pour avoir votre avis sur la question. L'interface principale serait accessible depuis un terminal, il faudra que j'essaie d'utiliser ncurses, pour proposer des menus déroulants avec des options à cocher (choix des dépots, interfaces, etc...). À partir des choix de l'utilisateur, l'interface générerait un fichier de configuration, à partir duquel un programme pourrait générer les fichiers de configuration de tous les programmes nécessaires. Je commencerai à programmer par là. Il faudra aussi maintenir une liste des dépots, je pense faire cela sous forme de base(s) sqlite. Pour Linux Mint par exemple, la base sqlite pourrait ressembler à: ``` Table: distributions Distribution | Version | Section \requis| depot | architecture | commentaires Linux Mint 17.3 Rosa | rosa | main \ 1 | packages.linuxmint.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | rosa | upstream \ 1 | packages.linuxmint.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | rosa | import | 1 | packages.linuxmint.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | rosa | main | 1 | extra.linuxmint.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty | main | 1 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty | restricted | 0 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty | universe | 1 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-updates | main | 1 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-updates | restricted | 1 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-updates | universe | 1 | archive.ubuntu.com/ubuntu | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-security | main | 1 | security.ubuntu.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-security | restricted | 0 | security.ubuntu.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-security | universe | 1 | security.ubuntu.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty-security | multiverse | 1 | security.ubuntu.com | deb-i386 deb-amd64 | Linux Mint 17.3 Rosa | trusty | partner | 1 | archive.canonical.com/ubuntu/ | deb-i386 deb-amd64 | ``` L'intérêt de l'automatisation serait aussi la possibilité de gérer tous les miroirs locaux des distributions (dépôts fr, de...), car à la main c'est infaisable. Il faudrait donc aussi gérer une table "miroirs". Voilà à peu près où j'en suis dans la réalisation (pas très loin...)

AltStyle によって変換されたページ (->オリジナル) /