Slide 1

Slide 1 text

あなたのお家に眠る ラズパイを救出したい Name: Koyanagi Twitter: @mascii_k IoTLT vol.33 @ LINE 16 November 2017

Slide 2

Slide 2 text

自己紹介 mascii (ますきー) Twitter: @mascii_k GitHub, Qiita: @mascii Age: 24 Job: System Engineer

Slide 3

Slide 3 text

ラズパイ 眠ってませんか?

Slide 4

Slide 4 text

原因

Slide 5

Slide 5 text

解決策 これならPi Zero WでもOK!

Slide 6

Slide 6 text

OSイメージを microSDに書き込む シンプルな構成を シンプルに実現しよう 無線LANの設定 SSHの有効化 Zeroconfを利用した SSH接続

Slide 7

Slide 7 text

OSイメージを microSDに書き込む Let’s use Etcher! https://etcher.io/

Slide 8

Slide 8 text

OSをダウンロード ● Raspbian Stretch Liteをダウンロード https://www.raspberrypi.org/downloads/raspbian/

Slide 9

Slide 9 text

Etcherの設定 ● Auto-unmount on success をオフ 設定理由: イメージ書き込み直後に設定ファイルを書き込むため

Slide 10

Slide 10 text

EtcherでmicroSDに書き込む ● zipファイルのまま microSD に Flash! zipファイルを展開すると出てくる imgファイルでも書き込めます

Slide 11

Slide 11 text

よくある間違い ● イメージファイルをそのままコピー ● USBメモリにイメージを書き込む

Slide 12

Slide 12 text

https://mascii.github.io/wpa-supplicant-conf-tool/ 無線LANの設定 SSHの有効化 Let’s use the tool made by me!

Slide 13

Slide 13 text

設定ファイルを作成・保存 ● ブラウザ上で設定 ファイルを作成 ● 2つの作成ボタンを 右クリック→別名で 保存で microSD に ファイルを保存 https://mascii.github.io/wpa-supplicant-conf-tool/

Slide 14

Slide 14 text

設定ファイルの確認 ● microSD に2つのファイル が保存されていればOK ○ wpa_supplicant.conf ○ ssh.txt ● wpa_supplicant (1).conf, ssh (1).txtなどになってし まった場合はリネーム 一度、microSD に空の ssh.txt (または ssh) を 作成しないと、SSH接続ができなくなりました

Slide 15

Slide 15 text

microSD をラズパイへ ● microSD を取り出しラズパイにセット ● ラズパイに電源ケーブルを繋げれば、 無線LANに繋がった状態で起動する!

Slide 16

Slide 16 text

Raspberry Pi 2の場合 ● ELECOM WDC-150SU2Mがおすすめ ● 安い(700円)、挿すだけで使える! ○ (2017/12/03追記) Raspbian Jessie Lite までは 挿すだけで使えましたが、Raspbian Stretch Lite からは挿すだけで使えなくなっていました。 以下の記事を参照してドライバーインストール が必要です ○ http://teppodone.hatenadiary.jp/entry/ELEC OM_WDC-150SU2MonRaspberryPi

Slide 17

Slide 17 text

注意点 ● Pi 3, Zero Wの無線LAN機能やWDC-150SU2M では、2.4GHz帯のみ利用できます ○ SSIDに g や G が付くことが多い ● 有線LANでOKな方は、空の ssh.txt だけ作成 し、ルーターとラズパイを直接接続します ● このツールは WPA2-PSK が前提です ● IE11, Edgeの方は右クリック→保存ができないので、左ク リック→保存をしてください

Slide 18

Slide 18 text

Zeroconfを利用した SSH接続 Let’s use Zeroconf!

Slide 19

Slide 19 text

Zeroconfを使うメリット ● ルーターがRaspberry Pi に自動的に割り当てす るIPアドレスを調べる必要がなくなる 192.168.0.5 raspberrypi.local

Slide 20

Slide 20 text

Zeroconfの準備 ● macOS ○ 何もインストールしなくてOK ! ● Windows ○ iTunes または Bonjour Print Services が インストールされていればOK !

Slide 21

Slide 21 text

SSHクライアントの準備 ● macOS ○ 何もインストールしなくてOK ! ● Windows ○ Tera TermなどのSSHクライアントをインス トールする

Slide 22

Slide 22 text

SSH接続(macOS) ● ターミナルで ssh [email protected] ○ WARNINGが出る場合は、 ssh-keygen -R raspberrypi.local を実行してリトライ ● Are you sure you want to continue connecting? が出たら yes を入力 ● パスワードを聞かれたら raspberry を入力

Slide 23

Slide 23 text

SSH接続(Windows & Tera Term) ● Tera Termを起動しホスト(T)に raspberrypi.local を入力

Slide 24

Slide 24 text

SSH接続(Windows & Tera Term) ● セキュリティ警告が 出た場合は、チェック を入れて続行(C)をク リック

Slide 25

Slide 25 text

SSH接続(Windows & Tera Term) ● ユーザ名 pi ● パスフレーズ raspberry を入力しOKをクリック

Slide 26

Slide 26 text

SSH接続できた ! ● 勉強会会場の無線LANだと繋がらないことも... ➢ ポケットWiFiやテザリングを使う

Slide 27

Slide 27 text

THANKS! Raspberry Pi を救出できましたか?

Slide 28

Slide 28 text

TIPS SSH接続できた後にやること 知っておくと便利なこと

Slide 29

Slide 29 text

TIPS : ホスト名の変更 ● raspberrypi.local の raspberrypi の部分を変えたい ● SSH接続後に sudo raspi-config を実行する (半角英数字 と - だけ を使ってください) Enterキーで決定 Escキーで終了 Enter 再起動後 Enter

Slide 30

Slide 30 text

TIPS : piユーザーのパスワード変更 ● SSH接続後に passwd を実行する パスワードの長さが短いと更新に失敗することがあります

Slide 31

Slide 31 text

TIPS : Raspbianを最新の状態に更新 ● SSH接続後に ○ sudo apt-get update ○ sudo apt-get upgrade -y を実行する ● sudo apt-get install... でパッケージのインス トールがうまく行かない場合は、上記のコマンド を実行してみる

Slide 32

Slide 32 text

TIPS : Vim(テキストエディタ)をインストール ● Raspbianの vi コマンドはVimエディタではなくvi エディタ(使いにくい)なので要注意 ! ● SSH接続後に sudo apt-get install vim -y を実行する ○ インストール後は vi コマンドでVimが起動 TIPS : Git(バージョン管理ツール)をインストール ● SSH接続後に sudo apt-get install git -y を 実行する

Slide 33

Slide 33 text

TIPS : シャットダウンと再起動、SSH接続の終了 ● シャットダウン: sudo shutdown -h now ○ いきなり電源ケーブルを抜くより、このコマン ドを実行して数十秒経過してから電源ケーブ ルを抜いた方が良い ● 再起動: sudo reboot ● SSH接続の終了: exit

Slide 34

Slide 34 text

TIPS : PCから直接ファイルを操作 ● sshfsで、SSHと同じ認証方法を用いてPCから Raspberry Pi側のファイルを直接操作できます ○ Atomなどお好きなエディタが使えます! ● Windowsの場合、標準のメモ帳は改行コードLFに対 応していないので、使用厳禁! ○ AtomやVSCode, サクラエディタ, TeraPadなどを 使って編集してください

Slide 35

Slide 35 text

TIPS : PCから直接ファイルを操作(macOS) ● FUSE on OSXをインストール http://sourceforge.net/projects/osxfuse/ ● sshfsをインストール https://github.com/osxfuse/sshfs/releases ● マウントポイントを作っておく mkdir mountpoint ● マウントする(/home/pi) sshfs [email protected]:/home/pi mountpoint/ -o local ● アンマウントする diskutil unmount mountpoint 参考文献: https://qiita.com/ysk24ok/items/bb148530a55a4e55d99b

Slide 36

Slide 36 text

TIPS : PCから直接ファイルを操作(Windows) ● dokanの DokanSetup-1.0.5.1000.exeをダ ウンロードしてインストール https://github.com/dokan-dev/dokany/releases ● WinSshFSの previous.release-1.6.0-rc3.zipを ダウンロードして展開、 WinSshFS.exeを実行 https://github.com/Foreveryone-cz/win-sshfs/releases ● Addボタンをクリック、右図のよう に設定値を入れてSave ● 右下のMountボタンをクリック ○ /home/piがSドライブとして マウントされる!

Slide 37

Slide 37 text

TIPS : ファイルの転送(macOS) ● SCPコマンドで、SSHと同じ認証方法を用いてPC・ラ ズパイ間のファイルの転送ができます ● 例: Raspbianのpiユーザーのホームディレクトリ上にあるファイル (~/file.txt)をmacOSのデスクトップ(~/Desktop)へ送りたい ○ macOSのターミナルから scp [email protected]:~/file.txt ~/Desktop を実行 ● 例: macOSのデスクトップ上にあるファイル(~/Desktop/file.txt)を Raspbianのpiユーザーのホームディレクトリ(~)へ送りたい ○ macOSのターミナルから scp ~/Desktop/file.txt [email protected]:~ を実行

Slide 38

Slide 38 text

TIPS : ファイルの転送(Windows & Tera Term) ● Reveiveの場合は ~/ (piユーザーのホームディレクトリ)が使えないので /home/pi/を使う ● 日本語ファイル名は文字化けするので注意 ● OS標準の改行コードの違い(Raspbian : LF, Windows : CRLF)に注意

Slide 39

Slide 39 text

● JavaScriptを使ってRaspberry Piで何かやって みたい場合はNode.jsをインストール ! TIPS : Node.jsのインストール Raspberry PiにNode.jsとnpmの最新 版をインストールする https://qiita.com/mascii/items/77c685df65c4cbca9315 ● Python (2.x系)であれば、Raspbianに標準で入っています

Slide 40

Slide 40 text

● PCとラズパイをLANケーブルで直接接続して SSH接続をしたい場合... TIPS : PCとラズパイを直接接続 Raspberry PiとMac or Windows PCを 有線で直接繋いでさくっとSSH接続する https://qiita.com/mascii/items/7d955395158d4231aef6