Как настроить встроенный WiFi Raspberry Pi 3 B + для Ubuntu Server 18.04? В частности, с netplan
?
Выходящие ответы, такие как «Как использовать встроенный Wi-Fi на Raspberry Pi 3 с Ubuntu Server 16.04?» , похоже, больше не применяются, поскольку /etc/network/interfaces
утверждает, что netplan
заменил ifupdown
.
# ifupdown has been replaced by netplan(5) on this system. See
# /etc/netplan for current configuration.
Это чистая установка образа Ubuntu Server для Raspberry Pi 3 .
##### release ###########################
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic
##### kernel ############################
Linux 4.15.0-1034-raspi2 #36-Ubuntu SMP PREEMPT Fri Apr 5 06:21:41 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
Согласно Ubuntu Wiki RaspberryPI необходимые пакеты уже должны быть на месте.
Начиная с 18.04.2, пакеты linux-firmware и linux-firmware-raspi2 теперь содержат необходимые файлы для встроенного Wi-Fi на Pi 3B и 3B +.
blockquote>
sudo lshw -C network
*-network:0 DISABLED description: Wireless interface physical id: 2 logical name: wlan0 serial: b8:27:eb:69:f2:3b capabilities: ethernet physical wireless configuration: broadcast=yes driver=brcmfmac driverversion=7.45.18 firmware=01-6a2c8ad4 multicast=yes wireless=IEEE 802.11 *-network:1 description: Ethernet interface physical id: 3 logical name: eth0 serial: b8:27:eb:3c:a7:6e size: 1Gbit/s capacity: 1Gbit/s capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=lan78xx driverversion=1.0.6 duplex=full ip=172.16.76.7 link=yes multicast=yes port=MII speed=1Gbit/s
Netplan.io предоставляет несколько общих примеров конфигурации Netplan .
Чтобы настроить netplan, сохраните файлы конфигурации под
blockquote>/etc/netplan/
с расширением.yaml
(например,/etc/netplan/config.yaml
), затем запуститеsudo netplan apply
.... пока нет руководства по RaspberryPi. ... в частности, в отношении существующего файла /etc/netplan/50-cloud-init.yaml в установке RaspberryPi Ubuntu Server.
##### Netplan config #################### [/etc/netplan/50-cloud-init.yaml] # This file is generated from information provided by # the datasource. Changes to it will not persist across an instance. # To disable cloud-init's network configuration capabilities, write a file # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following: # network: {config: disabled} network: version: 2 ethernets: eth0: dhcp4: true match: macaddress: <MAC 'eth0' [IF1]> set-name: eth0
Итак, учитывая использование
netplan
и по умолчанию сгенерированный файл.yaml
. Как добавить SSID и пароль сети WiFi? И оставить существующий проводной Ethernet на месте?
Шаги ниже, как находили, обеспечили персистентное использование установки WiFi netplan
с сервером Ubuntu 18.04 ubuntu-18.04.2-preinstalled-server-arm64+raspi3.img.xz
изображение на Raspberry Pi 3 B +.
Система обновления:
sudo apt update
sudo apt full-upgrade
sudo reboot
Определите имена интерфейса:
ip link show
# 1: lo: <LOOPBACK,UP,LOWER_UP> …
# 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> … state UP …
# 3: wlan0: <BROADCAST,MULTICAST> … state DOWN
Определите your-cloud-init.yaml и открытый для редактирования.
cd /etc/netplan/
ls -l
# -rw-r--r-- 1 root root 666 May 15 22:00 50-cloud-init.yaml
### note your *cloud-init.yaml file name
### backup *cloud-init.yaml file
cp 50-cloud-init.yaml 50-cloud-init.yaml.bak
### edit *cloud-init.yaml
sudo nano 50-cloud-init.yaml
Добавьте информацию о доступе WiFi к your-cloud-init.yaml файлу.
# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
version: 2
ethernets:
eth0:
optional: true
dhcp4: true
# add wifi setup information here ...
wifis:
wlan0:
optional: true
access-points:
"YOUR-SSID-NAME":
password: "YOUR-NETWORK-PASSWORD"
dhcp4: true
Протестируйте, генерируйте и примените измененную конфигурацию your-cloud-init.yaml:
sudo netplan --debug try
(продолжите даже если успешный),sudo netplan --debug generate
(предоставляет больше подробную информацию в случае проблем с предыдущей командой),sudo netplan --debug apply
(если никакие проблемы во время предыдущих команд)Тест подтверждения:
sudo reboot
### wait, then without the wired ethernet connected ...
ssh ubuntu@wifi-ip-address
Вышеупомянутая последовательность была дистиллирована от "Raspberry Pi 3B/B + Беспроводной мост с помощью Сервера Ubuntu 18,04 ARM Image и Netplan" ссылка сути, упомянутая Larnu. Суть подходит вне просто включения WiFi начиная с его очередей Пи в Мост.
Некоторые дополнительные полезные WiFi устанавливают шаги.
Имя хоста набора.
sudo hostnamectl set-hostname my-server-name
sudo nano /etc/hosts
127.0.0.1 localhost
# add host name
127.0.0.1 my-server-name
sudo nano /etc/cloud/cloud.cfg
# Set preserve_hostname to true for persistance after reboot
preserve_hostname: true
Проверьте от локальной командной строки Raspberry Pi.
hostnamectl
# Static hostname: my-server-name
# Icon name: computer
# Machine ID: …
# Boot ID: …
# Operating System: Ubuntu 18.04.2 LTS
# Kernel: Linux 4.15.0-1036-raspi2
# Architecture: arm64
Включите mDNS.
При желании включите Многоадресной передаче DNS путем установки Avahi. Avahi поддерживает спецификацию mDNS/DNS-SD/RFC 3927/Zeroconf/Bonjour.
sudo apt install avahi-daemon
Удаленно проверьте mDNS разрешение от другого компьютера.
ping my-server-name.local
ssh ubuntu@my-server-name.local
Проблема связана с этой ошибкой https://bugs.launchpad.net/ubuntu/+source/netplan.io/+bug/1874377
В настоящее время Ubuntu 20.04.1 требуется перезагрузка, хотя проблема должна быть исправлена. Кабельный интернет подключается сразу. Ubuntu 20.10 пока подключается к Wi-Fi даже без перезагрузки.