我正在尝试在本地镜像网站。但是,我在下载过程中的某个一致点遇到了分段错误,该错误位于与我的目标站点不同的域上(可能是由于--page-requisites
)。
2018-04-09 04:58:32 (346 KB/s) - './not-website.com/2017/06/28/xyz/index.html' saved [145810]
29247 Segmentation Fault (core dumped) wget --directory-prefix="${DL_ROOT}" --recursive --page-requisites --span-hosts --tries="${TRIES_NUM}" --timeout="${TIMEOUT_NUM}" --reject="*.tar" --convert-links --adjust-extension --continue --no-check-certificate "http://website.com/"
Run Code Online (Sandbox Code Playgroud)
因此,我认为分段错误是由于 wget 尝试下载特定网站但失败造成的。
但是,错误消息似乎没有告诉我 wget 在哪个地址上失败。它只告诉我最后一次成功的下载。我如何找出 wget 因该段错误而失败的位置/原因?
core
错误似乎引用了一个 55M 的文件(core dumped)
,但它不是纯文本形式。里面有我需要的信息吗?我该如何提取这些信息?
我已经跨发行版(Solaris、Debian、Raspbian)对此进行了测试,并且此段错误是一致的,并且始终位于相同的地址之后(not-website.com/...
在上面的错误消息中)。
我正在使用命令:
$ wget \
--directory-prefix="${DL_ROOT}" \
--recursive \
--page-requisites \
--span-hosts \
--tries="${TRIES_NUM}" \
--timeout="${TIMEOUT_NUM}" \
--reject="*.tar" \
--convert-links \
--adjust-extension \
--continue \
--no-check-certificate \
"http://website.com/"
Run Code Online (Sandbox Code Playgroud)
附加信息
这是一个很大的网站,有很多媒体。故障时,下载的目录大小约为252M。
测试于:
GNU Wget …
Run Code Online (Sandbox Code Playgroud)