Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

增加Vyos 软件仓库和ISO镜像 #284

Closed
jack9603301 opened this issue Dec 11, 2020 · 62 comments
Closed

增加Vyos 软件仓库和ISO镜像 #284

jack9603301 opened this issue Dec 11, 2020 · 62 comments
Labels

Comments

@jack9603301
Copy link

jack9603301 commented Dec 11, 2020

上游源(官方镜像)的地址

DEB: http://dev.packages.vyos.net/
ISO: https://downloads.vyos.io/?dir=rolling/current/amd64

该项目的介绍

VyOS是基于Debian GNU / Linux的开源网络操作系统。

VyOS提供了一个免费的路由平台,可以与知名网络提供商的其他商业解决方案直接竞争。由于VyOS在标准的amd64,i586和ARM系统上运行,因此可以用作云部署的路由器和防火墙平台。

为什么希望添加该镜像

Vyos是一个欧洲的开源专业级通用软路由系统,但是如果需要人工编译时,往往会发现官方的deb路径网络传输相对较慢,因此希望建立中国的镜像站点。同时从官方下载ISO可能会比较慢,因此从国内下载ISO也许是更好地选择

国内其他镜像源同步情况

中国大陆无镜像站

@jack9603301 jack9603301 changed the title 请求建立Vyos DEB仓库镜像 Vyos 软件仓库和ISO镜像 Dec 11, 2020
@jack9603301 jack9603301 changed the title Vyos 软件仓库和ISO镜像 增加Vyos 软件仓库和ISO镜像 Dec 11, 2020
@gaoyifan
Copy link
Member

@taoky
Copy link
Member

taoky commented Dec 25, 2020

note: tuna/issues#1094 (comment)

@jack9603301
Copy link
Author

https://dev.packages.vyos.net/

是否可以从如下地址镜像?

图片

@jack9603301
Copy link
Author

而ISO,可以考虑镜像rolling即可

@taoky
Copy link
Member

taoky commented Dec 25, 2020

https://dev.packages.vyos.net/

是否可以从如下地址镜像?

图片

这里的问题是,网页的 URL 的格式是 https://dev.packages.vyos.net/?dir=<文件夹>,而不是 https://dev.packages.vyos.net/<文件夹>。现有的 HTTP 同步程序没有办法正确处理这样的 URL。

@jack9603301
Copy link
Author

好吧,这确实是问题

@jack9603301
Copy link
Author

@taoky 是否有其他的办法呢?

@ZenithalHourlyRate
Copy link

首先要确认 VyOS 在 1.3 版本后是否可以再分发,比如与上游沟通

之后如果可以而且需要镜像,需要提供一个同步脚本,可以参考 https://github.com/tuna/tunasync-scripts 中的脚本

@jack9603301
Copy link
Author

我去了解下,但是需要一点时间

@jack9603301
Copy link
Author

jack9603301 commented Dec 25, 2020

官方表示可以镜像滚动版本的预编译ISO和所有软件包,但是不能镜像LTS的预编译映像文件

You can distribute rolling release images and any packages anywhere.
You cannot distribute prebuilt LTS images, since it disincentivizes business users from supporting the project.

@jack9603301
Copy link
Author

jack9603301 commented Dec 25, 2020

@taoky 我发现将https://raw.githubusercontent.com/tuna/tunasync-scripts/master/apt-sync.py 稍作修改后可以用于镜像vyos

需要进行测试以便确认 https://github.com/vyos/vyos-build/ 是否可以使用该源

https://docs.vyos.io/en/latest/contributing/build-vyos.html#customize

@jack9603301
Copy link
Author

tuna/tunasync-scripts#110

可以参考这个

@taoky
Copy link
Member

taoky commented Jan 2, 2021

tuna/tunasync-scripts#110 (comment)

经过测试,直接用 https://github.com/ustclug/ustcmirror-images#aptsync 同步软件仓库看起来是可以的。关于 ISO,目前我们没有可以只同步单个文件的同步脚本。我有计划写一个通用的 HTTP 同步程序,但是这一段时间估计无法完成。

@taoky
Copy link
Member

taoky commented Jan 6, 2021

tuna/tunasync-scripts#110 (comment)

经过测试,直接用 https://github.com/ustclug/ustcmirror-images#aptsync 同步软件仓库看起来是可以的。关于 ISO,目前我们没有可以只同步单个文件的同步脚本。我有计划写一个通用的 HTTP 同步程序,但是这一段时间估计无法完成。

计划这周末添加 Vyos 的 APT 软件仓库镜像测试。

@taoky taoky removed the needvote label Jan 6, 2021
@taoky
Copy link
Member

taoky commented Jan 9, 2021

计划这周末添加 Vyos 的 APT 软件仓库镜像测试。

https://mirrors.ustc.edu.cn/vyos/

仅同步了 https://dev.packages.vyos.net/?dir=repositories/current 下的内容。

@jack9603301
Copy link
Author

可否使用vyos-build测试编译?我正在进行编译。测试不会马上进行

编译文档:docs.vyos.io

另外,crux的repo同步其实可以用来手动编译

@jack9603301
Copy link
Author

我现在尝试对这个源进行测试

@jack9603301
Copy link
Author

jack9603301 commented Jan 9, 2021

图片
为什么会这样

edit: 好吧,我试试看http

@jack9603301
Copy link
Author

@taoky 这个镜像站同步时间是多少?

@iBug
Copy link
Member

iBug commented Jan 9, 2021

图片
为什么会这样

应该是因为 Let's Encrypt 换了新的根证书 CA 导致旧的客户端(没有提前信任这个新的 Root CA 的)不接受新的 LE 证书。暂时使用 HTTP 可以绕过问题,不过能更新客户端或系统里的 ca-certificates 软件包会更好。

@taoky
Copy link
Member

taoky commented Jan 9, 2021

@taoky 这个镜像站同步时间是多少?

目前设置的是每天 5:25 开始同步。

另外,crux的repo同步其实可以用来手动编译

由于上游目录结构的原因,加除了 current 以外的不太方便。

应该是因为 Let's Encrypt 换了新的根证书 CA 导致旧的客户端(没有提前信任这个新的 Root CA 的)不接受新的 LE 证书。暂时使用 HTTP 可以绕过问题,不过能更新客户端或系统里的 ca-certificates 软件包会更好。

https://letsencrypt.org/2020/12/21/extending-android-compatibility.html 这一项更改推迟了。出现证书问题可能只是单纯 ca-certificates 没有安装。

@jack9603301
Copy link
Author

由于上游目录结构的原因,加除了 current 以外的不太方便。

好的

@jack9603301
Copy link
Author

由于上游目录结构的原因,加除了 current 以外的不太方便。

实际上确实可能是,因为每一次发行版,都会多出一个新的分支,比如vyos 1.3是equuleus,只有current是固定不变的,对于手动编译滚动版本的,只同步current确实足够

@jack9603301
Copy link
Author

jack9603301 commented Jan 19, 2021

@taoky
图片

为什么出错了

目前上游正常服务

@taoky
Copy link
Member

taoky commented Jan 19, 2021

为什么出错了

错误原因是上游的 arm64armhf 架构的 Packages 列表中包含了包 vyatta-op-quagga,但是实际上这个包已经被删除,导致这两个架构同步提示错误。其他包的同步都是正常的,所以正常使用不会有影响。

如果需要让同步显示正常,请联系上游修复此问题。

@jack9603301
Copy link
Author

jack9603301 commented Jan 19, 2021

为什么出错了

错误原因是上游的 arm64armhf 架构的 Packages 列表中包含了包 vyatta-op-quagga,但是实际上这个包已经被删除,导致这两个架构同步提示错误。其他包的同步都是正常的,所以正常使用不会有影响。

如果需要让同步显示正常,请联系上游修复此问题。

也就是说,除了其中一个包同步失败外,其他包正常?

即便这样,对同步程序来说,报告错误也许并不合理把?容易产生误导

这是可以忽略的错误,打印警告或许更合理

@iBug
Copy link
Member

iBug commented Jan 19, 2021

也就是说,除了其中一个包同步失败外,其他包正常?

即便这样,对同步程序来说,报告错误也许并不合理把?容易产生误导

这是可以忽略的错误

同步程序只知道有一个包同步失败了,但是并不知道这个包是不是可以忽略的,所以只要有错误就返回失败状态是更合理的做法。

@jack9603301
Copy link
Author

也就是说,除了其中一个包同步失败外,其他包正常?
即便这样,对同步程序来说,报告错误也许并不合理把?容易产生误导
这是可以忽略的错误

同步程序只知道有一个包同步失败了,但是并不知道这个包是不是可以忽略的,所以只要有错误就返回失败状态是更合理的做法。

好的,其他包同步是否正常?不会有可以同步的包因为报错而跳过了把?

@taoky
Copy link
Member

taoky commented Jan 19, 2021

好的,其他包同步是否正常?不会有可以同步的包因为报错而跳过了把?

下载某个包出错不会导致跳过其他软件包的下载。

@jack9603301
Copy link
Author

好的,其他包同步是否正常?不会有可以同步的包因为报错而跳过了把?

下载某个包出错不会导致跳过其他软件包的下载。

好的,顺便问下,之前说的那个跳过下载最新包的问题是否解决了?

@taoky
Copy link
Member

taoky commented Jan 19, 2021

好的,顺便问下,之前说的那个跳过下载最新包的问题是否解决了?

我最近没有时间来写和测试这一块的代码,最早也要到下周周末才可能有空。如果感兴趣的话可以修改 tunasync/apt-sync.py 并且为 TUNA 提交 PR。如果能通过的话 ustcmirror-images/apt-sync 也会及时更新。

@jack9603301
Copy link
Author

好的,顺便问下,之前说的那个跳过下载最新包的问题是否解决了?

我最近没有时间来写和测试这一块的代码,最早也要到下周周末才可能有空。如果感兴趣的话可以修改 tunasync/apt-sync.py 并且为 TUNA 提交 PR。如果能通过的话 ustcmirror-images/apt-sync 也会及时更新。

好的

@jack9603301
Copy link
Author

@taoky 您好,我想请问那个功能改进的如何了?

@iBug
Copy link
Member

iBug commented Feb 7, 2021

taoky 您好,我想请问那个功能改进的如何了?

我们最近在忙一些别的事情,并没有时间去研究改进这个功能。如果你感兴趣的话可以自己向 TUNA 的同步脚本提交 PR,我们会跟进 TUNA 那边的更新的。

@jack9603301
Copy link
Author

jack9603301 commented Feb 21, 2021

@iBug @taoky 如果完成改进了,就告诉我一声

@jack9603301
Copy link
Author

jack9603301 commented Jul 17, 2021

@iBug @taoky 抱歉,这段时间一直没有关注这个问题,上次说的现在实现的怎么样了?如果需要我的帮忙,我有机会可以看看.

@iBug
Copy link
Member

iBug commented Jul 17, 2021

您好,由于此项目没有优先级,这段时间我们完全没动。

如果你感兴趣的话可以自己向 TUNA 的同步脚本提交 PR,我们会跟进 TUNA 那边的更新的。

@jack9603301
Copy link
Author

see tuna/tunasync-scripts#129

@taoky
Copy link
Member

taoky commented Aug 8, 2023

vyos 现在使用了新的同步工具 (https://github.com/ustclug/ustcmirror-images#tsumugu) 做同步,直接解析 HTML 判断是否下载文件。我不知道怎么测试,但是我相信部分包没有被同步的问题应该已经解决了,如果有问题再 open 这个 issue。

Status 页显示的 25 号错误原因是多余的文件超过了一次性删除的限制(1000),等它多同步几次慢慢删就行。

@taoky taoky closed this as completed Aug 8, 2023
@taoky
Copy link
Member

taoky commented Apr 26, 2024

我注意到访问 https://dev.packages.vyos.net/?dir=repositories/sagitta 下面的文件会返回 403 错误:

image

这似乎表明 vyos 不愿意被除了 APT 以外的程序访问内容(也代表了他们不愿意被镜像)。如果在之后情况没有发生变化,那么我们可能只能撤下 vyos 的镜像。

@jack9603301

@jack9603301
Copy link
Author

为什么我浏览器可以访问它?

@taoky
Copy link
Member

taoky commented Apr 26, 2024

为什么我浏览器可以访问它?

列目录是可以的,请点到目录下面任何一个文件看看能不能访问。

@jack9603301
Copy link
Author

好吧,看起来确实无法访问,我明白了。我会在社区问一问,但如果不得不移除镜像,请将镜像移除或者将其设置为不可用

@jack9603301
Copy link
Author

jack9603301 commented Apr 29, 2024

@taoky https://blog.vyos.io/community-contributors-userbase-and-lts-builds

请取消LTS分支的镜像,可以保留滚动分支,根据官方发布的信息,LTS分支的apt依赖被设置为私有,这意味着从外部网络获取LTS依赖镜像是不可能的。除非从源代码构建所有东西

@taoky
Copy link
Member

taoky commented Apr 29, 2024

请取消LTS分支的镜像,可以保留滚动分支,根据官方发布的信息,LTS分支的apt依赖被设置为私有,这意味着从外部网络获取LTS依赖镜像是不可能的。除非从源代码构建所有东西

哪个是 rolling 呢?crux 还是 current?请注意镜像站维护者中没有 vyos 的用户,所以如果可能请尽量表述清晰。

@jack9603301
Copy link
Author

jack9603301 commented Apr 29, 2024

请取消LTS分支的镜像,可以保留滚动分支,根据官方发布的信息,LTS分支的apt依赖被设置为私有,这意味着从外部网络获取LTS依赖镜像是不可能的。除非从源代码构建所有东西

哪个是 rolling 呢?crux 还是 current?请注意镜像站维护者中没有 vyos 的用户,所以如果可能请尽量表述清晰。

当前无法同步的分支可能是用于私有访问的存储库,并且滚动版本应该是有效的。

滚动的应该是current。你看看current是否可以访问

@iBug
Copy link
Member

iBug commented Apr 29, 2024

P.S. 如果您转载了上游社区的英文内容,请不要翻译:我们都看得懂英文,而翻译有时候是不准确地,只会给我们增加理解困难。

taoky added a commit to taoky/tsumugu that referenced this issue Apr 29, 2024
Vyos does not like their LTS contents being synced. See ustclug/mirrorrequest#284 (comment).
@taoky
Copy link
Member

taoky commented Apr 29, 2024

排除了返回 403 的内容。

@jack9603301
Copy link
Author

jack9603301 commented Apr 29, 2024

P.S. 如果您转载了上游社区的英文内容,请不要翻译:我们都看得懂英文,而翻译有时候是不准确地,只会给我们增加理解困难。

翻译不准确是因为你们没有正确的使用翻译系统,我作为跨境自由职业者,知道如何正确使用翻译以降低翻译错误的可能性。。另外,上面那是我不小心把中文翻译成英文了,而不是把上游的英文翻译成中文——习惯了,因为天天用翻译软件,上github不自觉的就翻译成英文了

我的翻译结果受到了多个老外的认可,wordpress和flameshot的开发者均表示我的翻译结果让他们感到惊讶,并询问我用什么翻译软件。。我所服务的客户,例如upwork的客户,在沟通过程中,并没有出现严重的沟通误解,相反,我以出色的方式和大多数客户进行英文沟通。请注意,作为自由职业者,我已经习惯了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants