web-dev-qa-db-ja.com

Ubuntu Server 18.04用のRaspberry Pi 3オンボードWiFiのセットアップ方法は?

Ubuntu Server 18.04用のRaspberry Pi 3 B +オンボードWiFiのセットアップ方法は?特に、netplan

"Ubuntu Server 16.04でRaspberry Pi 3のオンボードwifiを使用する方法?" などの既存の回答は、/etc/network/interfacesnetplanが置き換えられたと記載されているため、適用されないようです。 ifupdown

# ifupdown has been replaced by netplan(5) on this system.  See
# /etc/netplan for current configuration.

これは Raspberry Pi 3のUbuntuサーバーイメージ のクリーンインストールです。

##### 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

buntu Wiki RaspberryPI によると、必要なパッケージはすでに配置されているはずです。

18.04.2以降、linux-firmwareおよびlinux-firmware-raspi2パッケージには、Pi 3Bおよび3B +の組み込みWiFiに必要なファイルが含まれるようになりました。

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構成例 を提供します。

ネットプランを構成するには、/etc/netplan/拡張子(.yamlなど)を付けて/etc/netplan/config.yamlの下に構成ファイルを保存し、Sudo netplan applyを実行します。

...まだ、RaspberryPiに固有のガイダンスはありません。 ...特に、RaspberryPi Ubuntu Serverインストール上の既存の/etc/netplan/50-cloud-init.yamlファイルに関して。

##### 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ファイルを使用するとします。 WiFiネットワークのSSIDとパスワードをaddするにはどうすればよいですか?そして、既存の有線イーサネットをそのまま残しますか?

8
l --marc l

以下の手順は、Ubuntu Server 18.04でnetplanを使用して永続的なWiFiセットアップを提供することが判明しました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

Your-cloud-init.yamlファイルにWiFiアクセス情報を追加します。

# 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 Server 18.04を使用して抽出したもの)ARM Image and Netplan "Gist Larn によって言及されたリンク。Gistは、Piをブリッジに変換するため、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を有効にします。

必要に応じて、 Avahi をインストールして マルチキャストDNS を有効にします。 Avahiは、mDNS/DNS-SD/RFC 3927/Zeroconf/Bonjour仕様をサポートしています。

Sudo apt install avahi-daemon 

別のコンピューターからmDNS解像度をリモートで確認します。

ping my-server-name.local
ssh [email protected]
16
l --marc l