Raspberry Pi 安装 Ubuntu Server 20.04 LTS (无显示器, 无网线)

为了省钱, 没有入手 mini hdmi 数据线. 手头也没有可用的双绞线/网线. 于是就想办法通过仅 WiFi 的方式在树莓派上安装 Ubuntu Server 20.04 系统.

硬件

  1. Raspberry Pi 4B 树莓派4B
  2. TF disk 32GB
  3. TF 读卡器
  4. Type C 电源 (我使用了小米手机随赠的适配器, 注意输出应达到 5V-3A, 也就是快充头)

主机 PC

笔记本电脑或台式机, PC 等,下文统一称为 主机

软件 & 环境

  1. Windows 10
  2. 烧制 TF disk 的软件: Raspberry Pi Imager for Windows
  3. Ubuntu Server 20.04 LTS (虽然可以通过 Raspberry Pi Imager 下载, 但是鉴于网络状态, 强烈建议另行下载系统镜像!)
  4. VS Code (比记事本好用的编辑器)
  5. 打开主机的热点, 记录 WiFi 名称和密码

树莓派 Raspberry Pi

安装好散热片

步骤

  1. TF disk 插入读卡器, 插入主机
  2. 双击下载好的 ubuntu-20.04.1-preinstalled-server-arm64+raspi.img.xz (它的图标是树莓), 唤起 Raspberry Pi Imager.
  3. 此时界面中的 operating system 栏已填好. SD Card 栏选择刚刚插入的 TF disk. 如果有多个选项, 而又难以确定. 可以弹出所有的USB, 再重新插入要烧制的 TF disk.
    Raspberry Pi Imager
  4. 点击 Write. 阅读提示, 并确认.
  5. 去喝杯水. 等待写入(烧制)镜像, 这个过程要一段时间, 如果用的是 USB 3.0 的读卡器会快一些.
  6. 烧制好的 TF disk 会自动弹出. (如果是有显示器或网线的安装方式, 此时插进树莓派 Raspberry Pi 的卡槽, 接通电源即可)
  7. 拔下读卡器, 再次插入主机
  8. 此电脑可以找到system-boot的盘符. 右键, 选择在 VS Code 中打开. 界面左侧是文件夹内的文件列表, 右面是打开的文件内容
  9. 修改网络配置. 打开network-config文件
# This file contains a netplan-compatible configuration which cloud-init
# will apply on first-boot. Please refer to the cloud-init documentation and
# the netplan reference for full details:
#
# https://cloudinit.readthedocs.io/
# https://netplan.io/reference
#
# Some additional examples are commented out below

version: 2
ethernets:
  eth0:
    dhcp4: true
    dhcp6: true
    optional: true
#wifis:
#  wlan0:
#    dhcp4: true
#    optional: true
#    access-points:
#      myhomewifi:
#        password: "S3kr1t"
#      myworkwifi:
#        password: "correct battery horse staple"
#      workssid:
#        auth:
#          key-management: eap
#          method: peap
#          identity: "me@example.com"
#          password: "passw0rd"
#          ca-certificate: /etc/my_ca.pem

在文件末尾新行加入你的 WiFi 配置.

wifis:
  wlan0:
    dhcp4: true
    dhcp6: true
    optional: true
    access-points:
      "xxxxx":
        password: "yyyyy"

其中, "xxxxx"是 WiFi 名称, 引号要保留; "yyyyy"是密码, 引号要保留.

这样就配置好了网络. 第一次通电的时候, 会通过这些信息连接网络

  1. 配置用户名. ubuntu 留有一组默认的用户名, 要求用户第一次登陆的时候改掉它. 但是第一次接通电源的时候是无法连接到 WiFi 的, 需要断电再上电. 此时通过 SSH 登陆会遇到问题 passwd: Authentication token manipulation error. 因此, 我们需要使默认的用户名密码, 再坚持一会儿, 坚持到下一次登陆. 打开文件 user-data, 找到
chpasswd:
  expire: true
  list:
  - ubuntu:ubuntu

expire: true 改为 expire: false 这样系统可以用这组默认用户名密码 ubuntu:ubuntu 登陆系统, 直到修改了密码.

  1. 保存文件, 弹出 TF disk.
  2. 把 TF disk 插入树莓派 RaspBerry Pi
  3. 接通电源.
  4. 通过主机的热点界面观察树莓派是否接入. (这次是不会接入的:P)
  5. 等待 2 分钟, 树莓派上的绿色指示灯不再闪烁, 断电
  6. 再次接通电源.
  7. 观察主机的热点界面, 这次可以看到树莓派接入了, 名称是 ubuntu (而非 raspberrypi)
  8. 这样, 树莓派的IP也获得了. SSH 登陆树莓派.
  9. 修改默认密码! 这很重要! 避免被恶意攻击!
sudo passwd ubuntu

结束, 至此可以愉快地在树莓派上使用 ubuntu server 了~

参考

Ubuntu Server Raspberry Pi 4 Image: Cannot login using default credentials “authentication token manipulation error”
How to Install Ubuntu Server on a Raspberry Pi
How to install Ubuntu on your Raspberry Pi | Ubuntu

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据