安装ROS2
本教程使用Ubuntu-22.04.5-desktop-amd64.iso
操作系统Ubuntu22.04镜像源参考
从默认的软件服务器拉取所有的关键列表
$ sudo apt update
获取:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]
命中:2 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy InRelease
获取:3 http://security.ubuntu.com/ubuntu jammy-security/main i386 Packages [608 kB]
命中:4 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates InRelease
命中:5 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-backports InRelease
获取:6 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [2,180 kB]
获取:7 http://security.ubuntu.com/ubuntu jammy-security/main Translation-en [337 kB]
已下载 3,253 kB,耗时 11秒 (307 kB/s)
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
有 209 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。
下载并运行安装工具
$ wget http://fishros.com/install -O fishros && bash fishros
--2025-03-27 21:23:08-- http://fishros.com/install
正在解析主机 fishros.com (fishros.com)... 47.119.165.169
正在连接 fishros.com (fishros.com)|47.119.165.169|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:http://fishros.com/install/ [跟随至新的 URL]
--2025-03-27 21:23:08-- http://fishros.com/install/
再次使用存在的到 fishros.com:80 的连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 957 [application/octet-stream]
正在保存至: ‘fishros’fishros 100%[=======================================>] 957 --.-KB/s 用时 0s 2025-03-27 21:23:08 (79.1 MB/s) - 已保存 ‘fishros’ [957/957])正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
python3-distro 已经是最新版 (1.7.0-1)。
python3-distro 已设置为手动安装。
python3-yaml 已经是最新版 (5.4.1-1ubuntu1)。
python3-yaml 已设置为手动安装。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 209 个软件包未被升级。
--2025-03-27 21:23:09-- http://mirror.fishros.com/install/tools/base.py
正在解析主机 mirror.fishros.com (mirror.fishros.com)... 47.119.165.169
正在连接 mirror.fishros.com (mirror.fishros.com)|47.119.165.169|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 51464 (50K) [application/octet-stream]
正在保存至: ‘/tmp/fishinstall//tools/base.py’/tmp/fishinstall//tools/ba 100%[=======================================>] 50.26K --.-KB/s 用时 0.06s 2025-03-27 21:23:09 (804 KB/s) - 已保存 ‘/tmp/fishinstall//tools/base.py’ [51464/51464])Run CMD Task:[dpkg --print-architecture]
[-][0.01s] CMD Result:success Run CMD Task:[wget http://mirror.fishros.com/install/tools/translation/translator.py -O /tmp/fishinstall//tools/translation/translator.py --no-check-certificate]
[-][0.10s] CMD Result:success Run CMD Task:[wget http://mirror.fishros.com/install/tools/translation/assets/zh_CN.py -O /tmp/fishinstall//tools/translation/assets/zh_CN.py --no-check-certificate]
[-][0.09s] CMD Result:success Run CMD Task:[wget http://mirror.fishros.com/install/tools/translation/assets/en_US.py -O /tmp/fishinstall//tools/translation/assets/en_US.py --no-check-certificate]
[-][0.10s] CMD Result:success Run CMD Task:[wget https://fishros.org.cn/forum/topic/1733 -O /tmp/t1733 -q --timeout 10 && rm -rf /tmp/t1733]
[-][0.00s] CMD Result:success 已为您切换语言至当前所在国家语言:zh_CN
基础检查通过...
===============================================================================
======欢迎使用一键安装工具,人生苦短,三省吾身,省时省力省心!=======
======一键安装已开源,请放心使用:https://github.com/fishros/install =======
===============================================================================.-~~~~~~~~~-._ _.-~~~~~~~~~-.__.' ~. .~ `.__.'// 开卷有益 \./ 书山有路 \ `..'// 可以多看看小鱼的文章 | 关注B站鱼香ROS机器人 \ `..'// .-~~~~~~~~~~~~~~-._ | _,-~~~~~~~~~~~. \`..'//.-" `-. | .-' "-.\`..'//______.============-.. \ | / ..-============.______\`..'______________________________\|/______________________________`----------------------------------------------------------------------
RUN Choose Task:[请输入括号内的数字]
---众多工具,等君来用---
ROS相关:[1]:一键安装(推荐):ROS(支持ROS/ROS2,树莓派Jetson)[3]:一键安装:rosdep(小鱼的rosdepc,又快又好用)[4]:一键配置:ROS环境(快速更新ROS环境设置,自动生成环境选择)[9]:一键安装:Cartographer(18 20测试通过,16未测. updateTime 20240125)[11]:一键安装:ROS Docker版(支持所有版本ROS/ROS2)[16]:一键安装:系统自带ROS (!!警告!!仅供特殊情况下使用)常用软件:[2]:一键安装:github桌面版(小鱼常用的github客户端)[6]:一键安装:NodeJS环境[7]:一键安装:VsCode开发工具[8]:一键安装:Docker[10]:一键安装:微信(可以在Linux上使用的微信)[12]:一键安装:PlateformIO MicroROS开发环境(支持Fishbot)[15]:一键安装:QQ for Linux配置工具:[5]:一键配置:系统源(更换系统源,支持全版本Ubuntu系统)[13]:一键配置:python国内源[17]:一键配置: Docker代理(支持VPN+代理服务两种模式)[0]:quit请输入[]内的数字以选择:1
输入1(安装ROS)
Run CMD Task:[wget http://mirror.fishros.com/install/tools/tool_install_ros.py -O /tmp/fishinstall/tools/tool_install_ros.py --no-check-certificate]
[-][0.13s] CMD Result:success Run CMD Task:[wget http://mirror.fishros.com/install/tools/tool_config_rosenv.py -O /tmp/fishinstall/tools/tool_config_rosenv.py --no-check-certificate]
[-][0.09s] CMD Result:success Run CMD Task:[wget http://mirror.fishros.com/install/tools/tool_config_system_source.py -O /tmp/fishinstall/tools/tool_config_system_source.py --no-check-certificate]
[-][0.09s] CMD Result:success y欢迎使用一键安装ROS和ROS2,支持树莓派Jetson,本工具由作者小鱼提供
欢迎使用ROS开箱子工具,本工具由[鱼香ROS]小鱼贡献..
小鱼:检测当前系统ubuntu22.04:jammy 支持一键安装ROS
=========接下来这一步很很很很重要,如果不知道怎么选请选择1========
RUN Choose Task:[请输入括号内的数字]
新手或首次安装一定要一定要一定要换源并清理三方源,换源!!!系统默认国外源容易失败!!
[1]:更换系统源再继续安装
[2]:不更换继续安装
[0]:quit
请输入[]内的数字以选择:1
选择1(更换系统源再继续安装)
RUN Choose Task:[请输入括号内的数字]
请选择换源方式,如果不知道选什么请选2
[1]:仅更换系统源
[2]:更换系统源并清理第三方源
[0]:quit
请输入[]内的数字以选择:1
选择1(进更换系统源)
RUN Choose Task:[请输入括号内的数字]
请选择你要安装的ROS版本名称(请注意ROS1和ROS2区别):
[1]:humble(ROS2)
[2]:iron(ROS2)
[3]:rolling(ROS2)
[0]:quit
请输入[]内的数字以选择:1
RUN Choose Task:[请输入括号内的数字]
请选择安装的具体版本(如果不知道怎么选,请选1桌面版):
[1]:humble(ROS2)桌面版
[2]:humble(ROS2)基础版(小)
[0]:quit
请输入[]内的数字以选择:1
安装ROS相关选项,首先选择要安装的ROS版本代号,这里输入1(选择humble版本),然后再次输入1(选择桌面版)
安装完毕后直接关闭当前终端,按Ctrl+Alt+T键打开一个新的终端,输入ros2命令,可以看到对应的返回结果,就表示ROS 2已经正确安装完成。
$ ros2
usage: ros2 [-h] [--use-python-default-buffering] Call `ros2 <command> -h` for more detailed usage. ...ros2 is an extensible command-line tool for ROS 2.options:-h, --help show this help message and exit--use-python-default-bufferingDo not force line buffering in stdout and instead use the python default buffering, which might beaffected by PYTHONUNBUFFERED/-u and depends on whatever stdout is interactive or notCommands:action Various action related sub-commandsbag Various rosbag related sub-commandscomponent Various component related sub-commandsdaemon Various daemon related sub-commandsdoctor Check ROS setup and other potential issuesinterface Show information about ROS interfaceslaunch Run a launch filelifecycle Various lifecycle related sub-commandsmulticast Various multicast related sub-commandsnode Various node related sub-commandsparam Various param related sub-commandspkg Various package related sub-commandsrun Run a package specific executablesecurity Various security related sub-commandsservice Various service related sub-commandstopic Various topic related sub-commandswtf Use `wtf` as alias to `doctor`Call `ros2 <command> -h` for more detailed usage.