wget 怎么下载镜像网站的 RPM 包

2018-06-21 20:19:42 +08:00
 plko345

使用网上搜到的

wget -r -p -k -np -nc -e robots=off http://mirrors.163.com/centos/7.5.1804/updates/x86_64/Packages/

各目录都有,但网站下的 RPM 包一个都没有下,只有一个 index.html

请问要怎么使用 wget 工具完成这个要求

6000 次点击
所在节点    Linux
26 条回复
lyog
2018-06-21 20:32:37 +08:00
难道不是 wget + 完整网址?
plko345
2018-06-21 20:37:55 +08:00
@lyog 额,什么意思?我要下载 centos 源下的所有 RPM 包,有几千个
Lemzon
2018-06-21 20:38:37 +08:00
这位老哥的意思应该是:用一个(尽可能少的) wget 命令将镜像网站上的 rpm 包全部下载
yankebupt
2018-06-21 20:41:42 +08:00
看了一眼参数
r recursive
p page-requisites
k convert links.
np no parent dir
nc 不重复下载文件
e robots off(不被 robots.txt 阻拦)
好像已经完全够要求了,点开链接一看也是 html 含一堆 rpm 包,真是不知道为啥下不来......
plko345
2018-06-21 20:42:42 +08:00
@yankebupt 你能下吗?我只有一个 index.html 啊,我都试了 N 次了
ysc3839
2018-06-21 20:46:01 +08:00
@plko345 #2 搜索 wget mirror
不过这种软件源要做镜像的话应该用专门的软件。
yankebupt
2018-06-21 20:47:54 +08:00
@plko345 wget 1.18 试了下,你贴的原命令能用
lyog
2018-06-21 20:54:40 +08:00
@plko345 哈哈我误解了,把网址最后的斜杠去掉有惊喜
ysicing
2018-06-21 20:54:41 +08:00
Yum 仅下载不安装了解一下
flynaj
2018-06-21 21:20:02 +08:00
用 rsync 同步,现在的开源镜像基本都是用这个,效率高速度快,只传输不同部分。
xcai
2018-06-21 21:28:46 +08:00
yum install * 然后 d ?
plko345
2018-06-21 21:29:33 +08:00
@flynaj 谢谢,查了下是有这个 rsync:// 的协议下载的,我去了解下

@ysicing 这个是知道的,但是不知道怎么用 yum 下载源里的所有包,请指教
Droi
2018-06-21 22:15:26 +08:00
下载所有的包,还不如用 createrepo 做个本地源
ls25145
2018-06-21 22:28:46 +08:00
不知道你目的是要包还是一定要用命令从镜像源下载,如果只是要包的很简单
http://mirrors.cn99.com/centos/7/isos/x86_64/CentOS-7-x86_64-Everything-1804.iso
iso 文件里有所有的包
plko345
2018-06-21 22:41:36 +08:00
@ls25145 这个只包含 base 源,我还要下 updates 和 epel 的
plko345
2018-06-21 22:42:26 +08:00
@Droi 不是要先下载好包才能用这个做本地源吗?要不本地源没包呀
Droi
2018-06-21 23:11:20 +08:00
@plko345 你可以试试这个教程用 reposync 同步源 https://blog.csdn.net/woshizhangliang999/article/details/78924972
msg7086
2018-06-21 23:13:19 +08:00
@plko345 花个几秒钟搜索一下很难吗?
Let me Google it for you: https://opennodecloud.com/howto/2013/12/02/howto-creating-local-yum-repomirror.html
plko345
2018-06-22 06:36:52 +08:00
@msg7086 亲,我的目的确实是实现本地源,但前提是先将上万个 rpm 包下载到本地,我考虑用 wget 命令可能是最简单的,但尝试多次没有成功,这才是我求助的目的,而不是问怎么实现本地源。不过还是感谢你的帮助
Droi
2018-06-22 10:51:51 +08:00
慢慢下载吧,单线程的。想要书的,只能自己抓虫多线程了。
packages="http://mirrors.163.com/centos/7.5.1804/updates/x86_64/Packages/" && curl $packages >>tt.html &&cat tt.html | awk -F '"' '{print $2}'|while read line; do curl -O ${packages}${line}; done

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/464832

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX