Comment faire un mirroir apt offline?

Tags: #<Tag:0x00007fc6f51649a0>

Bonjour je cherche à faire un clef USB qui puisse être utilisée comme un serveur apt sur des machines off-line.

La documentation sur le net à ce sujet est assez trouble et complexe, je viens donc ici pour avoir quelques informations sur la procédure pour fabriquer une telle clef.

Jusque là j’ai réussi à le faire avec les sources CD officielle de debian (récupéré avec jigdo) puis bricolant mon fstab pour monter les disques et mon fichier sources.list pour qu’apt fasse le job depuis les disques. Jusque là pas de problème.

ça marche parfaitement (offline, puis retour online) mais il y a un inconvénient , debian ne fourni pas les packages backports en version CD et backports, comme j’ai pu le constater sous debian 12, c’est parfois très utile pour récupérer certains drivers pour du matériel pas toujours disponible, voir corriger le pipeline audio (voir le bordel que fut debian 12 sur le sujet,et la procédure officielle avec l’histoire des crack audio qui pouvais survenir, voir des latences ou des incompatibilités)

Breeeef, je me dis que même si debian 13 corrige à peu près tout ça, il serai prudent et interessant pour l’avenir de savoir enfin dupliquer un apt total ou partiel pour l’ensemble des sources (y compris les sources multimedia)

C’est donc ici que je demande votre aide.

D’après ce que j’ai vu, il existe plusieurs outils pour celà mais qui reste très difficile pour moi à utiliser :

  • aptly (qui semble le plus complet mais que je n’ai pas encore essayé)
  • debmirror (qui semble le plus simple mais sur lequel je me casse les dents actuellement, car je n’arrive pas à comprendre comment le configurer proprement)
  • reprepro (qui semble bien trop complexe pour mon usage)
  • ftpsync (la méthode officielle, conseillé par debian, mais qui semble être plus destiné à faire un serveur complet, pour faire un mirroir complet sur le web)

Quel outil me conseillez vous pour mon usage (sur une clef USB donc) sachant que je souhaite capturer backports et multimedia.

Merci infiniment !

Bonjour,
Personnellement, j’utilise apt-mirror, avec le script suivant:

~# cat apt_mirror.sh 
#!/bin/bash

# Vérifier que le répertoire distant du repository local est monté
if [ -z "`mount | grep -i 'diskstation/web'`" ]; then
	mount /media/diskstation/web
fi

/usr/bin/apt-mirror
sh /media/diskstation/web/miroirs/var/clean.sh

cd $HOME

Avec le fichier attenant (à mettre à jour pour trixie, je ne l’ai pas encore fait):

~# cat /etc/apt/mirror.list 
############# config ##################
#
set base_path    /media/diskstation/web/miroirs
#
set mirror_path  $base_path/mirror
set skel_path    $base_path/skel
set var_path     $base_path/var
set cleanscript  $var_path/clean.sh
set defaultarch  amd64
set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############

### amd64 Debian Bookworm
deb http://deb.debian.org/debian bookworm main non-free contrib non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-proposed-updates main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware

### i386 Debian bookworm
deb [arch=i386] http://deb.debian.org/debian bookworm main non-free contrib non-free-firmware
deb [arch=i386] http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb [arch=i386] http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb [arch=i386] http://deb.debian.org/debian bookworm-proposed-updates main contrib non-free non-free-firmware
deb [arch=i386] http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware

### Webmin
deb https://download.webmin.com/download/repository sarge contrib

### ElasticSearch
deb https://artifacts.elastic.co/packages/8.x/apt stable main

### Zabbix
deb [arch=amd64] https://repo.zabbix.com/zabbix/7.0/debian bookworm main
deb [arch=all] https://repo.zabbix.com/zabbix-tools/debian-ubuntu bookworm main
#deb-src [arch=amd64] https://repo.zabbix.com/zabbix/7.0/debian bookworm main
#
### VirtualBox
deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] https://download.virtualbox.org/virtualbox/debian bookworm contrib

### Clean all repositories
clean http://deb.debian.org/debian
clean http://security.debian.org
clean https://download.webmin.com
clean https://artifacts.elastic.co
clean https://repo.zabbix.com

J’utilise aussi des repositories non Debian.

2 J'aime

Super merci beaucoup Zargos, je vais essayer en adaptant !!
Je reviens vous dire ici comment ça c’est passé :wink:

1 J'aime