RaspberryPi2にnginx WEBserver導入

らじる★らじるで録音したMP3ファイルをMacからファイル移動するのが面倒だ・・・

直接AndroidのChromeからダウンロードしたい。

wEBサーバー導入しよう。

となりました。Apacheが有名ですがもっと軽くて使いやすいのないのかよと探したところ
Nginxというwebサーバーを導入することにしました。

[bash]
sudo aptitude update
sudo aptitude upgrade
[/bash]

先日やったので全くアップデートありませんでした。

[bash]
sudo aptitude install nginx
sudo service nginx start
[/bash]

RaspberryPiのipアドレスをブラウザで叩くと
Welcome to nginx!
ってでたら動作成功です。

[bash]
sudo vim /etc/nginx/sites-available/default
[/bash]
このファイルを設定することでWEBサーバーで公開するフォルダを指定したりできます。

[bash]
#root /usr/share/nginx/www;
root /home/pi;
index index.html index.htm;

autoindex on;
charset UTF-8;
[/bash]
公開フォルダをとりあえずユーザフォルダに移しました。
autoindex onを
フォルダの中身の一覧を表示させるように変更
charset UTF-8
日本語名が文字化けしたのでUnicode指定をしてみました。
apache2でできてることは大体できますね。軽量なのに便利!

[bash]
nginx -v
nginx version: nginx/1.2.1
[/bash]

バージョンが古いみたい。
リバースプロキシとか使わないのでとりあえずは必要十分な機能です。

RaspberryPi2の時刻を合わせる

前回、ラジオ録音サーバーにしたラズパイ2なのですが、録音してみたところ少し尻切れになっていて15秒くらい終わりの歌みたいな音楽が切れていました。

従来のマザーボードにCPUなサーバーでやっていた時はあまりなかったので、気づかなかったのですが、RaspberryPi2にはRTCという時刻を保持する機能がありませんでした。

また、サーバーが日本向けではないので時刻取得は日本に最適化されていないわけですから、これを最適化します。

[bash]
sudo vim /etc/ntp.conf
[/bash]

以下のように変更する
[bash]
#server 0.debian.pool.ntp.org iburst
#server 1.debian.pool.ntp.org iburst
#server 2.debian.pool.ntp.org iburst
#server 3.debian.pool.ntp.org iburst
pool ntp.nict.jp iburst
[/bash]
最初、poolをPoolと大文字で書いたら通らなかった。
気をつけよう。

[bash]
sudo /etc/init.d/ntp restart
[/bash]
ntpdでは通らなかった。tabキーではntpしかなかったので、通らないのも当然か。

[bash]
pi@raspberrypi ~ $ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
ntp-a2.nict.go. .NICT. 1 u 1 64 1 8.693 -3.431 0.001
ntp-b2.nict.go. .NICT. 1 u – 64 1 11.768 -1.818 0.001
ntp-b3.nict.go. .INIT. 16 u – 64 0 0.000 0.000 0.001
ntp-a3.nict.go. .INIT. 16 u – 64 0 0.000 0.000 0.001
[/bash]
うーん、20秒くらいずれてたのか?

これでかなり精度が高くなったと思う。

ちなみに、ntpq -p を打った時にNo association ID’s returned と出てきて、なんだろうと思ったら、上記記載した、大文字記入のミスでした。
変更したところは間違ってないと思ったんだけれど、英語の記入なので最初は大文字みたいなのが無意識にでちゃったのだろうか。

らじる★らじる 録音サーバーの構築(旧)

★本投稿情報は古くなりました。

らじる★らじる 録音サーバーの構築(2015年9月移行版)を作成しますので、こちらを読んでいただきたくお願い致します。

RaspberryPi2でVPNサーバー構築までさっくりできたので、次はNHKラジオ録音サーバーだ。
NHKのラジオ英会話、ビジネス英会話を聞けるようにする。
いままでUbuntuの電力消費の激しいサーバーに頼っていたので、これがとても重宝する。

録音スクリプトの入手

らじる★らじるの録音スクリプトはこちらから入手します。

playerのインストール

[bash]
sudo aptitude install player
[/bash]

Lameのインストール

[bash]
sudo aptitude install lame
[/bash]

このコマンドだけで、
lame_3.99.5+repack1-3_armhf.deb
がインストールされたと思います

atのインストール

[bash]
sudo aptitude install at
[/bash]

役割はわからないが、Ubuntuなどではインストール不要だったが、RaspberryPi2の運用ではatのインストールがないことによってらじる★らじる録音スクリプトは希望通りに動かないので、インストールした。

python文字コードの変更

RaspbianはUTF-8なので、EUC->UTF-8を行う。

[bash]
wget http://raspi.wpblog.jp/wp-content/uploads/2015/07/radiru_rec2.py_.txt
iconv -f EUCJP -t UTF8 radiru_rec2.py_.txt > radiru_rec2_utf8.py
vim radiru_rec2_utf8.py
[/bash]

#! /usr/bin/python

– coding: utf-8 –-;

このように書き換えて完了。

rec_radiruの設定
piユーザで上記作業をしている場合は、
/home/pi/
このフォルダで実施していると思います。

[bash]
mkdir radiru_scripts
chmod 777 radiru_scripts
mkdir MP3
chmod 777 MP3
sudo vim radiru_rec2_utf8.py
[/bash]

144行目あたり

[bash]
scriptdir = os.path.expanduser("~/radiru_scripts")
musicdir = os.path.expanduser("~/MP3")
[/bash]

これだとファイルにアクセスできないので、

[bash]
scriptdir = os.path.expanduser("/home/pi/radiru_scripts")
musicdir = os.path.expanduser("/home/pi/MP3")
[/bash]

このようにしてあげます。これでホームフォルダにあるのでアクセスできます。

[bash]
sudo cp radio_rec2_utf8.py /bin/radio_rec2.py
sudo chmod +x /bin/radio_rec2.py
[/bash]

ここまでくると、あとは録音するのみできますね。

[bash]
radiru_rec2.py r2 9:00 30m -t ラジオ仕事学のすすめ
[/bash]

日付を書かないと今日の録音になるので、7/26 AM9:00からNHK第2を録音して -t タイトル としてラジオ仕事学のすすめとつけています。これ聞いてみたかったので。

razikoの方はまだやったことがない。
自宅のVPNを使うことで自宅のIPアドレスに紐付いてラジオが聴けるはずなので、遠隔地から録音するなどでは都合が良いのかもしれない。福山雅治さんのFMラジオが毎週面白いので録音できるように今度しようかな。

繰り返し録音のスクリプトは
http://plamo.linet.gr.jp/wiki/index.php?diary%2FKojima%2F2012-08-29
こちらのを使うんだった。
しばらくぶりのインストールで忘れていた。あとでメモしよう。

RaspberryPi2にVPNを導入

RaspberryPi2をいつも使えるようにVPNサーバーにします。
自分の用途は主にVPNサーバーですので。

開発環境の不足ツールをインストール

[bash]
sudo aptitude install chkconfig
sudo aptitude install brigde-utils
[/bash]

どうして入っていないのだろう。
VPNやるには常時起動だし使うだろうからRaspberryPiとしては入れておいていいと思うのだが。

IPアドレスの固定とネットワーク設定

初期設定で192.168.10.16に設定されたのだが、これが時々変わると面倒なので、
特定の番号に変更する。

[bash]
sudo vim /etc/network/interfaces
sudo reboot
[/bash]

Vimは最初はインストールされていない。:wq や ddが使いやすいので入れている。
http://www.cqpub.co.jp/interface/
インターフェース 2014年8月号のダウンロードコンテンツにinterfaceのファイルがあるので、設定は無理せずこれを利用する。

iPアドレスのところだけを自分の環境に書き換えたら再起動して、新しいIPアドレスで接続する。

Macなのでこういったときに再起動してIPアドレスが変わっているかを見るために、MacアプリのLanScanを愛用している。確かにIPアドレスが変わっていて情報に誤りがなければ、sshでつないで設定を続けます。

SoftEther VPN Serverのダウンロード

時々新しくなっていて、アップデートどうやるんだろうと悩むことが数回あったがメモしていない。今回は新規のクリーンインストールなので大丈夫だろう。

SoftEther VPN Server Linux版 ARM EABI(32bit)をダウンロードして展開

[bash]
su

wget http://jp.softether-download.com/files/softether/v4.17-9566-beta-2015.07.16-tree/Linux/SoftEther_VPN_Server/32bit_-_ARM_EABI/softether-vpnserver-v4.17-9566-beta-2015.07.16-linux-arm_eabi-32bit.tar.gz

tar zxvf softether-vpnserver-v4.17-9566-beta-2015.07.16-linux-arm_eabi-32bit.tar.gz
[/bash]

SoftEther VPN Server

[bash]
cd vpnserver
make
[/bash]

残りの設定はinterface 2014年8月号の設定ファイルを貼り付けてスクリプトを動作させるだけ。

RaspberryPiでVPNするならこの雑誌は買っておくとすごい楽だと思う。
SoftetherVPN Managerがwindows版しかないのでvmwareからwindows10で対応した。

ポートの設定

ddnsまたはsoftetherのdansを設定したあとは、ルーターのポートマッピングが必要。
これを実施したら、ルーターとRaspberryPiを再起動をかけて情報を更新し、使えるようになる。

RaspberryPi2の初期設定

Raspbianのインストールが終わった後に初期設定を行う。

Macのターミナルからログイン

[bash]
ssh pi@192.168.10.16
[/bash]

パスワードをいれてログインしたら、まず設定してしまおう。

RaspberryPiのファームウェア更新

[bash]
sudo rpi-update
sudo reboot
[/bash]

Raspbianのアップデート

[bash]
sudo aptitude update
sudo aptitude upgrade
[/bash]

RaspberryPiの初期設定画面を呼ぶ

[bash]
sudo raspi-config
[/bash]

昔はrasp-configで動いたと思うんだけど、raspi-configに変わっているみたい。
記憶違いかも。

  • Expand Filesystem これでSDカードの空き領域を使えるようにする。
  • Change User Password これで初期ユーザのpiユーザパスワードを変更する
  • InterNational Option,Change TimeZone これでTokyoを選ぶ

rootのパスワードを変更

[bash]
sudo passwd root
[/bash]

rootのパスワードを変えないというのは、家に鍵をかけないのと同じ。
rootのパスワードは英大小数字記号を織り交ぜて12文字以上あたりで作るといいと思う。
パスワード強度チェッカーなどで100%強度くらいを作れると頼もしい。

テキスト編集用にVimをインストール

[bash]
sudo aptitude install vim
[/bash]

とりあえず、何かしらテキスト編集用ツールをいれておかないと保存・編集に時間がかかってしまうので最初に入れてしまうのがいい。Vimは何となくなので、使いやすいテキストツールがあればそれを入れよう。

ユーザーpiを新規作成したユーザーxxxに置き換える。

[bash]
sudo adduser xxx
[/bash]

これが完了すればユーザーは作成できました。
あとは権限などをpiユーザーと同じにします。

[bash]
groups pi
groups xxx
[/bash]

違っていると思うので、足します。

[bash]
sudo usermod -G pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,netdev,input,spi,i2c,gpio xxx
[/bash]

これで同じになります。

[bash]
groups pi
groups xxx
[/bash]

念のため確認して完了です。

RaspberryPiをアップデート

簡単な運用をしていたので、1〜2ヶ月アップデートをしていなかった。本当は良くない。

本体のアップデートを行う。
これは現行動作中のRaspberryPi(1)の方です。Pi2はまだメモリーカード準備中

[bash]
pi@raspberrypi ~ $ sudo rpi-update
*** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
*** Performing self-update
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 10186  100 10186    0     0  59044      0 –:–:– –:–:– –:–:– 71230
*** Relaunching after update
*** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
*** We’re running for the first time
*** Backing up files (this will take a few minutes)
*** Backing up firmware
*** Backing up modules 3.12.28+
#############################################################
WARNING: This update bumps to rpi-4.0.y linux tree
Be aware there could be compatibility issues with some drivers
Discussion here:
https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=113753
##############################################################
Would you like to proceed? (y/N)
*** Downloading specific firmware revision (this will take a few minutes)
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   168    0   168    0     0    200      0 –:–:– –:–:– –:–:–   262
100 46.8M  100 46.8M    0     0   560k      0  0:01:25  0:01:25 –:–:–  907k
*** Updating firmware
*** Updating kernel modules
*** depmod 4.0.9-v7+
*** depmod 4.0.9+
*** Updating VideoCore libraries
*** Using HardFP libraries
*** Updating SDK
*** Running ldconfig
*** Storing current firmware revision
*** Deleting downloaded files
*** Syncing changes to disk
*** If no errors appeared, your firmware was successfully updated to 46d179597370c5145c7452796acbee0f1ff93392
*** A reboot is needed to activate the new firmware
pi@raspberrypi ~ $ sudo reboot
[/bash]

盛大にアップデートされた。セキュリティ穴だったかもしれぬ・・・

[bash]
pi@raspberrypi ~ $ sudo apt-get update
[/bash]

[bash]
pi@raspberrypi ~ $ sudo apt-get upgrade
[/bash]

これらもかなりの量のアップデートが発生。
宅内サーバーであってもセキュリティはしっかりするべき。

RaspberryPiのSDカードバックアップ

RaspberryPiのSDカードのバックアップをとって更新してRaspberryPi2に乗せて動くかやってみようと思います。

その前に、SDカードをバックアップしないとリスクがあるので、バックアップ

Macのディスクユーティリティーを起動

RaspberryPiのSDカードのディスクを選択して新規イメージを作成

バックアップから複製

実際にやってみたところ、イメージはできたのですが、バックアップから復元で引数エラーで失敗するので、バックアップのやり方がよくわかりませんでした。

Pilot万年筆のインクを購入

パイロット万年筆のインクを購入しました。

最近というかずっと、ボールペンはちからを入れて書くので疲れるなぁという思いがあったのですが、ふと調べてみると万年筆というペンがあって、力をさほど入れずに書けるというのをgoogle先生に聞いたところ教えてくれました!

検索しなかったらおそらく気づかなかったと思います。それくらい万年筆って最近使わないですね。

検索する前の感覚では、万年筆は昭和の文人が書いてるペンで、ボールペンがなかったから使っていただけといったそんな感じ。

鉛筆などを使わなかったのも万年筆の使いやすさがあったのだろうか。

ひとそれぞれいろいろ好みはあろうかと思いますが、さらさらと書ける万年筆に惚れ込んだので、今回パイロットのエリートSというシリーズを1本買いました。

会社に元文具店勤務のとても万年筆に詳しい同僚がいたので、ちょこちょこときいてみて、良さそうなものを選んで買ったというわけです。

RaspberryPi 2を購入しました。

RaspberryPi 2をとうとう購入してしまいました。

今までのことがブログになかった気がしたのでとりあえずメモ的に書いておきます。

《経緯》はじまり

サーバーといえば、150w以上の電源を搭載してデスクトップみたいに鎮座しているイメージがあったのが従来です。私もデスクトップの大きなケースに入れてCENTOSなどの企業向けサーバーOSを入れて、運用していましたが電気代が月額2,000円くらいかかってしまいます。

電気代がかかっても使い道はたいしたことはなく、VPNサーバーだったり、ラジオ録音サーバーだったりでもっと低電力でできないかと常々思っていたところに2012年頃から盛り上がったARMデバイスのRaspberryPi B+というARMデバイスが、用途的中しまして、VPNサーバーとして組んで利用していました。

RaspberryPiについて、 VPNサーバーは用途として十分だったのですが、ラジオ録音サーバーとしたいときにCPUがシングルなどエンコード保存などの動作を考えると向いていないように感じていたためラジオ録音サーバーは電気代の掛かる2コアCPU運用をしていました。

7月になって暑くなり、サーバー冷却やHDDの劣化を考えだしたところ、クアッドコアを搭載し、メモリが1GBに増強したRaspberryPi2を思い出して導入しようと相成りました。

《経緯》おわり

 

上記のような感じでRaspberryPi2を導入することにしました。いちおうRaspberryPi2はラジオ録音サーバーにするつもりですが、まず、VPNサーバーとして立ててRaspberryPi(1)の役割を引き継ぎできる環境を構築しようと思います。

VPNは毎日使うわけではありませんが、外から携帯では書き込めない掲示板に、自宅固定回線のIP電話で書き込んで情報共有したいときや、自宅サーバーにアクセスして音楽・映像ファイルを取り替えて携帯で視聴したりなど結構遊んでいるので大事です。引き継ぎしておけば問題発生時に眠っているRaspberryPi(1)を起こして起動させれば動作開始できるバックアップ体制としたいと思います。

シダトレン忘れず服用する方法

花粉症の治療のためにシダトレンの処方を受けて、2014年10月からシダトレンの服用を続けています。だんだん慣れてきて時々時間通りに服用しなくなる時期がありました。

こうなるとシダトレンの服用をしないなんて危険性が出てきます。これを無くして継続服用するためのコツをメモしておきます。

家族に頼る。

これは意外に重要です。奥さんにお願いして服用確認をしてもらうことです。

飲む時間を決める。

時間を決めるから毎日同じように習慣付きます。なになにしてからやるみたいなことがなくなります。

アプリを使う。

最終手段で使い始めたのですが意外にも効果あります。

2015年5月にiPhoneからAndroidに変えたのですが、アプリは充実しているのでどちらの機種でもあるようです。