§Wi-Fi接続
さて、Wi-Fi接続をしましょう。このセクションの内容は、参考文献[1]に詳しく記載してあります。
STEP.1 設定ファイルの作成
無線LAN子機(USBアダプター型)をUSBポートに差し込んでください。以下のコマンドを入力してください。”ESSID”はWi-FiルータのSSIDに、”pass”はパスワードに書き換えてください。”(ダブルクォーテイション)は記載しません。
pi@raspberrypi:~ $ sudo wpa_passphrase "ESSID" "pass" | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf pi@raspberrypi:~ $ sudo vim /etc/wpa_supplicant/wpa_supplicant.conf
以下のようなconfファイルが作成されていれば、問題ありません。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="ESSID" #psk="pass" psk=123abc456def789ghi0 }
このファイルを以下のように書き換えます。iキー。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="ESSID" key_mgmt=WPA-PSK proto=RSN pairwise=CCMP group=CCMP #psk="pass" psk=123abc456def789ghi0 }
今度は”(ダブルクォーテイション)は残します。Escキー、「:wq」記述、Enterキーで保存します。通信方式で多少記述が異なるようです。
STEP.2 IPの設定
以下のコマンドを入力し、ファイルを表示します。
pi@raspberrypi:~ $ sudo vim /etc/network/interfaces
このファイルを以下のように書き換えましょう。iキー。
auto lo iface lo inet loopback #auto eth0 allow-hotplug eth0 iface eth0 inet manual auto wlan0 allow-hotplug wlan0 #iface wlan0 inet manual iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp
Escキー、「:wq」記述、Enterキーで保存します。
pi@raspberrypi:~ $ sudo reboot
再起動をかけて設定終了です。
STEP.3 Wi-Fi接続してみる
再起動が終了したら、実際にWi-Fi接続してみましょう。ところが、今までのIPアドレスとWi-FiでのIPアドレスは別(MACアドレスではないので)になっているはずです。そこで、1度有線でログインし、以下のコマンドを入力してください。
pi@raspberrypi:~ $ ifconfig
メッセージが表示されます。wlan0の中に、
inetアドレス:192.168.xxx.xxx
というような4つの数字が並んでいれば、Step1, 2が成功していることになります。もし数字ではない場合はStep1, 2に問題があるはずなので戻りましょう。成功していた場合は、
pi@raspberrypi:~ $ exit
で1度ログアウトし、今度はWi-Fi接続でログインしてみましょう。IPアドレスはifconfigで表示されたものを使用します。セキュリティ警告という窓が出れば、Wi-Fi接続成功になります。LANケーブルは必要なくなったので、抜いてもらってもかまいません。
STEP.4 ifconfigの結果を自動送信
Step.3まででWi-Fi接続は完了です。本Stepを実行するかどうかは任意です。しかしこのままでは、使用サーバの環境によって、IPアドレスが変更されてしまう可能性があります。そのたびにIPアドレスを調べるのは面倒かもしれません。そこで、起動されるたびにifconfigの結果をメールで自動送信するという方法があります。この方法をとれば、IPアドレスが変更されても1度Raspberry Piのコンセントを抜いてもう1度起動させれば、自動的にメールでIPアドレスを教えてくれるので安心です。
この方法は参考文献[2]に詳しく記載してあります。まずはプログラムを束ねるディレクトリを作成し、その中に[2]で公開されたpythonファイルを作成します。
pi@raspberrypi:~ $ mkdir program // programという名前のディレクトリを作成。 pi@raspberrypi:~ $ ls -l // ディレクトリ内の一覧を表示。programという名前のフォルダがあれば成功。 pi@raspberrypi:~ $ cd program // programという名前のフォルダへ移動。 pi@raspberrypi:~/program $ sudo vim ifconfig_mail.py // ifconfig_mail.pyという名前のpythonプログラムを作成。
持っているGmailアカウントを利用します。説明の都合上[2]のファイル参照(ソースファイルのため・・・)します。問題がある場合は、1度 info@000juku.com 宛までご連絡お願いします。iキー。次を記述。
# -*- coding: utf-8 -*- import smtplib from email.MIMEText import MIMEText from email.Utils import formatdate import commands from_addr = 'xxx@gmail.com' to_addr = 'yyy@docomo.ne.jp' login_user = 'xxx@gmail.com' login_pass = 'password' msg = commands.getoutput('ifconfig') mail = MIMEText(msg) mail['Subject'] = 'Raspberry Pi Notification' mail['From'] = from_addr mail['To'] = to_addr mail['Date'] = formatdate() send = smtplib.SMTP('smtp.gmail.com', 587) send.ehlo() send.starttls() send.ehlo() send.login(login_user, login_pass) send.sendmail(from_addr, [to_addr], mail.as_string()) send.close()
7行目から10行目に送信するアドレスや持っているGmailアカウントのパスワードなどを記述してください。’(シングルクォーテイション)は記述します。Escキー、「:wq」を記述、Enterキーを押して保存します。
pi@raspberrypi:~ $ sudo vim /etc/rc.local
先のpythonプログラムが起動時に実行されるように、設定ファイルに次のコマンドを記述する。
#!/bin/sh -e _IP=$(hostname -I) || true if [ "$_IP" ]; then printf "My IP address is %s\n" "$_IP" fi python /home/pi/program/ifconfig_mail.py exit 0
8行目を記述。/home/の後のpiはあなたのusernameを記述してください。保存。再起動をして、しばらくしてメールが送られて来れば設定成功です。Pythonのヴァージョンアップをすると送信されなくなってしまうようです。原因・対策をご存知の方は、教えて頂けたら幸いです。
§リモートデスクトップ接続
Tera Termのリモート接続ではファイルの位置構造を把握しにくいですし、毎回コマンドを打つのも大変なので、リモートデスクトップ接続も行えるようにしましょう。このセクションの内容は、参考文献[3]に詳しく記載してあります。
pi@raspberrypi:~ $ sudo apt-get update pi@raspberrypi:~ $ sudo apt-get install xrdp // xrdpのインストール pi@raspberrypi:~ $ cd /etc/xrdp/ // ディレクトリの変更 pi@raspberrypi:/etc/xrdp~ $ sudo wget http://w.vmeta.jp/temp/km-0411.ini // 設定ファイルをダウンロード pi@raspberrypi:/etc/xrdp~ $ sudo ln -s km-0411.ini km-e0010411.ini pi@raspberrypi:/etc/xrdp~ $ sudo ln -s km-0411.ini km-e0200411.ini pi@raspberrypi:/etc/xrdp~ $ sudo ln -s km-0411.ini km-e0210411.ini // ここまでキーボードの配列追加 pi@raspberrypi:/etc/xrdp~ $ sudo service xrdp restart // サービスの開始
WebとWindowsの検索からリモートデスクトップ接続を実行します。「コンピュータ(C):」にはIPアドレスを入力し、「接続」をクリックします。ユーザ名とパスワードを入力し、アクセスできれば成功です。
§日本語設定
このままでは日本語表示ではありません。日本語に設定するには、以下のコマンドを入力してください。
pi@raspberrypi:~ $ sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname pi@raspberrypi:~ $ sudo apt-get install ibus-anthy pi@raspberrypi:~ $ sudo reboot
もう1度リモートデスクトップ接続しなおして、日本語になっていれば成功です。(参考文献[4])