Los protocolos comunes HTTP, FTP y SFTP admiten solicitudes de rango , por lo que puede solicitar parte de un archivo. Tenga en cuenta que esto también requiere soporte del servidor, por lo que podría o no funcionar en la práctica.
Puede usar curl
y la opción -r
o --range
para especificar el rango y, finalmente, simplemente cat
juntar los archivos. Ejemplo:
curl -r 0-104857600 -o distro1.iso 'http://files.cdn/distro.iso'
curl -r 104857601-209715200 -o distro2.iso 'http://files.cdn/distro.iso'
[…]
Y eventualmente cuando reúnes las partes individuales las concatenas:
cat distro* > distro.iso
Puede obtener más información sobre el archivo, incluido su tamaño con la --head
opción:
curl --head 'http://files.cdn/distro.iso'
Puede recuperar el último fragmento con un rango abierto:
curl -r 604887601- -o distro9.iso 'http://files.cdn/distro.iso'
Lea la página del manual de curl para más opciones y explicaciones.
Puede aprovechar aún más ssh y tmux para facilitar la ejecución y realizar un seguimiento de las descargas en varios servidores.