gpt4 book ai didi

ubuntu-server - Raspberry pi 4 上的 Ubuntu Focal headless 设置 - 首次重启前的 cloud init wifi 初始化

转载 作者:行者123 更新时间:2023-12-03 13:39:01 27 4
gpt4 key购买 nike

我在使用云初始化配置为 Raspberry pi 4 上的 Ubuntu Server Focal (ARM) 设置完整的 headless 安装时遇到了麻烦。这样做的全部目的是在出现故障时简化 SD 卡交换。我正在尝试使用 cloud-init 配置文件为 lan/wlan 应用静态配置,创建新用户,为新用户添加 ssh 授权 key ,安装 docker 等。但是,无论我做什么,似乎都没有应用 Wifi 设置在第一次重启之前。
步骤 1:将镜像刻录到 SD 卡上。
第二步:用配置文件重写 SD 卡 system-boot/network_config 和 system-boot/user-data

network-config

version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: false
optional: true
addresses: [192.168.100.8/24]
gateway4: 192.168.100.2
nameservers:
addresses: [192.168.100.2, 8.8.8.8]
wifis:
wlan0:
optional: true
access-points:
"AP-NAME":
password: "AP-Password"
dhcp4: false
addresses: [192.168.100.13/24]
gateway4: 192.168.100.2
nameservers:
#search: [mydomain, otherdomain]
addresses: [192.168.100.2, 8.8.8.8]

user-data

chpasswd:
expire: true
list:
- ubuntu:ubuntu

# Enable password authentication with the SSH daemon
ssh_pwauth: true
groups:
- myuser
- docker
users:
- default
- name: myuser
gecos: My Name
primary_group: myuser
groups: sudo
shell: /bin/bash
ssh_authorized_keys:
- ssh-rsa AAAA....
lock_passwd: false
passwd: $6$rounds=4096$7uRxBCbz9$SPdYdqd...

packages:
- apt-transport-https
- ca-certificates
- curl
- gnupg-agent
- software-properties-common
- git
runcmd:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
- add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- apt-get update -y
- apt-get install -y docker-ce docker-ce-cli containerd.io
- systemctl start docker
- systemctl enable docker
## TODO: add git deployment and configure folders
power_state:
mode: reboot
在第一次启动时,cloud-init 总是应用回退网络配置。
我还尝试为 wifi 应用 headless 配置 here .

Created wpa_supplicant.conf and copied it to SD system-boot folder.

trl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=RO

network={
ssid="AP-NAME"
psk="AP-Password"
}

Also created an empty ssh file and copied it to system-boot


运行命令总是失败,因为在第一次启动时 cloud-init 应用了后备网络配置。重新启动后,应用 lan/wlan 设置,创建用户,添加 ssh 授权 key 。但是我仍然需要通过 ssh 进入 PI 并安装剩余的软件包:docker 等,我想避免这种情况。难道我做错了什么?

最佳答案

我不确定您是否找到了解决方法,但我将分享我在研究选项时发现的一些信息。

  • Ubuntu 的 Raspberry Pi WiFi Setup Page声明使用时需要重新启动 network-config带无线网络:

  • Note: During the first boot, your Raspberry Pi will try to connect to this network. It will fail the first time around. Simply reboot sudo reboot and it will work.


    this repo 中有一个有趣的解决方法和方法.
  • 它声明它是为 18.04 创建的,但它应该适用于 20.04,因为两个服务器版本都使用 netplansystemd-networkd .

  • 就个人而言,我走了一条不同的路。
  • 我创建包含我的设置和包的自定义镜像,然后刻录到 uSD 或通过 TFTP 服务器共享。我很惊讶这是多么容易。
  • 有一篇关于创建自定义图像的好帖子 here
  • 一些重要的附加信息是 here

  • 关于ubuntu-server - Raspberry pi 4 上的 Ubuntu Focal headless 设置 - 首次重启前的 cloud init wifi 初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62930794/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com