ubantu20.04下配置ROS环境出现的一些问题以及解决方案

ubantu20.04下配置ROS环境出现的一些问题以及解决方案

因为自己配置的环境并不尽如人意,在处理包的依赖关系时有一些包在使用了厂家提供的处理方法后也无法处理好,故使用厂家提供的已经完成ros开发环境配置的ubuntu 20.04镜像系统文件。

运行该虚拟机时发现三点问题:

问题1:该虚拟机在物理主机连接wifi且能上网的情况下无法连接互联网
问题2:该虚拟机在运行指令roscore时出现了如下的报错信息

Value error: invalid master URI: http://:11311
The traceback for the exception was written to the log file

问题3:该虚拟机在桌面打开终端时,界面顶部有如下字样:
问题字样

问题解决

在查阅冰达机器人提供的文档过程中得知了虚拟机密码,在一次sudo并输入密码后问题三的顶部报错信息发生了变化:
变化

得知密码后,我们执行了

sudo rosdep init
rosdep update

运行结果为:

ERROR: cannot download default sources list from:
https://ghproxy.com/raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

可知该虚拟机仍处于未init的状态。
但是出现了一个很奇怪的现象,当我在~/catkin_ws目录下,在终端键入命令rosdep check --from-path src,而相应的输出则是:

All system dependencies have been satisfied
ERROR[robot_navigation]: Cannot locate rosdep definition for [cartographer_ros]
	rosdep key : cartographer_ros
	OS name    : ubuntu
	OS version : focal
	Data:
<no data>

而按照厂家所给的资料看,至少目前所有包的依赖关系都已经被满足了。
厂家资料

那么让我们回到开头那个报错信息去考虑是哪里有问题导致了我们的roscore指令无法执行。

尝试根据

https://blog.csdn.net/xiaodingqq/article/details/87690563?ops_request_misc=&request_id=&biz_id=102&utm_term=Value%20error:%20invalid%20master%20UR&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-87690563.142^v58^js_top,201^v3^add_ask&spm=1018.2226.3001.4187

给出的方案解决,并且多次修改相关环境变量,然而还是一直报错…
最终尝试在工作目录catkin_ws下重新进行了一次catkin_make,终于…报错信息变了:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kt1A30PU-1666013893326)(p4.png)]
事情看起来在向好的方向转变!

好吧我错了orz,其实按照上面贴出来的博文,通过gedit ~/.bashrc进入文件并修改环境变量并进行catkin_make就ok了,上面最近一张的报错信息是因为我受其他博文的影响将本应当改为localhost的字段改为了bingda亦即本机的名称,现在已经可以运行roscore了


那么接下来我们就来处理这台虚拟机无法联网的问题吧。
这里是解决方案

https://blog.csdn.net/jiesunliu3215/article/details/125021892?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166601345216781432974332%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166601345216781432974332&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-125021892-null-null.142^v58^js_top,201^v3^add_ask&utm_term=ubuntu%E6%97%A0%E6%B3%95%E8%81%94%E7%BD%91&spm=1018.2226.3001.4187

但是我还是想试试在接通网络之后,我们的roscore指令是否能够正常跑起来。
键入后我们得到如下结果:

... logging to /home/bingda/.ros/log/69210680-4e20-11ed-a3ba-3d17dbe6b03e/roslaunch-ubuntu-7938.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://localhost:42901/
ros_comm version 1.15.14


SUMMARY
========

PARAMETERS
 * /rosdistro: noetic
 * /rosversion: 1.15.14

NODES

auto-starting new master
process[master]: started with pid [7946]
ROS_MASTER_URI=http://localhost:11311/

setting /run_id to 69210680-4e20-11ed-a3ba-3d17dbe6b03e
process[rosout-1]: started with pid [7956]
started core service [/rosout]

显然,这告诉我们已经没有任何问题地运行了roscore!
但是问题三是因为虚拟机出现了什么问题抑或是我多虑了,这我还不清楚,也没有检索到相关的文章,期待有人可以给我一个答案。
唉,前后折腾了快一天多终于把这个环境给配完了…

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Ubuntu 20.04是一款流行的Linux操作系统,配置LNMP即配置Linux、Nginx、MySQL和PHP。 首先,确保你的Ubuntu 20.04系统已经安装并更新到最新版本。打开终端,使用以下命令进行系统更新: sudo apt update sudo apt upgrade 接下来,我们需要安装和配置Nginx。使用以下命令进行Nginx安装: sudo apt install nginx 安装完成后,你可以使用以下命令启动Nginx: sudo systemctl start nginx 确认Nginx是否成功启动,可以使用以下命令: sudo systemctl status nginx 接下来,我们需要安装MySQL。使用以下命令进行MySQL服务器的安装: sudo apt install mysql-server 安装完成后,你可以使用以下命令启动MySQL: sudo systemctl start mysql 确认MySQL是否成功启动,可以使用以下命令: sudo systemctl status mysql 然后,我们需要安装PHP及其扩展。使用以下命令进行PHP及其相关扩展的安装: sudo apt install php php-mysql php-fpm 安装完成后,你可以使用以下命令重启Nginx和PHP-FPM: sudo systemctl restart nginx sudo systemctl restart php-fpm 在配置LNMP时,你可能还需要根据自己的需求进行一些其他的配置和调整。比如,你可能需要修改Nginx的虚拟主机配置文件以指定网站根目录,或者配置MySQL的用户名和密码等。 总而言之,通过上述步骤,你可以在Ubuntu 20.04配置LNMP环境。请确保你遵循官方文档和安全最佳实践,以确保系统安全和稳定运行。 ### 回答2: 要在Ubuntu 20.04配置LNMP(Linux + Nginx + MySQL + PHP)服务器,需要按照以下步骤进行操作: 1. 安装Ubuntu 20.04操作系统:从Ubuntu官方网站下载最新版本的Ubuntu 20.04,并按照提示进行安装。 2. 更新系统:打开终端,运行以下命令更新系统软件包: ``` sudo apt update sudo apt upgrade ``` 3. 安装Nginx:运行以下命令安装Nginx服务器: ``` sudo apt install nginx ``` 4. 配置Nginx:打开终端,运行以下命令编辑Nginx主配置文件: ``` sudo nano /etc/nginx/nginx.conf ``` 修改配置文件以满足自己的需求,保存并退出。 5. 启动Nginx:运行以下命令启动Nginx服务器: ``` sudo systemctl start nginx ``` 6. 安装MySQL:运行以下命令安装MySQL数据库服务器: ``` sudo apt install mysql-server ``` 7. 配置MySQL:运行以下命令对MySQL进行一些基本配置: ``` sudo mysql_secure_installation ``` 根据提示设置root密码和其他相关选项。 8. 启动MySQL:运行以下命令启动MySQL服务器: ``` sudo systemctl start mysql ``` 9. 安装PHP:运行以下命令安装PHP和其他相关模块: ``` sudo apt install php-fpm php-mysql ``` 10. 配置PHP:打开终端,运行以下命令编辑PHP配置文件: ``` sudo nano /etc/php/7.4/fpm/php.ini ``` 修改配置文件以满足自己的需求,保存并退出。 11. 重启Nginx和PHP服务:运行以下命令重启Nginx和PHP: ``` sudo systemctl restart nginx sudo systemctl restart php7.4-fpm ``` 12. 测试LNMP配置:创建一个简单的PHP脚本,在Nginx的网站根目录中创建一个index.php文件,添加以下内容: ``` <?php phpinfo(); ?> ``` 打开浏览器,访问http://localhost/index.php,如果能够看到PHP信息页面,则表示LNMP配置成功。 以上是在Ubuntu 20.04配置LNMP服务器的基本步骤。根据实际需求,还可能需要进行其他配置和调整。 ### 回答3: 在Ubuntu 20.04配置LNMP(Linux, Nginx, MySQL, PHP)软件堆栈可以实现搭建一个功能强大的Web服务器。以下是配置LNMP的步骤: 1. 更新系统:使用以下命令更新系统软件包: ``` sudo apt update sudo apt upgrade ``` 2. 安装Nginx:使用以下命令安装Nginx: ``` sudo apt install nginx ``` 3. 配置Nginx:默认情况下,Nginx已经启动了,可以使用以下命令检查其状态: ``` sudo systemctl status nginx ``` 你还可以编辑“/etc/nginx/sites-available/default”文件来配置Nginx的虚拟主机和其他设置。 4. 安装MySQL:使用以下命令安装MySQL数据库: ``` sudo apt install mysql-server ``` 安装过程中会提示你设置MySQL的root密码。完成后,可以使用以下命令启动MySQL并检查其状态: ``` sudo systemctl start mysql sudo systemctl status mysql ``` 5. 配置MySQL:可以使用以下命令来进行MySQL的安全配置: ``` sudo mysql_secure_installation ``` 根据提示来设置MySQL的安全选项。 6. 安装PHP:使用以下命令安装PHP及其相关扩展: ``` sudo apt install php php-fpm php-mysql ``` 7. 配置PHP:可以编辑“/etc/php/7.4/fpm/php.ini”文件来配置PHP的一些全局设置。然后,使用以下命令重启PHP服务: ``` sudo systemctl restart php7.4-fpm ``` 8. 测试:可以创建一个简单的PHP脚本来测试LNMP堆栈是否正常工作。在“/var/www/html”目录下创建一个名为“info.php”的文件,并添加以下内容: ```php <?php phpinfo(); ?> ``` 保存文件后,通过访问"http://服务器IP地址/info.php"来查看PHP信息页面。 通过以上步骤,你已经成功配置了LNMP堆栈。当然,这只是LNMP堆栈的基本配置,你还可以根据自己的需求进行更多的定制和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值