Upgrade to Pro — share decks privately, control downloads, hide ads and more …

あなたのお家に眠るラズパイを救出したい

 あなたのお家に眠るラズパイを救出したい

IoTLT vol.33 資料 https://iotlt.connpass.com/event/67583/ (2017/12/03更新)

Masaki Koyanagi

November 16, 2017
Tweet

More Decks by Masaki Koyanagi

Other Decks in Programming

Transcript

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  15. 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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  34. 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

    View full-size slide

  35. 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ドライブとして
    マウントされる!

    View full-size slide

  36. 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]:~ を実行

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide