カテゴリー「Raspberry」の2件の記事

【Rasberry Pi2備忘ログ】 2015/03/23(月) Raspberry Pi2をTFTPサーバーにする

Raspberry Pi2をputもgetも可能なTFTPサーバにしてみました。クライアント(Windows7)もサーバ(RaspberryPI)も同じローカルネットワークの同じセグメント内にいます。

ここでは、WindowsPCのIPは192.168.0.200、Raspberry Pi2の方は192.168.0.100とします。

1.Raspberry Pi2へのインストール


$ sudo apt-get install tftp
$ sudo apt-get install tftpd-hpa

※初めはtftpdで試していたのですが、クライアントからのputが行えなかったので断念しました。-cオプションがあるような記述をあちこちで見かけましたが、man in.tftpdによるとそのようなオプションは無く、指定してもunknown optionになっていました。

tftpはlocalhostでのテストに使うだけです。TFTPサーバそのものはtftpd-hpa。ところが、このtftpd-hpaはインストール中にエラーになります。IPv6で設定されてしまうためのようです。そこで1度目のインストールで作られている設定ファイルを編集したあと修復セットアップを行います。

$ sudo vi /etc/default/tftpd-hpa
TFTP_OPTIONS="--secure" → TFTP_OPTIONS="--create --secure --ipv4"

「--create」を付けると、TFTPサーバに存在しないファイルであってもput出来るようになります。
保存した後、失敗したインストールを再開(「-f」の代わりに「--fix-broken」でも可能。fix=修復という事ですね)。

$ sudo apt-get install -f

2.Raspberry Pi2上でのサーバ動作テスト


これでTFTPサーバはサービスとして起動しているはずなので、まずはサーバ(RPi2)上でテストしてみます。

$ echo This is test. > localtest.txt
$ tftp localhost
tftp> put localtest.txt
Sent 13 bytes in 0.0 seconds
tftp> get localtest.txt
Received 13 bytes in 0.0 seconds

となればOK。

3.クライアント側(Windows 7)の準備


Windows 7などにはTFTP.EXEというクライアントが用意されているものの、デフォルトでは使用出来ないようになっているので、有効化します。コントロールパネルの「プログラムと機能」にある「Windowsの機能の有効化または無効化」を選んで「TFTPクライアント」にチェックを付けた後OKで閉じます。

32bit版のWindows7ならこれでおしまいなのですが、64bit版の場合には「C:\Windows\System32」にあるTFTP.EXE  を「C:\Windows\SysWow64」へコピーする必要があります。

さらに、Windowsファイアウォールも無効化する必要があります。TFTPは接続に行く先はudpのポート69なのですが、下りは違うためです(ARPテーブルにおけるTFTPサーバは静的でなくてもOK。ローカルネットワークでない場合は不明)。

4.クライアントからの接続テスト


いよいよクライアントからファイルをアップしたり落としたりしてみます。DOS窓で以下のコマンドを入力。

C:\> copy con test.txt
123456
^Z
C:\> tftp 192.168.0.100 put test.txt
転送を正常に完了しました:1秒間に6バイト、6バイト/秒

となれば転送成功です。Raspberry Pi2の/srv/tftpディレクトリ内にtest.txtがtftpという所有者で作られているはずです。

ダウンロードは以下です。

C:\> tftp 192.168.0.100 get test.txt
転送を正常に完了しました:1秒間に6バイト、6バイト/秒


結構ハマりましたが、脇道に逸れていた時にWindowsでARPを静的に変える方法が分かったのでよしとしましょうー また、TFTPサーバがルータの外にいる場合は、静的NAPTへの登録が必要です。

【Raspberry Pi2備忘ログ】 2015/03/04(水) Raspberry Pi2(RPi2)にRaspbianをインストール

1.買ったもの


Img_20150304_171203_2

Raspberry Pi2本体ですね。RSオンラインで4291円(税抜)でした。2月15日頃に注文して、届いたのが3月1日でした。

それと、ANKERの2ポートUSB急速充電器 は楽天で1480円(税抜)。Raspberry Pi2は1500~2000mA必要とするので、スマホに付属のUSB電源アダプタなどでは起動しない可能性があります。(起動してもUSBデバイスを挿した瞬間に落ちたりする)

Img_20150304_221812

microUSBケーブルは100円ショップのデータ通信対応のモノですでも何の問題もなく動作しました。

USBポートに刺さっているのは、LogicoolのUnifyingレシーバーと、PLANEXの無線LAN USBアダプタ GW-USValue-EZです。

Img_20150304_222912

microSDはサムスン EVOの16GB。購入時にタイムセールをやっており、430円でした。EVOの転送速度は48MB/secだそうな。

Img_20150316_125236

余っているモニタにはVGA端子しかなかったので、HDMI→VGA変換アダプタも購入しました。楽天市場で598円。しかも電源いらずです。このお値段で1920x1200@60でも表示出来ました。ちなみに、アダプタではないHDMI→VGA変換ケーブルを介しただけでは映りません。D/A変換やHDCP解除を行う必要があるからです。

2.インストール


このmicroSDに公式ダウンロードページからNOOBSをダウンロードしてきて解凍。microSDはSDアソシエーションのページからSDFormatterをダウンロードしてきて使用します。(いちいちインストールするのが面倒・・)


Photo

オプション設定で論理サイズ調整をONにします。NOOBSでRaspbianを選んでInstallを押した直後、エラーが出て失敗したからです。

microSDをフォーマットしたら、NOOBSの中身をまるっとコピーします。Windowsのエクスプローラー上でドラッグ&ドロップでOKです。


そのmicroSDをRaspberry Pi2に挿入し、電源ONするとインストーラー(これがNOOBSなのですが)が起動し、インストールOSの選択画面が表示されます。Raspbianの左の□にチェックマークを入れ、左上の「Install」ボタンを押せば開始!OKの場合は下の画面が出ます。

Img_20150304_182925

失敗した時は、ここまで行きませんでした。。2枚目の写真にはLogicoolのUnifyingレシーバーが刺さっていますが、NOOBSのインストールOS選択画面が表示されてから挿入してもちゃんとキーボードとマウスを認識しました。

Img_20150304_183238

インストール中、画面下端に言語選択が出ているのですが、デフォルトでは日本語になっていません。ですが、ここで日本語にしない方が良いです。すぐフォントをインストール出来ない場合、続けて表示されるraspi-configコマンドが文字化けするからです。

raspi-configを「Finish」で抜けるとインストール完了です。しばらくすると、Raspibianのログインプロンプトが表示されます。

デフォルトのユーザー名は「pi」、パスワードは「raspberry」です。続けてX-windowsを起動したい時は「startx」です。Planexの無線LANアダプタもドライバなどを特に必要とせず認識しました。

Img_20150304_230847

WiFi設定はX上で行った方が楽です。WiFi Configurationを起動して・・

Img_20150304_230914_filtered

SSID」にお使いのAPのSSIDを入力。「Authentication」はStatic WEP (Shared Key authentication)を選択。ここはAPで設定中のものに従います。WEPキーは「WEP keys」に入力。全角英数ですね。最後に「Save」してNetworkConfigだけ閉じます。

一番左のタブ画面上で、IP addressが付与されれば接続完了です。ここはリアルタイムに表示が変わるので、接続が確立されるまで開きっぱなしの方が良いでしょう。