Raspberry Pi 2 が届いた

大幅にスペックアップしたらしいので久しぶりに購入。
今度Windows10が無償提供されるようですね。
Piを使ってIOTするんですか

2015-02-11 23.49.04

2015-02-11 23.52.17

今回はケースがついて来なかったので別で用意しておいたほうがいいかも。
情報が出回ってるので特に書くことが無い…写真とリンクだけ。

■Raspberry Pi 1(Model B) と Raspberry Pi 2(Model B)を並べてみた

ぱっと見RCAの映像端子が無くなってUSBポートが増えてますね。GPIOも増えてる。
あと裏に見覚えのない石がついてる…エルピーダ!?
microSDか

●簡単な比較

Wikiで(Pi2にRCA無くないか?)
http://ja.wikipedia.org/wiki/Raspberry_Pi

Pi1(Model B) 公式
見当たらない…

Pi2(Model B) 公式
http://www.raspberrypi.org/products/raspberry-pi-2-model-b/

Pi2の光電効果について公式
http://www.raspberrypi.org/xenon-death-flash-a-free-physics-lesson/

左:Pi2(Model B) 右:Pi1(Model B)

2015-02-11 22.26.17

2015-02-11 22.27.09

■付いてる石比較

左:Pi2(Model B) 右:Pi1(Model B)

※Board versionの違いで結構載ってるものが違うようです。
http://elinux.org/RaspberryPi_Boards

●SoC
Pi1 – H9TKNNN4GDMP LRNDM 305A (700 MHz / ARM1176JZF-S 1コア)
Pi2 – Broadcom BCM2836 RIFBG TE1447 P10 432910-40 N3 W (900MHz / ARM Cortex-A7 4コア)
4コアですって!

2015-02-11 23.36.32_cut

2015-02-11 23.38.08_cut

●USB 2.0 Hub and 10/100 Ethernet Controller
Pi1 – LAN9512-JZX 81303-A1B17 3032AWA CTI-TW
Pi2 – LAN9514-JZX B1428-A1B17 428ECVA ASE-TW
あんまり変化なし。25MHzの発振器がなくなってる気がする..
SoCの中にUSBコントローラ有りそうな気がするけど、コレ取ってGigabitなEthernet乗らないかな

2015-02-11 23.30.10_cut

2015-02-11 23.29.35_cut

●Memory
Pi1 – 外付け無し(SoC内蔵だと思う)
Pi2 – ELPIDA B8132B4PB-8D-F 14470R19100(LPDDR2-800 1GB)
大容量化でSoCから外に出てきたのかな。もっと大きくなっていきそう
エルピーダって書いてあるけどもうマイクロンですよね

2015-02-11 23.41.07_cut

ベンチマークの結果載せようとしたらもうあった…
http://news.mynavi.jp/articles/2015/03/06/raspberry_pi2/001.html

何して遊ぶか…

debian Apache2 で.htaccess を有効にする

久しぶりにメモメモ

.htaccess を利用するために必要な物は2つ
1.mod_rewriteを有効にする
2.AllowOverride All にすること

1は a2enmod コマンドにより有効化できる
2の AllowOverride の場所でハマった

“<Directory /var/www/>”の設定箇所を変更する必要がある

	<Directory /var/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
	</Directory>

■参考ページ
Debianで.htaccessを使用する

Debianでデーモンを登録する

debianでデーモンを作成する方法がネットを調べても古い情報やらいろいろ混じって分かりにくかったのでメモメモ

Debianのデーモンに関係するディレクトリとコマンド
/etc/init.d        /etc/rc?.d        update-rc.d        sysv-rc-conf
の4つ

簡単な流れ
1. /etc/init.d/ に起動スクリプトを配置する
 ※ /etc/init.d/skelton が起動スクリプトのサンプル
2. update-rc.d コマンドで、/etc/rc?.d/ にスクリプトのリンクを配置する (ls -t コマンドで確認可)
 ※ コマンドを実行すると、”SNoName”の形式で /etc/rc?.d/にリンクが配置される
 ※ “SNoName”
  ”S”起動”K”停止の略
  ”No”は二桁の数字で優先度
  ”Name”はスクリプト名
3. sysv-rc-conf コマンドで runlevel ごとのスクリプトの起動停止を設定
 ※ update-rc.d でも設定可能。 sysv-rc-conf の方が直感的で使いやすい。
 ※ 具体的には、”SNoName” の S と K を変更してる
4. 再起動して確認
 ※ システムの起動時に /etc/rc?.d/ の中のリンクされたスクリプトが実行される
 ※ /etc/rc?.d/ の “?” は現在のrunlevel

SoftEtherVPNで実際に設定してみる

$ sudo cp skelton vpnserver
$ sudo nano vpnserver
# Provides: vpnserver
  NAME=vpnserver
  do_start()
  {
    $DAEMON start
  }
  do_stop()
  {
    $DAEMON stop
  }

※ 基本的にファイルの上の方(LSBヘッダー)を少し書き換えるだけでOK
   参考URL http://d.hatena.ne.jp/paraches/20060403
※ start や stop の中で start-stop-daemon が使われてますが使わなくてもOK
※ 戻り値は気にしなくてOK…今のところ..
※ スクリプトファイル名とNAMEは一致させておく

$ sudo chmod +x vpnserver         // 実行可能
$ sudo ./vpnserver start          //開始確認
SoftEther VPN Server Service Started.
$ sudo ./vpnserver stop          //停止確認
Stopping SoftEther VPN Server Service...
SoftEther VPN Server Service Stopped.
$ sudo update-rc.d vpnserver defaults  //設置
$ sudo sysv-rc-conf             //設置内容確認変更
$ sudo shutdown -r now
$ pstree

Raspberry Pi + SoftEtherVPN で マイVPN構築

selogo
Raspberry Pi で VPN構築ができます
ライフハッカーで Raspberry Pi + Hamachi でマイvpn の紹介がありましたが
ここでは SoftEtherVPN を利用した構築方法メモメモ

SoftEtherVPN も ARM版のビルドを公開しているので簡単に利用できます。
ここで SoftEtherVPN(旧UT-VPN) がダウンロードできます。
http://www.softether-download.com

インストール方法

$ wget http://www.softether-download.com/files/softether/v1.00-9029-rc2-2013.03.16-tree/Linux/SoftEther%20VPN%20Server/32bit%20-%20ARM%20EABI/softether-vpnserver-v1.00-9029-rc2-2013.03.16-linux-arm_eabi-32bit.tar.gz
$ tar xzvf softether-vpnserver-v1.00-9029-rc2-2013.03.16-linux-arm_eabi-32bit.tar.gz
$ cd vpnserver/
$ make

するとライセンスに同意するか聞いてくるので 1. で同意する
makeが終わるとカレントディレクトリに

vpnserver
vpncmd

の2つのバイナリが置かれます
設置とかデーモンの設定は行なってくれないので、その辺は自分で設定します

sudo ./vpnserver start

で起動させたら vpncmd での設定は分かりにくいので Windows 版のサーバー管理マネージャー で設定するのが手っ取り早いと思います

softether-servermgr

ほかのVPNクライアントとの互換性もあって
たった$25でVPN専用サーバーが作れるのは良い感じです

※ UT-VPNプロジェクトはSoftEtherVPNプロジェクトに移行されたようです

Raspberry Pi で node.js + WebSocket.io

logo
普通にaptで入れた node では WebSocket.io が動かないようなのでメモメモ

$ apt-cache search node | grep node

でnodeを探す。

nodejs - Node.js event-based server-side javascript engine
nodejs-legacy - Node.js event-based server-side javascript engine (legacy symlink)

それらしい nodejs と nodejs-legacy の2つが見つかるので新しい方を入れる

$ sudo apt-get install nodejs

npmでパッケージを入れる

$ npm install websocket.io

すると

npm WARN This failure might be due to the use of legacy binary "node"

どうもnodeが古くてwebsocket.ioが利用出来ないよう(nodejs v0.6.19)
これもlegacyかいっ

というわけで新しいnodeを入れる
Node.js v0.8.11 – Installation now easy
こちらに書いてあるように簡単そうなので v0.10.0 でも

$ wget http://nodejs.org/dist/v0.10.0/node-v0.10.0.tar.gz
$ tar xzvf node-v0.10.0.tar.gz
$ cd node-v0.10.0/
$ ./configure
$ make
$ make install

コンパイルに凄く時間がかかったのでバイナリを置いておきます
binary
node-v0.10.0-raspberrypi.tar