树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)

树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)

环境介绍及情况介绍

环境:

  • 树莓派4B 系统:Ubuntu 22.04 server(SD卡搭载)
  • 笔记本 系统:Windows11

介绍:

由于手边没有显示器,所以在给树莓派刷了系统之后,没办法进入系统。也尝试使用了手机开热点,同处于一个WIFI下进行远程ssh操控,发现手机热点不稳定,操作的时候总会出现卡顿的情况。于是自己琢磨了一下怎么通过网线直连来进行通信。前前后后调了大半天,记录一下整个调试过程。

整个过程可能会有更简单的修改配置文件就OK的方法,我这个方法是在我现有水平下进行尝试成功的方法,不等于最有效或者是最优解,欢迎大家补充说明。

树莓派刷系统

可以直接参考官网给出的教程,刷系统直接使用Raspberry Pi Imager即可,先跟着官网走到第三步即可

在写入镜像之前,注意在Imager右下角的设置按钮里面允许远程连接

树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)_第1张图片

官网刷机教程

先说一下手机开热点,然后连接到同一个WIFI进行远程ssh连接的方法

连接到同一个热点(WIFI)建立连接

首先用手机开一个热点(WIFI),热点名字不要带中文

然后我们在windows下进入刷系统的SD卡,编辑system-boot下的network-config文件,用记事本或者vscode打开都是可以的,能编辑即可。

wifis:
  wlan0:
    dhcp4: true
    optional: true
    access-points:
      "热点(WIFI)名字(不含中文)":
        password: "密码"

写好了之后,保存退出即可。弹出SD卡

然后将电脑连接到热点(WIFI)。将SD卡插回到树莓派中,然后给树莓派上电。静待一会之后,我们可以在手机的热点后台,或者路由器的后台管理查看树莓派的IP地址,记录。

此时,电脑和树莓派都处于同一个局域网下面,因此此时可以使用ssh来进行连接

win+R打开运行,输入cmd打开命令行,然后我们尝试ping能否ping通

我这里的查到的设备IP是192.168.43.152

ping 192.168.43.152

# 返回消息如下:
正在 Ping 192.168.43.152 具有 32 字节的数据:
来自 192.168.43.152 的回复: 字节=32 时间=509ms TTL=64
来自 192.168.43.152 的回复: 字节=32 时间=57ms TTL=64
来自 192.168.43.152 的回复: 字节=32 时间=118ms TTL=64
来自 192.168.43.152 的回复: 字节=32 时间=80ms TTL=64

192.168.43.152 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 57ms,最长 = 509ms,平均 = 191ms
    
代表以及ping通

然后我们进行ssh连接

ssh [email protected] # 树莓派装Ubuntu的默认用户名就是ubuntu
# 然后提示输入密码,默认情况下密码也是ubuntu

输入密码之后就进入ubuntu了,由于第一次登录,系统为了安全性会要求你修改密码,我们直接修改即可。

官网原文

Changing the password

When prompted, use “ubuntu” for the password. (The cursor won’t move when you type the password.) The first thing Ubuntu will do is to ask you to change it to a secure password. Once done, you can reconnect again with the SSH command and the new password.

Success! You are now connected to Ubuntu Server running on your Raspberry Pi.

这样我们就成功进入ubuntu啦

笔记本和树莓派通过网线建立连接

在同一个热点(WIFI)实现了连接之后,我们就可以开始配置下一步连接了。如果我们使用的是手机热点建立的连接,那么手机热点有可能会不稳定导致整个体验过程不好,因此,在此基础上,我又开始琢磨如何使用网线直连两台设备。

经过一番学习,我了解到了直接网线把两个设备连接起来是没有办法进行通信的。我们需要将树莓派和我们windows的连接的两个网口同时设置为静态IP,这样两者就可以相互找到,并且实现互通了。

1.设置树莓派静态IP

进入/etc/netplan文件夹,编辑里面的50-cloud-init.yaml文件的以下内容:

注意:我们在这可以备份一下我们的文件,防止写错了

cp 50-cloud-init.yaml 50-cloud-init.yaml.copy

改名我们可以直接使用mv指令来进行改名

mv 50-cloud-init.yaml.copy 50-cloud-init.yaml
network:
    ethernets:
        eth0:
          addresses: [192.168.50.2/24]
          dhcp4: no
          optional: true

    version: 2

说明一下:

  • eth0代表着树莓的有线网卡名字,可以使用ifconfig查命令
  • 每层级缩进应确保严格对齐
  • 冒号后输入内容需要空一格
  • IP地址需要[]括起来
  • /24代表子网掩码是255.255.255.0
  • dhcp4: no代表关闭动态IP
  • 不设置网关

然后保存文件之后,应用配置

sudo netplan apply

未报错即可

然后将树莓派通过网线与你的笔记本连接,此时可以查看ip地址了

ifconfig

返回

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.50.2  netmask 255.255.255.0  broadcast 192.168.50.255

可以看到此时的IP地址已经改为静态IP地址了(有时候可能是192.168.50.x即别的数字)

配置好了树莓派,然后就可以开始配置Windows的静态IP了

2.设置Windows11静态IP

右键WIFI图标,进入网络和Internet设置 -> 进入高级网络设置 -> 更多网络适配器选项

树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)_第2张图片

找到连接树莓派的网口,在这个地方如果不确定哪个是连接树莓派的网口,我们可以通过插拔网线来查看是哪一个网口

右键进入属性,在共享界面允许其他网络用户通过此计算机的Internet连接来连接,并选择用以太网来连接
树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)_第3张图片

修改IPv4属性中的IP地址,改为静态IP地址,注意IP地址前三个数组要和Ubuntu下的一样,点击确定
树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)_第4张图片

3.建立连接

再次打开Windows的cmd,在命令行输入连接指令

ssh [email protected]
# 这里的IP地址和Ubuntu下ifconfig查看的IP相同

输入密码即可成功建立连接
树莓派4B(Ubuntu 22.04 server)与Windows11网线直连(无显示器)_第5张图片

你可能感兴趣的:(ROS2,ubuntu,树莓派)