ros2 解决E: The repository ‘http://mirrors.x.x.x.cn/ros/ubuntu jammy Release’ does not have a Release file.报错的问题
最近按照ros官方文档给我的ros2配置镜像源后一直报错,网上看到很多方法都无法解决,最多的是让你将配置的镜像源文件删除,删除后当然不会报错,但是有些库就是需要这个源下载。
报错如下图所示:
E: The repository 'http://mirrors.sjtug.sjtu.edu.cn/ros2/ubuntu jammy Release' does not have a Release file.
本人也是卡在这好久,完全不明白为什么按照官网和网上众多大神的方法进行配置会出这种问题,后面自己仔细思考,看到前面的报错:
Err:6 https://mirrors.sjtug.sjtu.edu.cn/ros2/ubuntu jammy Release
404 Not Found [IP: 202.120.58.155 443]
没有找到这个链接?
然后进入我们的镜像源进行查看,发现不少镜像源中的ros和ros2已经分离了,如清华的镜像源,如果你是ros2的话选择使用
http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/
这个镜像源的话肯定是报错的,因为完全找不到,ros2和ubuntu之间是有版本对应关系的,因此只需要将上面的链接改成
http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu/
就可以解决问题了,因此官方的更换ros2镜像源的命令应该改成如下形式:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
其他镜像推荐使用清华的镜像源,他附带使用帮助:
像上海交通大学的就不行了,只支持到20.04,但是如果你是20.04及以下的直接使用官方的方式也不会报错。
参考链接:
ros官方给的配置镜像源地址:
http://wiki.ros.org/ROS/Installation/UbuntuMirrors
网上一般的解决思路
换源:
https://blog.csdn.net/KongFann/article/details/116667976
删除源文件:
https://www.jianshu.com/p/5656e338813a
清华大学ros2镜像源使用帮助:
https://mirrors.tuna.tsinghua.edu.cn/help/ros2/
上海交通大学ros镜像使用帮助,他只支持到20.04
https://mirrors.sjtug.sjtu.edu.cn/docs/ros