La méthode peut être utilisé pour récupérer des fichiers d’une iso disponible sur Internet lorsqu’on a une faible bande passante et qu’on ne veut pas charger tout le CD ou DVD. Par exemple, on voudrait un paquet du DVD2 de la squeeze (microcode.ctl_1.17-13_i386.deb). Et on ne l’a pas trouvé sur le dépot. Ce DVD a comme adresse cdimage.debian.org/debian-cd/6.0 … -DVD-2.iso
Bon, on charge le début de DVD de manière à avoir le fichier dans le morceau de répertoire chargé:
[code]francois@totoche:/tmp/demo$ curl -L -r 0-2000000 http://cdimage.debian.org/debian-cd/6.0.1ai386/iso-dvd/debian-6.0.1a-i386-DVD-2.iso > tt.iso
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1953k 100 1953k 0 0 652k 0 0:00:02 0:00:02 --:–:-- 844k
francois@totoche:/tmp/demo$ isoinfo -l -R -i tt.iso | grep micro
lr-xr-xr-x 1 0 0 0 Mar 22 2011 [ 4316 00] microcode.ctl_1.17-13_i386.deb -> …/pool/contrib/m/microcode.ctl/microcode.ctl_1.17-13_i386.deb
dr-xr-xr-x 1 0 0 2048 Mar 22 2011 [ 50 02] microcode.ctl
isoinfo: Short read on old image
[damned: RATÉ]
francois@totoche:/tmp/demo$ curl -L -r 0-4000000 http://cdimage.debian.org/debian-cd/6.0.1a/i386/iso-dvd/debian-6.0.1a-i386-DVD-2.iso > tt.iso
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3906k 100 3906k 0 0 844k 0 0:00:04 0:00:04 --:–:-- 901k
francois@totoche:/tmp/demo$ isoinfo -l -R -i tt.iso | grep microlr-xr-xr-x 1 0 0 0 Mar 22 2011 [ 4316 00] microcode.ctl_1.17-13_i386.deb -> …/pool/contrib/m/microcode.ctl/microcode.ctl_1.17-13_i386.deb
dr-xr-xr-x 1 0 0 2048 Mar 22 2011 [ 50 02] microcode.ctl
dr-xr-xr-x 1 0 0 2048 Mar 22 2011 [ 1094 02] libmicrohttpd
isoinfo: Short read on old image
[damned: encore RATÉ]
[/code]
Jusqu’à présent c’est décevant mais on chargeant 8M:
francois@totoche:/tmp/demo$ curl -L -r 0-8000000 http://cdimage.debian.org/debian-cd/6.0.1a/i386/iso-dvd/debian-6.0.1a-i386-DVD-2.iso > tt.iso
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7812k 100 7812k 0 0 591k 0 0:00:13 0:00:13 --:--:-- 747k
francois@totoche:/tmp/demo$ isoinfo -l -R -i tt.iso | grep microlr-xr-xr-x 1 0 0 0 Mar 22 2011 [ 4316 00] microcode.ctl_1.17-13_i386.deb -> ../pool/contrib/m/microcode.ctl/microcode.ctl_1.17-13_i386.deb
dr-xr-xr-x 1 0 0 2048 Mar 22 2011 [ 50 02] microcode.ctl
dr-xr-xr-x 1 0 0 2048 Mar 22 2011 [ 1094 02] libmicrohttpd
Directory listing of /pool/contrib/m/microcode.ctl/
-r--r--r-- 1 0 0 23230 Mar 22 2011 [1066829 00] microcode.ctl_1.17-13_i386.deb
Directory listing of /pool/main/libm/libmicrohttpd/
-r--r--r-- 1 0 0 29280 Mar 22 2011 [1149407 00] libmicrohttpd5_0.4.6-1_i386.deb
-r--r--r-- 1 0 0 369694 Mar 22 2011 [1450474 00] libmono-microsoft-build2.0-cil_2.6.7-5_all.deb
-r--r--r-- 1 0 0 166514 Mar 22 2011 [1450655 00] libmono-microsoft7.0-cil_2.6.7-5_all.deb
-r--r--r-- 1 0 0 166642 Mar 22 2011 [1423592 00] libmono-microsoft8.0-cil_2.6.7-5_all.deb
francois@totoche:/tmp/demo$
La commande est
$ curl -L -r 0-[taillechargée] URLdel’ISO > tempo.iso
$ isoinfo -l -R -i tempo.iso
et on cherche dans la sortie le nom du fichier.
Pour les CDs, 256K suffisent largement, sur le DVD, ici il a fallu pousser à 8M.
Bon on a enfin la ligne de microcode.ctl_1.17-13_i386.deb:
[quote]-r–r--r-- 1 0 0 23230 Mar 22 2011 [1066829 00] microcode.ctl_1.17-13_i386.deb[/quote]L’offset est de 2048*1066829 soit 2184865792 et la taille de 23230, le paquet est donc composé des octets de 2184865792 à 2184889021 qui vaut 2184865792+23230-1
La commande $ curl -L -r 2184865792-2184889021 http://cdimage.debian.org/debian-cd/6.0.1a/i386/iso-dvd/debian-6.0.1a-i386-DVD-2.iso > microcode.ctl_1.17-13_i386.deb
récvupère le paquet.
francois@totoche:/tmp/demo$ dpkg-deb -c microcode.ctl_1.17-13_i386.deb
drwxr-xr-x root/root 0 2009-10-07 08:38 ./
drwxr-xr-x root/root 0 2009-10-07 08:38 ./etc/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./etc/init.d/
-rwxr-xr-x root/root 2181 2009-10-07 08:38 ./etc/init.d/microcode.ctl
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/man/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/man/man8/
-rw-r--r-- root/root 468 2009-10-07 08:38 ./usr/share/man/man8/update-intel-microcode.8.gz
-rw-r--r-- root/root 1171 2009-10-07 08:38 ./usr/share/man/man8/microcode_ctl.8.gz
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/doc/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/doc/microcode.ctl/
-rw-r--r-- root/root 5147 2009-10-07 08:38 ./usr/share/doc/microcode.ctl/changelog.Debian.gz
-rw-r--r-- root/root 812 2009-10-07 08:38 ./usr/share/doc/microcode.ctl/copyright
-rw-r--r-- root/root 1594 2009-10-07 08:38 ./usr/share/doc/microcode.ctl/README.Debian
-rw-r--r-- root/root 1115 2007-04-26 12:59 ./usr/share/doc/microcode.ctl/changelog.gz
-rw-r--r-- root/root 2361 2009-10-07 08:38 ./usr/share/doc/microcode.ctl/README.gz
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/share/misc/
drwxr-xr-x root/root 0 2009-10-07 08:38 ./usr/sbin/
-rwxr-xr-x root/root 10388 2009-10-07 08:38 ./usr/sbin/microcode_ctl
-rwxr-xr-x root/root 2503 2009-10-07 08:38 ./usr/sbin/update-intel-microcode
francois@totoche:/tmp/demo$
montre qu’on a bien récupéré le bon paquet (démo faite en direct, j’ignore ce que fait ce paquet ).
Je vais utiliser cette méthode pour faire un installateur universel de ClefAgreg à partir des ISOs du site.