ラズパイ3で無線LANを有効にした時のお話

ふと思い立って最近いじってなかったラズパイ3で無線LANを有効にした時のお話。

Contents

環境

実機: ラズパイ3(私が買った時で5980円だったはず)
OS: Ubuntu(Ubuntu Meta ではなくて普通にUbuntu)

uname -a
Linux ubuntu 4.4.0-1090-raspi2 #98-Ubuntu SMP Wed May 9 13:34:02 UTC 2018 armv7l armv7l armv7l GNU/Linux

cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.4 LTS (Xenial Xerus)"

# raspi2って書いてるけど大丈夫かな…

動機

ラズパイを無線LANで繋げたい

単純に、どうやってCUIで無線LAN接続の設定するんだろう、と思った知識欲です。

ラズパイを有効活用したい

ちょっと思うところがあってファイルサーバにしたかったのです。
思うところの内容はきっと今後書きます。

まずはラズパイ起動

いきなり問題発生。

なぜキーボードを認識しないのだ
なぜHDMIでテレビに映らないのだ

いきなり困った。こんなところでハマりたくない。

とりあえずランケーブル繋いで、ノートPCでスキャンしてラズパイ発見してことをしのぐ。
不思議な現象が起きたもんだ。

無線LAN設定を行う(なかなか行えない)

無線LANのアダプタの名前を確認するために ifconfig を叩く。

そう、wlan0が出てこない。
wlan0 : no such device
(意訳: なんでwlan0があると思ったのバカなのしぬのぷぷぷ)

やんなっちゃう

私は大人なのでまずは落ち着いてググることにする。
こういう記事を見つける。

カーネルをアップデートするとWiFiが認識されなくなる
https://github.com/ryuichiueda/raspimouse_book_info/issues/1

まぁそういう報告があるならこの件もおそらくそうなんだろう。

対策はまとめていただいているようで、それはこちら。
https://github.com/ryuichiueda/raspimouse_book_info/blob/master/trouble_reports/wifiproblem.md

ただしここに書いてるコード(wget)を実行しても404だと言われたので、探して以下のコードを実行。

cd /lib/firmware/brcm/
wget https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43430-sdio.bin
wget https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43430-sdio.txt
shutdown -r now

これでwlan0が認識されるようになった。

無線LANの設定を行う

ここまででifconfigしてwlan0が見えるようになった。

パスワードの設定を行う

ここから下の作業はここのサイトを参考にした。
http://takuya-1st.hatenablog.jp/entry/2015/05/17/155229

wpa_passphraseコマンドがいるらしい。っていうわけでインストール。

apt install wpasupplicant

私の環境では最終的にパスワードを書き込むファイルが存在していなかったので、以下のコマンドで書き込み。
既に存在している人は>じゃなくて>>にした方がいいかもしれない。

sudo wpa_passphrase my_ssid my_password > /etc/wpa_supplicant/wpa_supplicant.conf
network={
    ssid="ssid"
    #psk="xxxxxxxxxxxxxx"
    psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}

書き込まれる結果は2行目以降で、ssidはsssid、コメントアウトされているpskは平文のパスワード。コメントアウトされていないpskは暗号化されたパスワードのよう。

パスワード設定はこれで終わり。

ネットワーク設定に無線LANの設定を追加

/etc/network/interfacesに追記します。
以下の情報を適当な位置に追記。

sudo vi /etc/network/interfaces
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

2行目は「wlan0のインタフェースをマシン起動時に自動で起動しますよ」
3行目は「wlan0はdhcpでIPを取得しますよ」
4行目は「WPAの設定ファイルはここに置いていますよ」

という認識です。間違っていたら教えてください。

ここまで来たら接続確認

ifdown wlan0
ifup wlan0

問題なさそうだったらOK。

最後にマシンを再起動しても大丈夫かを確認。

/etc/init.d/networking restart

私の環境での謎現象

今まではラズパイの操作は有線LANを指して、SSHで接続していた。

今回無線で繋げられるようになって、以下の現象が起こることが分かった。

  • LANケーブルを抜いた状態でラズパイ起動するとIPが割り振られる。
  • このときsshのポートは一切開いていない。(普段からsshのポートしか空いていないが)
  • LANケーブルを差す。有線のIPも割り振られる。
  • このとき有線と無線両方のsshのポートが開いている。
  • LANケーブルを抜く。
  • 有線で取得したIPがまだ生きている。有線、無線両方のIPともポートが開いている。

なんで?

ラズパイでUbuntu構築時の思い出

おおむねここに書かれている記事のことをしたと思う。
https://qiita.com/misoragod/items/7b03c74e2abc4f2010ec

このサイトの記事の「重要(これをやらないと、apt-get upgradeを実行したあとに起動しなくなる。)」に書かれているように、ここに書いてる内容を初回のOS起動する前にやっておかないとapt upgradeした後に起動しなくなった。本当に焦った。

で、ちょっとうろ覚えだが、起動したときに編集するファイル(/boot/firmware/config.txt)が見つからなくて、結局DD for windowsでSDカードに書き込んだ後にsublime textで編集した記憶がある。
DD for windows使ったっけなぁ…うまくいかなかったからから違うソフト使った気がするなぁ。

以上思い出したことでした。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする