ilikenwf / apt-fast

apt-fast: A shellscript wrapper for apt that speeds up downloading of packages.
http://www.mattparnell.com/projects/apt-fast-and-axel-roughly-26x-faster-apt-get-installations-and-upgrades.html
GNU General Public License v3.0
1.96k stars 185 forks source link

apt-fast suddenly has 0 byte download speed when downloading the last package while upgrading packages #243

Open hueychen27 opened 4 months ago

hueychen27 commented 4 months ago

I try updating with apt-fast, but sometimes, the last two or one packages download with no progress for a long time. I am forced to abort and fall back to apt-get, and that works fine. I use Debian Sid (Unstable).

Lasall commented 4 months ago

Thank you for your bug report. Can you provide more details please, for example which packages of which repositories, maybe some sample output?

hueychen27 commented 4 months ago

I have an update right now, but this time everything downloaded quickly with no bug like this. This is the "sometimes" I am talking about.
Also, here is my config file if that helps:

/etc/apt-fast.conf ``` ################################################################### # CONFIGURATION OPTIONS ################################################################### # Every item has a default value besides MIRRORS (which is unset). # Use aptitude, apt-get, or apt? # Note that apt-get is used as a fallback for outputting the # package URI list for e.g. aptitude, which can't do this # Optionally add the FULLPATH to apt-get or apt-rpm or aptitude # e.g. /usr/bin/aptitude # # Default: apt-get # _APTMGR=apt # Enable DOWNLOADBEFORE to suppress apt-fast confirmation dialog and download # packages directly. # # Default: dialog enabled # DOWNLOADBEFORE= # Choose mirror list to speed up downloads from same archive. To select some # mirrors take a look at your distribution's archive mirror lists. # Debian: http://www.debian.org/mirror/list # Ubuntu: https://launchpad.net/ubuntu/+archivemirrors # # It is required to add mirrors in the sources.list to this array as well, so # apt-fast can destinguish between different distributions. # # Examples: # # Different distributions (as in operating systems): # # sources.list: # deb http://deb.debian.org/debian/ unstable main non-free contrib # deb http://de.archive.ubuntu.com/ubuntu/ bionic main universe # # apt-fast.conf: # MIRRORS=( 'http://deb.debian.org/debian','http://ftp.debian.org/debian,http://ftp2.de.debian.org/debian,http://ftp.de.debian.org/debian,ftp://ftp.uni-kl.de/debian' # 'http://archive.ubuntu.com/ubuntu,http://de.archive.ubuntu.com/ubuntu,http://ftp.halifax.rwth-aachen.de/ubuntu,http://ftp.uni-kl.de/pub/linux/ubuntu,http://mirror.informatik.uni-mannheim.de/pub/linux/distributions/ubuntu/' ) # # # Single distribution: # # sources.list: # deb http://fr.archive.ubuntu.com/ubuntu/ bionic main # deb http://fr.archive.ubuntu.com/ubuntu/ artful main # # apt-fast.conf: # MIRRORS=( 'http://fr.archive.ubuntu.com/ubuntu,http://bouyguestelecom.ubuntu.lafibre.info/ubuntu,http://mirror.ovh.net/ubuntu,http://ubuntu-archive.mirrors.proxad.net/ubuntu' ) # # Default: disabled # #MIRRORS=( 'none' ) MIRRORS=( 'http://deb.debian.org/debian','http://mirror.timkevin.us/debian/','http://mirror.keystealth.org/debian/','http://mirrors.ocf.berkeley.edu/debian/','http://mirror.dal.nexril.net/debian/','http://debian.osuosl.org/debian/','http://mirror.it.ubc.ca/debian/','http://ftp.ca.debian.org/debian/' ) # Maximum number of connections # You can use this value in _DOWNLOADER command. Escape with ${}: ${_MAXNUM} # # Default: 5 # #_MAXNUM=5 _MAXNUM=16 # Maximum number of connections per server # Default: 10 # _MAXCONPERSRV=16 # Download file using given number of connections # If more than N URIs are given, first N URIs are used and remaining URIs are used for backup. # If less than N URIs are given, those URIs are used more than once so that N connections total are made simultaneously. # _SPLITCON=8 # Split size i.e. size of each piece # Possible Values: 1M-1024M # _MINSPLITSZ=1M # Piece selection algorithm to use # Available values are: default, inorder, geom # default: selects piece so that it reduces the number of establishing connection, reasonable for most cases # inorder: selects pieces in sequential order starting from first piece # geom: selects piece which has minimum index like inorder, but it exponentially increasingly keeps space from previously selected pieces # #_PIECEALGO=default # Downloadmanager listfile # You can use this value in _DOWNLOADER command. Escape with ${}: ${DLLIST} # # Default: /tmp/apt-fast.list # DLLIST='/tmp/apt-fast.list' # Download command to use. Temporary download list is designed for aria2. But # you can choose another download command or download manager. It has to # support following input file syntax (\t is tab character): # # # Comment # MIRROR1\tMIRROR2\tMIRROR3... # out=FILENAME1 # MIRROR1\tMIRROR2\tMIRROR3... # out=FILENAME2 # ... # # Examples: # aria2c with a proxy (set username, proxy, ip and password!) # _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} --http-proxy=http://username:password@proxy_ip:proxy_port -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0 --header "Accept: */*"' # # Default: _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0 --header "Accept: */*"' # _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=10 --timeout=600 -m0 --header "Accept: */*"' # Temporary download folder for download manager. # # Default: /var/cache/apt/apt-fast # #DLDIR='/var/cache/apt/apt-fast' # APT archives cache directory # # Default /var/cache/apt/archives # (APT configuration items Dir::Cache and Dir::Cache::archives) # #APTCACHE='/var/cache/apt/archives' # APT authentication support. Uses /etc/apt/auth.conf and /etc/apt/auth.conf.d/* authentication files. # # Default 1 (enabled) # #APT_FAST_APT_AUTH=1 # apt-fast colors # Colors are disabled when not using a terminal. # # Default colors are: # cGreen='\e[0;32m' # cRed='\e[0;31m' # cBlue='\e[0;34m' # endColor='\e[0m' ```
hueychen27 commented 4 months ago

I also installed apt-fast with your Ubuntu mirror link with Ubuntu version Noble.

hueychen27 commented 3 months ago

Can't seem to reproduce this...

hueychen27 commented 3 months ago

@Lasall Suddenly it happens again.

hueychen27 commented 3 months ago

08/11 14:11:31 [NOTICE] Download complete: /var/cache/apt/apt-fast/libreoffice-style-colibre_4%3a24.2.5-3_all.deb
 *** Download Progress Summary as of Sun Aug 11 14:12:15 2024 ***                                                                                                                                                                          
===========================================================================================================================================================================================================================================
[#901640 0B/0B CN:1 DL:0B]
FILE: /var/cache/apt/apt-fast/systemd-sysv_256.4-3_amd64.deb
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[#7db758 0B/0B CN:1 DL:0B]
FILE: /var/cache/apt/apt-fast/libgomp1_14.2.0-2_i386.deb
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

[DL:0B][#901640 0B/0B][#7db758 0B/0B]