用windows自带WSL实现Ubuntu使用及ROS安装及gazebo黑屏解决

Windows自带WSL实现Ubuntu使用、ROS安装、可视化桌面、gazebo黑屏解决

  • 1 Ubuntu安装
    • 1.1 开放权限
    • 1.2 安装
    • 1.3 初始化
  • 2 桌面环境配置
    • 2.1 换镜像源
    • 2.2 安装可视化桌面
      • 2.2.1 远程桌面连接
  • 3 ROS安装及使用
    • 3.1 ROS安装
    • 3.2 gazebo安装使用

想用gazebo做四旋翼的可视仿真,然后就发现要用ROS,然后就发现要用Linux,之前在matlab上装PX4支持包发现win10有自带的Linux子系统,感觉不错,试一试。谁知道装的过程各种坑,自己总结下方法和一些可靠的链接(侵删),希望能帮上同道中人,另外有一个,子系统的能力还是不太够的,我是8代i5+8G内存,跑gazebo很卡,最后还是在移动硬盘装了个系统,给大家做个参照。

1 Ubuntu安装

Linux系统有多个具体的版本,debian/redhat/ubuntu…根据网上查到的教程,做ROS做gazebo的一般都是在Ubuntu系统下,俺也装这个。需要注意的是,win10下的Ubuntu子系统仅为一个bash命令行,具体的桌面环境等配置见第二节。

1.1 开放权限

两条指令,按这个做即可。

设置——>更新和安全——>针对开发人员——>开发人员模式

控制面板——>程序——>程序和功能——>启用或关闭Windows功能——>适用于Linux的Windows子系统——>确定 (然后重启)

1.2 安装

最简单的一步hhh,去微软的应用商店搜Ubuntu,如下,第一个是Ubuntu系统,每六个月更新一次;加上LTS是表示长期支持,一般时长为三年,这里我选择的是18.04LTS,选中你想装的,安装即可:
用windows自带WSL实现Ubuntu使用及ROS安装及gazebo黑屏解决_第1张图片

1.3 初始化

安装完成win键找到刚刚下好的软件,点击打开,然后一系列用户名和密码的设置balabala,小白要注意的是输入密码是不显示的,放心输,没问题的。

另外提一嘴,这个子系统由于是用商店安装的,路径是在C里面,不愿意的兄弟可以查下怎么改商店的安装路径,下面是以装在C盘为例子系统的路径:

C:\用户\你的名字 \AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs

至此,Ubuntu的基本安装到此结束,打开bash命令行,输入下面的指令,查看版本

lsb_release -a

我的截图如下所示:
用windows自带WSL实现Ubuntu使用及ROS安装及gazebo黑屏解决_第2张图片

2 桌面环境配置

由于我们的子系统仅有一个命令行,如果要做gazebo、ROS啥的,肯定得可视界面,方法俩,我只成功了远程那个(;′⌒`)。

2.1 换镜像源

Ubuntu本身提供的软件下载的源慢的不行,建议必须换源hhh。分步执行下面几条指令(命令行里直接右键就可以粘贴复制板上的内容):

1、备份原来的源,没啥用,但是个好习惯

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

2、用vim编辑器打开sources.list

sudo vim /etc/apt/sources.list

编辑器的使用:

  1. 键盘摁“i”键进入编辑模式
  2. esc键退出编辑
  3. :wq 推出并保存修改,:wq! 退出并放弃修改

进去了之后直接在文件最前面把新的源右键贴上去,保存退出即可,个人推荐清华和中科大的源,速度都还可以,如果你也是教育网那更好。

##清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
##中科大源

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

换完之后出来,执行下两步,更新源:

sudo apt-get update
sudo apt-get upgrade

亲身经历update应该蛮快的,upgrade有时候得花点时间。

2.2 安装可视化桌面

2.2.1 远程桌面连接

这个方法简单些,一次成功,但后面使用起来可能还得多做一些配置,下面的代码一行行做即可,我也是太理解,大概是做了一些桌面和连接的配置。

sudo apt-get install xrdp
sudo apt-get install xorg
sudo apt-get install xfce4

然后配置端口:

sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
sudo echo xfce4-session >~/.xsession
sudo service xrdp restart

然后搜索找到远程桌面连接,点击进入,输入127.0.0.1:3390 (3390也可能是3389,前者是本机IP,后者为端口),第二行输入你装系统时设置的用户名即可,如下所示:

用windows自带WSL实现Ubuntu使用及ROS安装及gazebo黑屏解决_第3张图片

然后连接就完事了。需要注意的是,之后每次重新启动你的子系统时都得在命令行里启动下xrdp

sudo service xrdp start

3 ROS安装及使用

重头戏来了,我在这儿几乎每步都踩到坑里了,最后总结下来说到底就是网的问题。

3.1 ROS安装

ros有多个版本,每一版维护四年,我装的18的melodic,下面安装命令中出现melodic时得替换成自己的那一版。这里推荐直接去b站搜古月的ROS入门21讲课,有详细的安装教程视频,可以直观对比自己的有没出错,我这边按顺序介绍下安装流程和坑和坑的解决办法。
推荐一个无敌的链接,几乎所有的坑都有了
2021-06-01 Ubuntu 1604安装ROS+ ROS初始化失败的解决方案
首先添加软件源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

然后添加密钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

然后update并安装ROS,这一步时间较长,网不好的可能会错,不行就开4G,再不行换个源试试,反正记住不是是吗配置环境啥啥的,就是网不行。

sudo apt update
sudo apt install ros-melodic-desktop-full

然后初始化rosdep,步骤是下面两步:

sudo rosdep init
rosdep update

多半会错,多尝试几次多换网应该能解决,如果还不行可以参照下面这个方法,效果很好。

ubuntu16.04 安装ros时报错ERROR cannot download default sources list from: https://raw.githubusercontent.c

需要注意的是,装完ros后这边要记得改回来,不然后面会出现安装相关的问题。

然后把ros路径加入环境变量中,当然,你也可以直接在主文件夹下打开.bshrc,把source /opt/ros/melodic/setup.bash写到最下面,反正迟早得学会这个技能的。

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

最后装一些ros安装依赖相关的包

sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

至此,安装大功告成,试验一下效果,按序执行下面的三条指令,每个指令都需要新打开一个终端

roscore

rosrun turtlesim turtlesim_node

rosrun turtlesim turtle_teleop_key

如果成功的话,应该能看到一个小海龟,键盘可以控制它运动,如下(如果你没装图形界面,你可以就运行roscore看是否成功)
用windows自带WSL实现Ubuntu使用及ROS安装及gazebo黑屏解决_第4张图片

3.2 gazebo安装使用

子系统应该是没有预装gazebo的,得自己装下

sudo apt-get install ros-melodic-gazebo-ros-pkgs ros-melodic-gazebo-ros-control

装完运行

gazebo

估计不成,world世界那边显示不出来一片漆黑。

网上有很多解决方案,都是针对Ubuntu系统的,但是,我们多半不是这个问题,是远程连接的问题,在bash命令行输入下面的命令,把gazebo的显示也export到远程上

export GAZEBO_IP=127.0.0.1 

结束。

你可能感兴趣的:(ubuntu,linux)