日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

Ubuntu 20中在LXD容器内安装ROS

發布時間:2023/12/15 Ubuntu 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu 20中在LXD容器内安装ROS 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

快速構建并銷毀一個完整的ROS套件。
關于容器的更多細節可以參考linuxcontainer.org

配置容器

基礎lxd創建工作

安裝lxd

~$ sudo snap install lxd

安裝后用

~$ sudo lxc info

查看信息如下:

If this is your first time running LXD on this machine, you should also run: lxd init To start your first instance, try: lxc launch ubuntu:18.04 …… …… ……

初始化lxd
根據提示運行

~$ sudo lxd init

按照默認一路回車

Would you like to use LXD clustering? (yes/no) [default=no]: Do you want to configure a new storage pool? (yes/no) [default=yes]: Name of the new storage pool [default=default]: Name of the storage backend to use (btrfs, dir, lvm, zfs, ceph) [default=zfs]: Create a new ZFS pool? (yes/no) [default=yes]: Would you like to use an existing empty block device (e.g. a disk or partition)? (yes/no) [default=no]: Size in GB of the new loop device (1GB minimum) [default=30GB]: Would you like to connect to a MAAS server? (yes/no) [default=no]: Would you like to create a new local network bridge? (yes/no) [default=yes]: What should the new bridge be called? [default=lxdbr0]: What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: Would you like the LXD server to be available over the network? (yes/no) [default=no]: Would you like stale cached images to be updated automatically? (yes/no) [default=yes] Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]:

查看lxc的profile

~$ sudo lxc profile list +---------+---------------------+---------+ | NAME | DESCRIPTION | USED BY | +---------+---------------------+---------+ | default | Default LXD profile | 0 | +---------+---------------------+---------+

創建ROS lxc配置

創建lxc的ros profile

~$ sudo lxc profile create rosp Profile ros created

修改lxc的ros profile

~$ sudo lxc profile edit ros

修改文件至如下:

### This is a YAML representation of the profile. ### Any line starting with a '# will be ignored. ### ### A profile consists of a set of configuration items followed by a set of ### devices. ### ### An example would look like: ### name: onenic ### config: ### raw.lxc: lxc.aa_profile=unconfined ### devices: ### eth0: ### nictype: bridged ### parent: lxdbr0 ### type: nic ### ### Note that the name is shown but cannot be changedconfig: ### X Window顯示environment.DISPLAY: :0 ### 從宿主機映射userid至容器raw.idmap: both 1001 1000 ### 增加ros repositoriesuser.user-data: |#cloud-configruncmd:- "apt-key adv --fetch-keys https://raw.githubusercontent.com/ros/rosdistro/master/ros.key"- "apt-add-repository http://packages.ros.org/ros2/ubuntu"- "apt-add-repository http://packages.ros.org/ros/ubuntu" description: ROSX0:path: /tmp/.X11-unix/X0source: /tmp/.X11-unix/X0type: disk ### 網絡設置為橋接eth0:name: eth0nictype: bridgedparent: lxdbr0type: nicroot:path: /pool: defaulttype: disk name: ros used_by: []

說明

  • 查看現有id可以用如下命令
  • ~$ id uid=1001(xh) gid=1001(xh) groups=1001(xh),27(sudo)
  • repositories的地址,參照ROS官方安裝手冊中增加ROS 2和ROS 1的repositories
  • 使用X0設備用作XWindow顯示,若有多張顯卡,也可以使用其他顯卡
  • ~$ ls /tmp/.X11-unix/ X1024 X1025
  • 查看現有網絡設置可以用如下命令
  • ~$ ifconfig eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.46.29 netmask 255.255.255.0 broadcast 192.168.46.255inet6 fe80::bb30:ed6a:6ec:6bbd prefixlen 64 scopeid 0x20<link>ether 48:0f:cf:37:a8:a4 txqueuelen 1000 (Ethernet)RX packets 26905 bytes 4373082 (4.3 MB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 15366 bytes 1836647 (1.8 MB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0device interrupt 20 memory 0xf7800000-f7820000lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>loop txqueuelen 1000 (Local Loopback)RX packets 195 bytes 16883 (16.8 KB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 195 bytes 16883 (16.8 KB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

    取可連接外網的網卡名

    確認ros profile創建成功

    ~$ sudo lxc profile list +---------+---------------------+---------+ | NAME | DESCRIPTION | USED BY | +---------+---------------------+---------+ | default | Default LXD profile | 0 | +---------+---------------------+---------+ | ros | ROS | 0 | +---------+---------------------+---------+

    啟動容器

    使用lxc launch創建相關的ros容器
    我們這里使用ubuntu 20.04的鏡像

    ~$ sudo lxc launch -p ros ubuntu:20.04 rosgalactic Creating rosgalactic Starting rosgalactic

    用lxc exec來啟動容器內的bash shell

    ~$ sudo lxc exec rosgalactic -- bash root@rosgalactic:~#

    在默認情況下,shell是以root賬戶啟動的
    用exit命令可以退出該shell。

    指定用戶啟動
    我們可以用–login來指定啟動的賬戶

    ~$ sudo lxc exec rosgalactic -- su --login ubuntu To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details.ubuntu@rosgalactic:~$ id uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),117(netdev),118(lxd) ubuntu@rosgalactic:~$

    安裝ROS

    ubuntu@rosgalactic:~$ sudo apt install ros-galactic-desktop

    關于ROS本身安裝中的問題請參照ROS2學習(一).Ubuntu 20.04安裝ROS2 Galactic 。

    啟動確認

    ubuntu@rosgalactic:~$ rqt

    添加快速啟動參數

    ~$ sudo lxc alias add ubuntu 'exec @ARGS@ --user 1000 --group 1000 --env HOME=/home/ubuntu -- /bin/bash --login' ~$ sudo lxc alias list +--------+-----------------------------------------------------------------------------------+ | ALIAS | TARGET | +--------+-----------------------------------------------------------------------------------+ | ubuntu | exec @ARGS@ --user 1000 --group 1000 --env HOME=/home/ubuntu -- /bin/bash --login | +--------+-----------------------------------------------------------------------------------+ ~$ sudo lxc ubuntu rosgalactic ubuntu@rosgalactic:~$ source /opt/ros/galactic/setup.bash ubuntu@rosgalactic:~$ ros2 run demo_nodes_cpp talker

    至此,大功告成!

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的Ubuntu 20中在LXD容器内安装ROS的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 午夜爱爱免费视频 | 五月婷婷六月丁香综合 | 天天操夜夜欢 | 九色.com| 中文字幕日韩有码 | 18禁男女爽爽爽午夜网站免费 | 91影视在线观看 | 麻豆最新 | 日本a在线免费观看 | 日韩国产在线观看 | 狠狠的干狠狠的操 | 久草视频首页 | 久久久久国产精品 | 韩国久久久久久 | 又黄又爽视频 | 亚洲一区中文字幕 | 日本一区二区三区中文字幕 | 日本视频三区 | av少妇| 一本大道久久久久精品嫩草 | av解说在线观看 | 精品国偷自产国产一区 | 狠狠干导航 | 国产日韩av在线 | 日韩成人性视频 | 欧美一区二区三区成人久久片 | 瑟瑟网站免费 | 欧美激情亚洲 | 亚洲成人一二区 | www.狠狠爱 | 男男大尺度 | 国产精品无码免费播放 | 一级全黄裸体片 | 自拍偷拍第五页 | 欧美放荡性医生videos | 日韩国产传媒 | 91毛片网| 国产高清精品软件丝瓜软件 | 日本不卡一区二区三区 | 欧美午夜精品一区二区 | 亚洲影院中文字幕 | 亚洲精选在线观看 | 一级日韩一级欧美 | 国产精品久久久久久久久久免费 | 伊人网伊人网 | 亚洲影院在线 | 久久久久久久蜜桃 | 亚洲精品国产片 | 国产激情在线视频 | 欧美精品一区二区三区四区 | 国产综合日韩 | 人妻人人澡人人添人人爽 | 就去吻综合| 久久国产美女视频 | 成人一区二区三区在线观看 | 欧美一区2区 | 一区二区三区免费观看视频 | 黄色av网址在线 | 女人高潮被爽到呻吟在线观看 | 91麻豆成人精品国产免费网站 | 日韩欧美成人网 | 国产精品久久久91 | 国产一级一级国产 | 少妇一区二区三区 | 精品人妻一区二区三区蜜桃视频 | 九九九九九热 | 成人免费观看在线视频 | 男男做爰猛烈叫床爽爽小说 | 又黄又色的网站 | 青娱乐国产视频 | 又色又爽又黄无遮挡的免费视频 | 国产成人无码精品久久二区三 | 亚洲黄色第一页 | 久久国产精品久久 | 男人透女人免费视频 | 日韩av在线播放一区 | 131mm少妇做爰视频 | 亚洲一区二区自偷自拍 | 成人午夜视频免费观看 | 欧美一区二区三区视频 | 天堂免费在线视频 | 欧美乱妇日本无乱码特黄大片 | 国产日本一区二区三区 | 国产日韩亚洲 | 久久视频在线观看 | 国内偷拍精品视频 | 女人喷潮完整视频 | 成人免费无码大片a毛片抽搐色欲 | 人成免费 | 91啪在线观看 | 欧美一级爽aaaaa大片 | 欧美视频不卡 | 日本一区久久 | 午夜精品视频在线 | 中文在线不卡 | 69视频在线免费观看 | 亚洲射射| 91草草草 | 成人三区|