Knowledge Base

Preserving for the future: Shell scripts, AoC, and more

yum: curl error #63: callback aborted

Symptom

The following message occurs.

http://yum01.ad.example.com/yum/mirror/kernel/getPackage/kernel-doc-4.0.5-124.16.4.el7.noarch.rpm: [Errno 14] curl#63 - "Callback aborted"
Trying other mirror.


Error downloading packages:
  kernel-doc-4.1.12-124.16.4.el7.noarch: [Errno 256] No more mirrors to try.

Possible causes

When yum fails to download a file due to "curl error #63: Callback aborted," that means that reposync downloaded the rpm file incorrectly. It doesn't match the expected checksum in the metadata file.

Fix #1

  1. On the mirror server (probably yum01), delete the offending files and download them manually from upstream.

    1
    #!/bin/sh
    

    urldir=http://yum.upstream.example.com/repo/EL7/Mirror/x86_64/getPackage/ outdir=/var/www/html/yum/repo/EL7_Mirror/Mirror/getPackage cd "${outdir}"

    for word in kernel-4.0.5-124.16.4.el7.x86_64.rpm kernel-debug-4.0.5-124.16.4.el7.x86_64.rpm kernel-debug-devel-4.0.5-124.16.4.el7.x86_64.rpm kernel-devel-4.0.5-124.16.4.el7.x86_64.rpm kernel-doc-4.0.5-124.16.4.el7.noarch.rpm kernel-firmware-4.0.5-124.16.4.el7.noarch.rpm; do /bin/rm -f "${word}" wget "${urldir}${word}" done

  2. On the squid proxy server (probably proxy01), purge the cached files.

    1
    #!/bin/sh
    

    reference:

    time squidclient -h localhost -r -p 3128 -m PURGE http://yum01.ad.example.com/yum/Mirror/EL7/getPackage/kernel-4.0.5-124.16.4.el7.x86_64.rpm

    urldir=http://yum.upstream.example.com/repo/EL7/Mirror/x86_64/getPackage/ outdir=/var/www/html/yum/repo/EL7_Mirror/Mirror/getPackage

    for word in kernel-4.0.5-124.16.4.el7.x86_64.rpm kernel-debug-4.0.5-124.16.4.el7.x86_64.rpm kernel-debug-devel-4.0.5-124.16.4.el7.x86_64.rpm kernel-devel-4.0.5-124.16.4.el7.x86_64.rpm kernel-doc-4.0.5-124.16.4.el7.noarch.rpm kernel-firmware-4.0.5-124.16.4.el7.noarch.rpm; do squidclient -h localhost -r -p 3128 -m PURGE "${urldir}${word}" done

Comments