Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
あなたのお家に眠るラズパイを救出したい
Search
Masaki Koyanagi
November 16, 2017
Programming
4
3k
あなたのお家に眠るラズパイを救出したい
IoTLT vol.33 資料
https://iotlt.connpass.com/event/67583/
(2017/12/03更新)
Masaki Koyanagi
November 16, 2017
Tweet
Share
More Decks by Masaki Koyanagi
See All by Masaki Koyanagi
Vitestを使った型テストの始め方
mascii
6
2.7k
WebHID API でリングコン のセンサー値を取得してみた
mascii
1
940
Pros and Cons で考える Vue 2 Composition API
mascii
4
1k
Joy-ConをJavaScriptでプレゼンリモコンにした話
mascii
0
510
TypeScript で Optional Chaining を使ってみた
mascii
1
680
Vue.jsでCSS Modulesを使ってみた
mascii
0
130
不変量
mascii
1
140
Nuxt.js+Firebaseで個人サービスを作るまで
mascii
1
2.3k
JavaScriptのバージョンの話
mascii
1
2.1k
Other Decks in Programming
See All in Programming
暇に任せてProxmoxコンソール 作ってみました
karugamo
2
720
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
160
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
210
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
わたしの星のままで一番星になる ~ 出産を機にSIerからEC事業会社に転職した話 ~
kimura_m_29
0
180
[JAWS-UG横浜 #76] イケてるアップデートを宇宙いち早く紹介するよ!
maroon1st
0
470
テストコード書いてみませんか?
onopon
2
130
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
140
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
480
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
169
14k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Bash Introduction
62gerente
608
210k
KATA
mclloyd
29
14k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Unsuck your backbone
ammeep
669
57k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
RailsConf 2023
tenderlove
29
940
Transcript
あなたのお家に眠る ラズパイを救出したい Name: Koyanagi Twitter: @mascii_k IoTLT vol.33 @ LINE
16 November 2017
自己紹介 mascii (ますきー) Twitter: @mascii_k GitHub, Qiita: @mascii Age: 24
Job: System Engineer
ラズパイ 眠ってませんか?
原因
解決策 これならPi Zero WでもOK!
OSイメージを microSDに書き込む シンプルな構成を シンプルに実現しよう 無線LANの設定 SSHの有効化 Zeroconfを利用した SSH接続
OSイメージを microSDに書き込む Let’s use Etcher! https://etcher.io/
OSをダウンロード • Raspbian Stretch Liteをダウンロード https://www.raspberrypi.org/downloads/raspbian/
Etcherの設定 • Auto-unmount on success をオフ 設定理由: イメージ書き込み直後に設定ファイルを書き込むため
EtcherでmicroSDに書き込む • zipファイルのまま microSD に Flash! zipファイルを展開すると出てくる imgファイルでも書き込めます
よくある間違い • イメージファイルをそのままコピー • USBメモリにイメージを書き込む
https://mascii.github.io/wpa-supplicant-conf-tool/ 無線LANの設定 SSHの有効化 Let’s use the tool made by me!
設定ファイルを作成・保存 • ブラウザ上で設定 ファイルを作成 • 2つの作成ボタンを 右クリック→別名で 保存で microSD に
ファイルを保存 https://mascii.github.io/wpa-supplicant-conf-tool/
設定ファイルの確認 • microSD に2つのファイル が保存されていればOK ◦ wpa_supplicant.conf ◦ ssh.txt •
wpa_supplicant (1).conf, ssh (1).txtなどになってし まった場合はリネーム 一度、microSD に空の ssh.txt (または ssh) を 作成しないと、SSH接続ができなくなりました
microSD をラズパイへ • microSD を取り出しラズパイにセット • ラズパイに電源ケーブルを繋げれば、 無線LANに繋がった状態で起動する!
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
注意点 • Pi 3, Zero Wの無線LAN機能やWDC-150SU2M では、2.4GHz帯のみ利用できます ◦ SSIDに g
や G が付くことが多い • 有線LANでOKな方は、空の ssh.txt だけ作成 し、ルーターとラズパイを直接接続します • このツールは WPA2-PSK が前提です • IE11, Edgeの方は右クリック→保存ができないので、左ク リック→保存をしてください
Zeroconfを利用した SSH接続 Let’s use Zeroconf!
Zeroconfを使うメリット • ルーターがRaspberry Pi に自動的に割り当てす るIPアドレスを調べる必要がなくなる 192.168.0.5 raspberrypi.local
Zeroconfの準備 • macOS ◦ 何もインストールしなくてOK ! • Windows ◦ iTunes
または Bonjour Print Services が インストールされていればOK !
SSHクライアントの準備 • macOS ◦ 何もインストールしなくてOK ! • Windows ◦ Tera
TermなどのSSHクライアントをインス トールする
SSH接続(macOS) • ターミナルで ssh
[email protected]
◦ WARNINGが出る場合は、 ssh-keygen -R raspberrypi.local
を実行してリトライ • Are you sure you want to continue connecting? が出たら yes を入力 • パスワードを聞かれたら raspberry を入力
SSH接続(Windows & Tera Term) • Tera Termを起動しホスト(T)に raspberrypi.local を入力
SSH接続(Windows & Tera Term) • セキュリティ警告が 出た場合は、チェック を入れて続行(C)をク リック
SSH接続(Windows & Tera Term) • ユーザ名 pi • パスフレーズ raspberry
を入力しOKをクリック
SSH接続できた ! • 勉強会会場の無線LANだと繋がらないことも... ➢ ポケットWiFiやテザリングを使う
THANKS! Raspberry Pi を救出できましたか?
TIPS SSH接続できた後にやること 知っておくと便利なこと
TIPS : ホスト名の変更 • raspberrypi.local の raspberrypi の部分を変えたい • SSH接続後に
sudo raspi-config を実行する (半角英数字 と - だけ を使ってください) Enterキーで決定 Escキーで終了 Enter 再起動後 Enter
TIPS : piユーザーのパスワード変更 • SSH接続後に passwd を実行する パスワードの長さが短いと更新に失敗することがあります
TIPS : Raspbianを最新の状態に更新 • SSH接続後に ◦ sudo apt-get update ◦
sudo apt-get upgrade -y を実行する • sudo apt-get install... でパッケージのインス トールがうまく行かない場合は、上記のコマンド を実行してみる
TIPS : Vim(テキストエディタ)をインストール • Raspbianの vi コマンドはVimエディタではなくvi エディタ(使いにくい)なので要注意 ! •
SSH接続後に sudo apt-get install vim -y を実行する ◦ インストール後は vi コマンドでVimが起動 TIPS : Git(バージョン管理ツール)をインストール • SSH接続後に sudo apt-get install git -y を 実行する
TIPS : シャットダウンと再起動、SSH接続の終了 • シャットダウン: sudo shutdown -h now ◦
いきなり電源ケーブルを抜くより、このコマン ドを実行して数十秒経過してから電源ケーブ ルを抜いた方が良い • 再起動: sudo reboot • SSH接続の終了: exit
TIPS : PCから直接ファイルを操作 • sshfsで、SSHと同じ認証方法を用いてPCから Raspberry Pi側のファイルを直接操作できます ◦ Atomなどお好きなエディタが使えます! •
Windowsの場合、標準のメモ帳は改行コードLFに対 応していないので、使用厳禁! ◦ AtomやVSCode, サクラエディタ, TeraPadなどを 使って編集してください
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
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ドライブとして マウントされる!
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]
:~ を実行
TIPS : ファイルの転送(Windows & Tera Term) • Reveiveの場合は ~/ (piユーザーのホームディレクトリ)が使えないので
/home/pi/を使う • 日本語ファイル名は文字化けするので注意 • OS標準の改行コードの違い(Raspbian : LF, Windows : CRLF)に注意
• JavaScriptを使ってRaspberry Piで何かやって みたい場合はNode.jsをインストール ! TIPS : Node.jsのインストール Raspberry PiにNode.jsとnpmの最新
版をインストールする https://qiita.com/mascii/items/77c685df65c4cbca9315 • Python (2.x系)であれば、Raspbianに標準で入っています
• PCとラズパイをLANケーブルで直接接続して SSH接続をしたい場合... TIPS : PCとラズパイを直接接続 Raspberry PiとMac or Windows
PCを 有線で直接繋いでさくっとSSH接続する https://qiita.com/mascii/items/7d955395158d4231aef6