admin 管理员组

文章数量: 887021

目录

一、准备工作

二、安装Ubuntu 22.04.1 LTS

1. 下载Ubuntu 22.04.1 LTS

2. 移动到非系统盘

三、启动Ubuntu遇到的报错及解决方案

四、换源

五、安装ROS

1. 设置编码

2. 添加源

3. 安装ROS

4. 设置环境变量

5. 测试



一、准备工作

控制面板——程序——程序和功能——启动或关闭Windows功能

 

开启如图所示三项重启电脑

二、安装Ubuntu 22.04.1 LTS

1. 下载Ubuntu 22.04.1 LTS

打开Microsoft Store,搜索并下载Ubuntu 22.04.1 LTS

(安装Windows Subsystem for Linux前一定要先安装Ubuntu,否则移动Ubuntu位置会报错)

2. 移动到非系统盘

ps:默认安装在C盘,可以移动安装位置,建议移动到其它盘

三、启动Ubuntu遇到的报错及解决方案

报错:

WslRegisterDistribution failed with error: 0x800701bc

解决方案:

下载安装适用于 x64 计算机的最新 WSL2 Linux 内核更新包

下载链接

https://wslstorestorage.blob.core.windows/wslblob/wsl_update_x64.msi

安装后

报错:

adduser: Please enter a username matching the regular expression configured

via the NAME_REGEX[_SYSTEM] configuration variable.  Use the `--force-badname'

option to relax this check or reconfigure NAME_REGEX.

解决方案:

把大写的首字母,改成小写即可

ps:输入的密码不显示

四、换源

Ubuntu默认的软件源在国外,可能会造成下载软件卡顿,因此需要换源,这里我选择更换为阿里源。

1.双击Ubuntu22.04 LTS图标,在命令行中输入

# 备份原来的软件源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

# 编辑软件源

sudo nano /etc/apt/sources.list

2.将原来的内容替换为阿里源

deb http://mirrors.aliyun/ubuntu/ jammy main restricted universe multiverse

deb-src http://mirrors.aliyun/ubuntu/ jammy main restricted universe multiverse

deb http://mirrors.aliyun/ubuntu/ jammy-security main restricted universe multiverse

deb-src http://mirrors.aliyun/ubuntu/ jammy-security main restricted universe multiverse

deb http://mirrors.aliyun/ubuntu/ jammy-updates main restricted universe multiverse

deb-src http://mirrors.aliyun/ubuntu/ jammy-updates main restricted universe multiverse

deb http://mirrors.aliyun/ubuntu/ jammy-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun/ubuntu/ jammy-proposed main restricted universe multiverse

deb http://mirrors.aliyun/ubuntu/ jammy-backports main restricted universe multiverse

deb-src http://mirrors.aliyun/ubuntu/ jammy-backports main restricted universe multiverse

Ctrl + O保存, enter, Ctrl + X退出

3.更改后

4. 更新升级软件

在Ubuntu命令行中依次执行如下命令:

# 更新软件源

sudo apt-get update -y

# 升级所有软件

sudo apt-get upgrade -y

五、安装ROS

1. 设置编码

sudo apt update

sudo apt install locales

sudo locale-gen en_US en_US.UTF-8

sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8

export LANG=en_US.UTF-8

2. 添加源

1.通过检查此命令的输出,确保已启用Ubuntu Universe存储库。

apt-cache policy | grep universe

正常情况

​ 

若没有看到像上面这样的输出行,依次执行如下命令:

sudo apt install software-properties-common

sudo add-apt-repository universe

2.继续执行如下命令:

sudo apt update && sudo apt install curl gnupg lsb-release

sudo curl -sSL https://raw.githubusercontent/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

正常情况

报错:curl: (7) Failed to connect to raw.githubusercontent port 443 after 0 ms: Connection refused

解决

sudo nano /etc/hosts

加上一行

199.232.28.133 raw.githubusercontent

Ctrl + O保存, enter, Ctrl + X退出

3. 安装ROS

sudo apt update

sudo apt upgrade

安装桌面版

sudo apt install ros-humble-desktop

安装时间较长,慢慢等待

4. 设置环境变量

source /opt/ros/humble/setup.bash

echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc

5. 测试

通过以下命令启动一个数据的发布者节点:

ros2 run demo_nodes_cpp talker

启动另一个终端,通过以下命令启动一个数据的订阅者节点

ros2 run demo_nodes_py listener

本文标签: 子系统 Linux ROS LTS