大文件上的 aria2c 超时错误,但下载了大部分文件
aria2c timeout error on large file, but downloads most of it
我昨天在 superuser
上发布了这个,但也许在这里更好。如果我不正确,我深表歉意。
我正在尝试使用 ubuntu 14.04
解决以下 aria2c
命令 运行 的问题。基本上下载开始并剩下大约 30 分钟,然后出现超时错误。正在下载的文件是 25GB,并且经常有多个文件使用循环下载。有什么建议可以提高效率和稳定性吗?目前每个文件下载大概需要4个小时,只要没有错误就可以了。我也得到了一个 aria2c
文件,其中包含部分下载的文件。谢谢 :).
aria2c -x 4 -l log.txt -c -d /home/cmccabe/Desktop/download --http-user "xxxxx" --http-passwd xxxx xxx://www.example.com/x/x/xxx/"file"
对于标签,我深表歉意,因为我无法创建一个新的标签,那是最近的标签。
您可以编写一个循环来重新运行 aria2c,直到所有文件都下载完毕(参见gist)。
基本上,您可以将所有链接放在一个文件中(例如 list.txt
):
http://foo/file1
http://foo/file2
...
然后运行 loop_aria2.sh
:
#!/bin/bash
aria2c -j5 -i list.txt -c --save-session out.txt
has_error=`wc -l < out.txt`
while [ $has_error -gt 0 ]
do
echo "still has $has_error errors, rerun aria2 to download ..."
aria2c -j5 -i list.txt -c --save-session out.txt
has_error=`wc -l < out.txt`
sleep 10
done
aria2c -j5 -i list.txt -c --save-session out.txt
将并行下载 5 个文件 (-j5
),并将失败的文件写入 out.txt
。如果out.txt
不为空($has_error -gt 0
),则重新运行同样的命令继续下载。 aria2c 的 -c
选项将跳过已完成的文件。
PS:另一个更简单的解决方案(不检查错误),如果您不介意,只需 运行 aria2 1000 次 :)
seq 1000 | parallel -j1 aria2c -i list.txt -c
我昨天在 superuser
上发布了这个,但也许在这里更好。如果我不正确,我深表歉意。
我正在尝试使用 ubuntu 14.04
解决以下 aria2c
命令 运行 的问题。基本上下载开始并剩下大约 30 分钟,然后出现超时错误。正在下载的文件是 25GB,并且经常有多个文件使用循环下载。有什么建议可以提高效率和稳定性吗?目前每个文件下载大概需要4个小时,只要没有错误就可以了。我也得到了一个 aria2c
文件,其中包含部分下载的文件。谢谢 :).
aria2c -x 4 -l log.txt -c -d /home/cmccabe/Desktop/download --http-user "xxxxx" --http-passwd xxxx xxx://www.example.com/x/x/xxx/"file"
对于标签,我深表歉意,因为我无法创建一个新的标签,那是最近的标签。
您可以编写一个循环来重新运行 aria2c,直到所有文件都下载完毕(参见gist)。
基本上,您可以将所有链接放在一个文件中(例如 list.txt
):
http://foo/file1
http://foo/file2
...
然后运行 loop_aria2.sh
:
#!/bin/bash
aria2c -j5 -i list.txt -c --save-session out.txt
has_error=`wc -l < out.txt`
while [ $has_error -gt 0 ]
do
echo "still has $has_error errors, rerun aria2 to download ..."
aria2c -j5 -i list.txt -c --save-session out.txt
has_error=`wc -l < out.txt`
sleep 10
done
aria2c -j5 -i list.txt -c --save-session out.txt
将并行下载 5 个文件 (-j5
),并将失败的文件写入 out.txt
。如果out.txt
不为空($has_error -gt 0
),则重新运行同样的命令继续下载。 aria2c 的 -c
选项将跳过已完成的文件。
PS:另一个更简单的解决方案(不检查错误),如果您不介意,只需 运行 aria2 1000 次 :)
seq 1000 | parallel -j1 aria2c -i list.txt -c