
玩上Linux
文章平均质量分 84
基于树莓派&腾讯云CentOS的Linux学习
慕雪华年
在校大氵生一枚
展开
-
【Linux】使用腾讯云搭建CentOS的Linux编程学习环境,实现多用户使用同一个云服务器
本篇博客将告诉你如何配置Linux环境,以及多人使用同一个服务器。博客中部分错误已进行修改原创 2022-05-06 14:44:12 · 6368 阅读 · 18 评论 -
【SLAM】在ORB_SLAM2的ROS模式下使用RealSense D435相机
先前已经编写了如何用TUM数据集运行ORB_SLAM3以及如何在ROS模式下运行ORB_SLAM3的博客,ORB_SLAM3是基于ORB_SLAM2的,甚至代码仓库中还有遗留的ORB_SLAM2命名空间namespace没有修正,二者不管是用TUM RGB-D数据集直接运行还是在ROS模式下运行的命令都完全一致。所以,在阅读本文之前,先参考上面给出的两篇博客,安装ORB_SLAM2的依赖库和ROS环境。原创 2025-04-12 15:21:38 · 845 阅读 · 0 评论 -
【SLAM】将realsense-viewer录制的rosbag视频导出成图片序列(RealSense D435)
本文介绍了如何将realsense-viewer录制的rosbag格式的视频导出成图片序列,方便合并成mp4视频或插入到论文中。本文首发于。原创 2025-04-12 15:20:58 · 671 阅读 · 0 评论 -
【SLAM】ubuntu 18.04 下 OpenCV 3.2.0 的 opencv_example 运行闪退
在amd64的ubuntu 18.04 desktop上编译安装 OpenCV 3.2.0 的时候,我遇到了cmake构建错误。错误的核心报错如下status: [7;说来奇怪,之前在 ubuntu 22.04 arm 中启动的 ubuntu 18.04docker容器内编译安装 OpenCV 3.2.0 时并没有遇到此报错。可能是网络因素导致文件无法正常下载。status: [7;Status=7;原创 2025-04-12 15:19:47 · 1005 阅读 · 0 评论 -
【SLAM】ubuntu 18.04 编译安装 OpenCV 3.2.0 时出现哈希错误
在amd64的ubuntu 18.04 desktop上编译安装 OpenCV 3.2.0 的时候,我遇到了cmake构建错误。错误的核心报错如下status: [7;说来奇怪,之前在 ubuntu 22.04 arm 中启动的 ubuntu 18.04docker容器内编译安装 OpenCV 3.2.0 时并没有遇到此报错。可能是网络因素导致文件无法正常下载。status: [7;Status=7;原创 2025-04-12 15:19:17 · 692 阅读 · 0 评论 -
【SLAM】在 ubuntu 18.04 arm 中以ROS环境编译与运行ORB_SLAM3
在ubuntu18.04arm中于ROS环境编译与运行ORB_SLAM3,并以TUM和EuRoC数据集测试了ROS下单目、双目和RGB-D运行。原创 2025-02-15 20:47:44 · 1455 阅读 · 0 评论 -
【Linux】在 ubuntu 18.04 arm 容器中安装ROS环境
在ubuntu18.04arm(docker容器)中安装ROS环境。原创 2025-02-15 20:47:11 · 1258 阅读 · 0 评论 -
【SLAM】于AutoDL云上GPU运行GCNv2_SLAM的记录
配置GCNv2_SLAM所需环境并实现AutoDL云端运行项目的全过程记录。原创 2025-02-02 14:13:45 · 638 阅读 · 0 评论 -
【SLAM】于ubuntu18.04上纯CPU运行GCNv2_SLAM的记录(ARM64/AMD64)
配置GCNv2_SLAM所需的环境并实现纯cpu运行项目的全过程记录。原创 2025-02-02 14:11:41 · 1437 阅读 · 0 评论 -
【Linux】opencv在arm64上提示找不到libjasper-dev
解决opencv在arm64上提示找不到libjasper-dev的问题。本文首发于。原创 2025-02-01 15:52:42 · 888 阅读 · 1 评论 -
【VM】VirtualBox安装ubuntu22.04虚拟机
阅读本文之前,请先根据教程安装virtulbox虚拟机软件。原创 2025-02-01 15:50:15 · 2078 阅读 · 0 评论 -
【VM】VirtualBox安装CentOS8虚拟机
阅读本文前,请先根据安装VirtualBox虚拟机软件。原创 2025-02-01 15:48:44 · 917 阅读 · 0 评论 -
【VMware】VMware安装ubuntu-22.04虚拟机
阅读本文前,请根据先行安装VMware虚拟机软件。原创 2025-02-01 15:47:59 · 2123 阅读 · 1 评论 -
【Linux】CentOS8虚拟机的基本环境配置
刚开始安装的系统只有基础的允许环境,缺少我们需要的开发软件。这时候就需要用软件源来进行软件的下载与安装。你可以简单理解为,软件源就是Linux下的软件商店。这可不是windows中那个没多少人用的软件商店,在Linux下,除非系统需要在大内网中隔离执行(为了安全缘故),一般都会使用软件源来配置/安装各类软件。在我们使用的CentOS系列Linux中,软件包管理器是yum,基本的命令如下,用途参考之后的注释。因为这些命令需要修改系统变量,所以都需要在root下才有权限执行。原创 2025-02-01 15:46:42 · 978 阅读 · 0 评论 -
【Linux】wsl2安装ubuntu并移动安装位置
本文首发于。原创 2024-10-05 15:02:47 · 4208 阅读 · 1 评论 -
【WSL】解决‘wsl:检测到localhost代理配置,但未镜像到WSL‘问题
出现这个问题的原因是你的宿主机开启了代理,但是代理对wsl并没有起作用。如果你想让wsl也能使用代理,就需要进行配置。如果不需要则可以忽略这个提示。写完后保存,重启wsl即可(在windows的powershell中执行)注意,每次更换代理都需要重启wsl才会生效。wsl会在右下角弹出消息提示。今天使用wsl2的centos的时候遇到了这个问题。如果你的wsl不需要使用代理,请不要修改此设置!再次启动wsl,不再弹出上述提示。原创 2024-10-05 15:02:08 · 3105 阅读 · 0 评论 -
【Linux】wsl虚拟机时间和实际时间不符合
显示最新commit的提交时间是明天,给我吓一跳,然后才发现原来是wsl里面的时间不对。,本文写于12月12日,但wsl中的时间是12月10日,肯定是不对。执行后,在windows的命令行里面执行如下命令,重启wsl子系统。偶然遇到了这个问题,触发原因是电脑在开启wsl的情况下进入了。模式,且在无网络情况下几天不使用。在wsl内部使用如下命令进行时间同步。Linux下看时间的命令是。然后开启wsl,发现。原创 2024-10-05 15:00:11 · 583 阅读 · 0 评论 -
【Linux】如何用一条命令终止某个后台进程?
的,进程收到9号信号后一定会被终止。后台进程就需要我们知道这个进程的名字,然后查询这个进程的PID,再用kill发送信号将其终止。在之前我都是用下面这两个命令来处理的。原创 2024-08-30 06:51:54 · 443 阅读 · 0 评论 -
【Linux】升级OpenSSH版本规避远程代码执行漏洞
本文首发于升级OpenSSH版本规避远程代码执行漏洞。原创 2024-08-30 06:47:30 · 1268 阅读 · 0 评论 -
【Linux】Linux64位环境下编译32位报错的解决办法
linux64位环境编译32位程序原创 2024-08-28 07:18:37 · 1028 阅读 · 0 评论 -
【网络】QUIC协议和HTTP3
本文首发于面试常考,临时抱佛脚学一下。参考 https://zhuanlan.zhihu.com/p/266578819。原创 2024-08-28 07:17:19 · 1106 阅读 · 0 评论 -
【网络】P2P打洞原理
P2P即 Peer to Peer,是一种对等连接方式,纯P2P架构包含如下内容没有总是在线的服务器任意端之间直接通信对等方之间可以间断链接,并可以动态改变IP地址文件分发(BT下载)流媒体VolP内网穿透式访问(建立P2P链接,直接和内网主机通信)即本文即将要讲述的P2P打洞。原创 2024-08-28 07:16:16 · 1954 阅读 · 0 评论 -
【Linux】如何用一条命令终止某个后台进程?
的,进程收到9号信号后一定会被终止。后台进程就需要我们知道这个进程的名字,然后查询这个进程的PID,再用kill发送信号将其终止。在之前我都是用下面这两个命令来处理的。原创 2024-08-28 07:15:20 · 914 阅读 · 0 评论 -
WSL2的Ubuntu22.04修改hostname主机名
其中hostname修改为你想要的主机名,generateHosts选项代表不自动生成hosts文件(我的理解是不要自动重置)。如果想在不修改windows主机名的情况下,在WSL中修改主机名,可以使用WSL的配置文件。修改为你刚刚更新的新用户名,其他内容不动。没有正常修改为新的hostname,请检查修改是否正确。初次修改后我遇到了这个sudo切换的错误,这是因为你的。回到windows的命令行中重启wsl即可生效。文件,默认情况下,该文件应该长下面这样。你需要做的是将文件中。后面只有一个点,不带。原创 2024-06-03 20:26:07 · 2342 阅读 · 0 评论 -
【Linux】ubuntu/centos8安装zsh终端
ubuntu配置zsh原创 2024-04-01 14:23:57 · 2174 阅读 · 0 评论 -
【nginx】nginx通过配置文件阻止海外ip访问
后文出现的网站是来自APNIC(Asia Pacific Network Information Center),其是IP地址管理机构之一,负责亚洲、太平洋地区。原创 2024-04-01 14:22:39 · 3655 阅读 · 1 评论 -
【C++】Google Gtest测试框架的使用
本文首发于gtest模块的安装参考站内教程本文使用的gtest版本为1.14.0;原创 2024-04-01 14:20:26 · 3119 阅读 · 0 评论 -
【Linux】ubuntu安装google gtest框架
本文首发于ubuntu 22.04.03 LTS 安装 google gtest 框架。原创 2024-04-01 14:17:58 · 2880 阅读 · 1 评论 -
【Linux】Linux64位环境下编译32位报错skipping incompatible的解决办法
代码很简单,是一个打印指针大小的代码,在32位下指针大小是4,64位下指针大小是8;在linux下可以使用下面的命令查看你的系统位数。选项编译32位程序的时候,出现了下面的两种报错。如题,当我尝试在wsl2的ubuntu中使用。原因是当前缺少32位的开发库,需要安装。安装后重试,编译成功。原创 2024-04-01 14:17:14 · 1768 阅读 · 0 评论 -
【Linux】gcc中__builtin_expect的作用
【Linux】gcc中__builtin_expect的作用原创 2024-01-24 11:14:21 · 1148 阅读 · 0 评论 -
【Linux】Ubuntu22.04版本下实现gcc版本的快速切换
有的时候,不同版本的gcc会造成一些细微的差异,导致相关的一些工具不兼容,比如用于单元测试覆盖率生成的gcov/lcov工具,在不同的gcc版本下可能会出现不同的结果。为了确定是否是gcc编译器版本不同造成的这些差异,有的时候需要在一台主机上装多个版本的gcc,不停的切换以测试问题。假设我们的ubuntu主机上安装了gcc 11.4 版本和 gcc 9.5 版本,且当前gcc命令指向的是 11.4 版本,那么你可以使用gcc-9命令来使用9.5版本的gcc。原创 2023-12-29 21:09:50 · 14947 阅读 · 2 评论 -
【Linux】WSL安装的Ubuntu不支持POSIX消息队列(已解决)
如题,我的win10上安装了wsl的ubuntu后(微软商店下载的wsl的Ubuntu)这个系统内部不支持POSIX的消息队列,虽然有头文件,但是没有实现,会报错。如果想找个简单的办法呢,那就是用systemV的消息队列,可这是个,我用virtualbox安装的虚拟机就能正常使用。所以肯定得解决这个问题,换成systemV的消息队列就有点「掩耳盗铃」的意味了。原创 2023-10-17 21:21:08 · 780 阅读 · 0 评论 -
【Linux】高级IO和多路转接 | select/poll/epoll
Reactor模型是基于事件驱动的,通过一个或者多个输入同时传递给服务端进行处理服务端请求程序处理传入的多个请求,并分发到相应的处理线程基于IO多路转接(多路复用)模型:多个链接通用一个阻塞对象,引用程序只需要在一个阻塞对象等待,无需阻塞等待所有链接;当有新链接或者事件就绪的时候,由操作系统通知应用程序,开始进行业务处理基于线程池复用线程资源:不必给每个链接单独创建线程,而是将链接完成后的业务处理交付给已有线程池中的线程进行处理,一个线程在生命周期中可以处理多个链接的业务。原创 2023-09-04 20:58:05 · 609 阅读 · 0 评论 -
【Linux】root和子用户都能执行的命令,sudo无法执行(已解决)
全流程帖子 https://ask.oceanbase.com/t/topic/35604437/7。原创 2023-09-01 21:33:43 · 778 阅读 · 0 评论 -
【Linux】centos8安装bison3.8
的教程,感觉这个软件很小众啊,百度找不到安装教程,最终还是在起脚旮旯里面翻出来了很久之前的文档,好在没有过时;虽然centos8中你可以使用yum直接安装,但是哪个安装的版本太低了,达不到如今的需求。这个目录,如果你查看过安装后的bison,你会发现它的安装包的逻辑是和。里面安装的东西没有在path中,没有办法直接执行,需要我们将其软链接到。的版本,已经是2015年的东西了,最新的版本已经到3.8了;如果你安装的路径不同,那就去你安装路径下找。如果你的安装正确了,应该可以在。配置安装路径,这里我使用了。原创 2023-08-30 22:09:42 · 2829 阅读 · 0 评论 -
【Linux】centos8安装cmake3.27.4
下好了之后,用ftp软件传到云服务器或者虚拟机上,我用的是centos8系统,安装之前先准备好这些依赖项。把下载好的安装包传上去后,解压(在root用户下操作)第一步,去官网下安装包,一定不要下错了。耐心等候完成后,依次运行下面两个命令。出现如下信息就是搞定了。解压完毕后进入文件夹。最终判断是否安装成功。原创 2023-08-30 22:09:11 · 1430 阅读 · 0 评论 -
【网络】IP网络层和数据链路层
数据链路层的作用:两个设备(同一种数据链路节点)之间进行传递数据;以太网是一种技术标准;既包含了数据链路层的内容, 也包含了一些物理层的内容。例如: 规定了网络拓扑结构, 访问控制方式, 传输速率等;以太网帧格式理解mac地址理解arp协议理解MTU。原创 2023-08-22 21:44:09 · 1425 阅读 · 0 评论 -
【网络】自定义协议 | 序列化和反序列化 | Jsoncpp
json是一个kv键值对的序列化方式,每一个key都对应了一个value这就有点类似c++中的map,不过json能做的更多json可以在里面嵌套添加更多的内容,不管是字符串还是整形,还能是bool类型的true/false;因为json对反序列化序列化的控制很是不错,可读性也很好,所以被广泛使用!相比于自己写一个序列化方式,直接用别人的轮子,也不错👻类似的序列化框架还有xml为了方便对序列化采用的方式进行控制,这里我使用了预处理指令来进行判断,只要我们在文件头定义了MYPROTOCOL。原创 2023-08-08 08:19:33 · 409 阅读 · 0 评论 -
【网络】自定义协议 | 序列化和反序列化 | 以tcpServer为例
所谓序列化,就是将结构化的数据(可以暂时理解为c的结构体)转换成字符串的方式,发送出去int year;int month;int day;比如上面这个日期结构体,我们要想将其序列化,就可以用一个很简单的方式拼接成一个字符串(序列化)客户端收到这个字符串之后,就可以通过查找分隔符的方式,取出三个变量,将其转成int后存放回结构体(反序列化)这样,我们就算是规定了一个序列化和反序列化的方式,也就是一个简单的协议!原创 2023-08-08 08:18:58 · 759 阅读 · 0 评论 -
【VMware】VMware安装CentOS8-Stream虚拟机
本文首发于VMware安装CentOS8-Stream虚拟机more。原创 2023-06-14 23:24:37 · 3293 阅读 · 2 评论